资源描述:
《高平北大实验,招生计划》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划高平北大实验,招生计划 实验六常微分方程的Matlab解法 一、实验目的 1.了解常微分方程的解析解。 2.了解常微分方程的数值解。 3.学习掌握MATLAB软件有关的命令。 二、实验内容 一根长l的无弹性细线,一段固定,另一端悬挂一个质量为m的小球,在重力的作用下小球处于垂直的平衡位置。若使小球偏离平衡位置一个角度?,让它自由,它就会沿圆弧摆动。在不考虑空气阻力的情况下,小球会做一定周期的简谐运动。利用牛顿第二定律得到如下的微分方程 ml?"?mgsin?,?(
2、0)??0,?'(0)?0 问该微分方程是线性的还是非线性的?是否存在解析解?如果不存在解析解,能否求出其近似解? 三、实验准备 MATLAB中主要用dsolve求符号解析解,ode45,ode23,ode15s求数值解。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 ode45是最常用的求解微分方程数值解的命令,对于刚性方程组不宜采用。ode23与ode45类似,只是精度低一些。ode12s
3、用来求解刚性方程组,是用格式同ode45。可以用helpdsolve,helpode45查阅有关这些命令的详细信息. 四、实验方法与步骤 练习1求下列微分方程的解析解 y'?ay?b y''?sin(2x)?y,y(0)?0,y'(0)?1 f'?f?g,g'?g?f,f'(0)?1,g'(0)?1 方程求解的MATLAB代码为: clear; s=dsolve('Dy=a*y+b') 结果为 s=-b/a+exp(a*t)*C1 方程求解的MATLAB代码为: clear; s=dsolve('D2y=sin(2*x)-y','y(0)=0','Dy(0)=1'
4、,'x') simplify(s)%以最简形式显示s 结果为 s=(-1/6*cos(3*x)-1/2*cos(x))*sin(x)+(-1/2*sin(x)+1/6*sin(3*x))*cos(x)+5/3*sin(x)ans=-2/3*sin(x)*cos(x)+5/3*sin(x) 方程求解的MATLAB代码为:目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 clear; s=dso
5、lve('Df=f+g','Dg=g-f','f(0)=1','g(0)=1') simplify()%s是一个结构 simplify() 结果为 ans=exp(t)*cos(t)+exp(t)*sin(t) ans=-exp(t)*sin(t)+exp(t)*cos(t) 练习2求解微分方程 y'??y?t?1,y(0)?1, 先求解析解,再求数值解,并进行比较。由 clear; s=dsolve('Dy=-y+t+1','y(0)=1','t') simplify(s) 可得解析解为y?t?e?t。下面再求其数值解,先编写M文件 %M函数 function
6、f=fun8(t,y) f=-y+t+1; 再用命令 clear;close;t=0::1; y=t+exp(-t);plot(t,y);%化解析解的图形目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 holdon;%保留已经画好的图形,如果下面再画图,两个图形和并在一起 [t,y]=ode45('fun8',[0,1],1); plot(t,y,'ro');%画数值解图形,用红色小圈画
7、 xlabel('t'),ylabel('y') 结果见图 图解析解与数值解 由图可见,解析解和数值解吻合得很好。 下面我们讨论实验引例中的单摆问题. 练习3求方程 ml?"?mgsin?,?(0)??0,?'(0)?0 的数值解.不妨取l?1,g?,?(0)?15.则上面方程可化为 ?"??,?(0)?15,?'(0)?0 先看看有没有解析解.运行MATLAB代码 clear; s=dsolve