MATLAB在理论力学教学现代化中的应用 马静敏 魏 秋 翟 超 杨忠瑞 (山东科技大学理学院,山东 青岛266510;山东科技大学机械电子工程学院,山东 青岛266510) 摘 要:基于MATLAB的数值计算,结合图形处理,以某摆动系统为例,得到需要的物理量变化规律和摆动轨迹曲线,以此说明现代化理论力学教学中引入MATLAB的可行性,及MATLAB在理论力学教学现代化和提高教学效果中的重要作用。 关键词:理论力学教学;MATLAB;现代化教学 中图分类号:O31 文献标识码:B 文章编号:1008-7508(2011)05-0005-03 一、引言 理论力学课程中,一直存在着大量的非线性问题,过去由于数学计算的复杂性,在教学过程中,一直避而不讲。加之长期以来,由于受计算工具和计算手段的限制,在理论力学课程的教学过程中,过分强调瞬时分析,轻视过程分析,影响了学生对整个运动过程全貌的认识、理解与把握,束缚了学生对许多力学规律的进一步探讨和研究。计算机的普及应用,为解决理论力学中的重点,难点问题提供了非常好的工具,并且使解决上述教学中存在的问题成为可能。这势必要求我们更新教学思维和既有的教学模式,将计算机技术引入到理论力学的教学中来。北京师范大学,燕山大学等对于理论力学现代化教学进行了改革,与理论课并行开设了理论力学计算机模拟实验课程,取得了较好的教学效果。我校对于理论力学教学现代化方面也做了一些实验和改革。针对我校情况,首先是在一个班级中选取几个学生,在开设理论力学理论课程的同时单独增加MATLAB计算机模拟实验课程内容,进行教学改革实验。然后根据实验的教学效果,在全校范围内推广。经过一个学期的教学,参加实验改革的学生普遍反映理论力学教学改革效果较好。接下来就可以将MATLAB引入到全校理论力学现代化教学中。下面以实验教学中的具体实例,说明MATLAB在理论力学现代化教学中的重要作用。 二、求解实例 如图1所示,均质细杆AB的质量为m,长为l。用长为l/2的细绳OD系在杆上的点D,绳的另一端系在固定点O,如图所示,AD=l/3。如果不计绳重,试研究杆AB在铅直平面内的运动。 〖BG(!〗〖BHDWG35mm,WK80mmW〗〖BG)W〗 图1系统模型图Fig.1 System model 〖BG(!〗〖BHDWG35mm,WK80mmW〗〖BG)W〗 图2位移-时间变化图Fig.2 Displacement-time variation diagram 用手算的方法直接求解这组方程有一定困难,此时可以借助MATLAB软件来进行求解。编写函数文件weifun.m和主文件qiu.m具体如下: 函数weifun.m程序: function ydot=weifun(t,y,flag,l) g=9.8; ydot=[y(2); (3/8*(y(2)^2)*sin(2*(y(3)-y(1)))+g*sin(y(3))/(2*l)*cos(y(3)-y(1))+(y(4)^2)*sin(y(3)-y(1))-6*g*sin(y(1))/l)/(3-3/4*cos(y(3)-y(1))*cos(y(3)-y(1))) ; y(4); (cos(y(3)-y(1))*cos(y(3)-y(1))-y(4)^2*sin(2*(y(3)-y(1)))+(6*g*sin(y(1))*cos(y(3)-y(1)))/l-3*y(2)^2*sin(y(3)-y(1))-6*g*sin(y(3))/l 主文件qiu.m程序: clear; clc; l=15; [t,u]=ode45(’weifun’,[0:0.01:30],[1.0,0.4,1.0,0.6],[],l); y1=-1*l/2*cos(u(:,1)); x1=l/2*sin(u(:,1)); y2=y1-l/6*cos(u(:,3)); x2=x1+l/6*sin(u(:,3)); y3=y1+l/3*cos(u(:,3)); x3=x1-l/3*sin(u(:,3)); y4=y1-2*l/3*cos(u(:,3)); x4=x1+2*l/3*sin(u(:,3)); 该程序是利用MATLAB的ode45函数对非线性微分方程进行求解。在MATLAB中,给出ode45函数运算所需的广义坐标的变化范围和初始值,计算机会自动采用4-5阶Runge-Kutta算法,完成积分运算。计算完成后可选择以不同的格式来保存所得数据,然后利用相关控件及绘图功能,对所需变量作图,也可以可实时观看系统的运动过程。该问题的2个广义坐标随时间的变化规律如图2所示,角速度变化规律如图3所示。系统的运动轨迹如图4所示。 〖BG(!〗〖BHDWG35mm,WK80mmW〗〖BG)W〗 图3角速度-时间变化图Fig.3 Angular velocity-time variation diagram 〖BG(!〗〖BHDWG45mm,WK80mmW〗〖BG)W〗 图4运动轨迹图Fig.4 Trajectory figure 三、结论 从求解过程可见,整个过程不需要复杂的数学知识和复杂的编程。运用MATLAB解决理论力学问题所需这些编程知识和数学知识,大二的学生只需要花费很少的时间就可以理解掌握,因此将MATLAB引入到理论力学教学中是完全可行的。 同时,由学生反馈可知,理论力学课程结合MATLAB开展计算机虚拟实验对理论力学的教学是非常有利的。首先,利用计算机技术解决了长期以来不能求解的非线性问题,扩展了理论力学的教学内容,使得理论力学教学内容现代化。其次,改变了长期以来瞬时分析的局限,使得学生对于所研究的问题能够有一个更加深入全面的认识,使得学生的学习过程现代化。第三,开设计算机虚拟实验,学习过程现代化,大大调动学生的学习兴趣,改变理论力学枯燥,题目难解,学习主动性不高的教学现状。 在理论力学教学中,增加MATLAB软件技术应用,开设虚拟实验课程内容,将打开一扇窗口,使学生了解如何运用计算机求解理论力学问题,以及掌握如何使用计算机模拟运动过程。这样的现代化教学才能够适应当今的科学技术发展对于理论力学教学的需要。
参考文献 [1]管靖,彭芳麟,胡静,卢圣治.理论力学教学现代化——“理论力学计算机模拟实验”课程的探索[J].大学物理,2001(20):38-40. [2]朱艳英,陈月娥,李伟英.理论力学课程教学中MATLAB的应用研究[J].教学研究,2006(5):258-259. [3]王飞.理论力学(Ⅱ)同步辅导及习题全解[M].徐州:中国矿业大学出版社,2006.8 [4]郑阿奇,曹戈.MATLAB实用教程[M].北京:电子工业出版社,2007.8 [5]陈杰.MATLAB宝典[M].北京:电子工业出版社,2007.1
基金项目:山东科技大学教改项目,项目名称:“山东科技大学群星计划”,批准单位:山东科技大学(项目号:qx102101)。项目负责人:马静敏。〖ZK)〗 收稿日期:2011-02-21 作者简介:马静敏(1978~),女,山东烟台人,山东科技大学理学院讲师,博士,研究方向:多学科设计优,一般力学。魏秋(1988~),山东邹城人,山东科技大学机械电子工程学院,专业:机械制造及其自动化。翟超(1988—),山东泰安人,山东科技大学机械电子工程学院,专业:机械制造及其自动化。杨中瑞(1989~),山东省德州人,山东科技大学机械电子工程学院,专业:机械制造及其自动化。
|