- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
作业 1、用欧拉法求系统的响应x(t)在t∈[0,1]且h=0.1时的数值解。 * 4.1 常微分方程的数值解法 4.1.1 数值求解的基本概念 第四章 连续系统的离散化方法 4.1.2 欧拉法 4.1.3 龙格-库塔法 4.2 微分方程数值解的MATLAB实现 4.3 数值算法的稳定性及选择原则 4.1 常微分方程的数值解法 4.1.1 数值求解的基本概念 已知一阶微分方程 应有数值求解的思路:从初值x0开始,在一系列时刻t1=t0+h, t2=t1+h,……,tn=tn-1+h,求未知解x1,x2,…..xn的近似解,h是计算步长。 将x(t)在t1=t0+h的解x(t0+h)用泰勒级数展开如下: 4.1 常微分方程的数值解法------ 欧拉法 已知一阶微分方程 取泰勒级数前两项,得: 写成一般形式: 欧拉公式 例1:用欧拉法求下述微分方程的精确解。 解:取h=0.1,由t=0开始计算,递推公式为: 计算如下: 此题精确解为: 例2:用欧拉法求下述微分方程的精确解。 解:取h=0.1,由x=0开始计算,递推公式为: 此题精确解为: 计算结果如下表示。 4.1 常微分方程的数值解法------ 龙格-库塔法(Runge-Kutta法) 已知一阶微分方程 取泰勒级数前三项,得: 为了避免求偏导数,采用某些点的线性组合来代替上式中的后两项: 问题关键是求a1,a2,b1,b2。 4.1 常微分方程的数值解法------ 龙格-库塔法(Runge-Kutta法) 常用的四阶龙格-库塔法计算公式如下: 4.2 微分方程数值解的MATLAB实现 Ode23和ode45是求解常微分方程数值解最常用的命令。 格式如下: [t,x]=ode23(@fun,Tspan,x0,option) [t,x]=ode45(@fun,Tspan,x0,option) 注意:保存的文件名必须和函数名一致。 例1:用matlab求下述微分方程的数值解。(见l1.m) 解:1、编制M文件,使函数名和M文件名相同。 function xdot=l1(t,x) xdot=-x*x 保存的文件名为l1.m,必须与函数名相同。 2、在matlab命令窗口,输入以下命令: ode23(@l1,[0,20],[1]) 或 [t,x]=ode23(@l1,[0,20],[1]) 例2:求解常微分方程 初始条件: 解:引入状态变量。将N阶微分方程转化为N个一阶微分方程组。 令: x1=x, x2=dx/dt, 则: 写成状态方程形式为: 见wf.m。 function xdot=wf(t,x) xdot=[0 1;-1 0]*x+[0;1]*(2+t^2/pi) 在matlab命令窗口,输入以下命令: ode45(@wf,[0,10],[-1;1]) function xdot=wf (t,x) xdot=zeros(2,1) xdot(1)=x(2) xdot(2)=-x(1)+2+t^2/pi 或 例3:求解常微分方程 初始条件: 见dydt.m。仿真模型见n1.mdl。 解: function ydot=dydt(t,y) ydot=[y(2);2*(1-y(1)^2)*y(2)-y(1)] 例4:已知某系统运动方程及初始条件为: 求时间区间t=[0,20]微分方程的解。 解:见right.m 和callright.m。 例5:一阀控缸电液位置伺服系统的动力学方程为: 伺服阀流量方程: 液压缸流量连续方程: 负载力平衡方程: 控制信号: 其中,xp为负载位移输出,up为伺服阀输入控制电压,ps和pl分别为系统供油压力和负载压力,r为指令信号,kf为位移传感器增益,sgn为符号函数。求当ps变化时,系统对正弦信号r(t)=2sin(6*pi*t)的响应。 解:设:x1=xp,x2=dxp/dt,x3=pl,将上述方程组改写为含有x1,x2,x3的方程组。 见ee.m 和callee.m。 例6:已知系统状态方程 其中: 试用MATLAB仿真(步长h=0.01,0.04,0.05)。 仿真模型见n2.mdl。 了解步长对系统数值解的影响。 例:解微分方程: 解:建立M文件。 function dy=myfun6(x,y) dy=zeros(3,1) dy(1)=y(2) dy(2)=y(3) dy(3)=(y(3)-1)^2-y(2)-y(1)^2 在MATLAB命令窗口下输入: ode23(myfun6,[0,20],[0;1;-1]) 得到数值计算图形结果。 2、已知系统的状态方程为: 用MATLAB求其数值解。 * * *
文档评论(0)