2018年常微分方程MATLAB解法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2018年常微分方程MATLAB解法.doc

常微分方程MATLAB解法   实验四   一、问题背景与实验目的   求微分方程的解   实际应用问题通过数学建模所归纳而得到的方程,绝大多数都是微分方程,真正能得到代数方程的机会很少.另一方面,能够求解的微分方程也是十分有限的,特别是高阶方程和偏微分方程(组).这就要求我们必须研究微分方程(组)的解法,既要研究微分方程(组)的解析解法(精确解),更要研究微分方程(组)的数值解法(近似解).   对微分方程(组)的解析解法(精确解),Matlab有专门的函数可以用,本实验将作一定的介绍.   本实验将主要研究微分方程(组)的数值解法(近似解),重点介绍Euler折线法.   二、相关函数(命令)及简介   1.dsolve(equ1,equ2,…):Matlab求微分方程的解析解.equ1、equ2、…为方程(或条件).写方程(或条件)时用Dy表示y关于自变量的一阶导数,用用D2y表示y关于自变量的二阶导数,依此类推.   2.simplify(s):对表达式s使用maple的化简规则进行化简.例如:symsx   simplify(sin(x)^2+cos(x)^2)ans=1   3.[r,how]=simple(s):由于Matlab提供了多种化简规则,simple命令就是对表达式s用各种规则进行化简,然后用r返回最简形式,how返回形成这种形式所用的规则.   例如:symsx   [r,how]=simple(cos(x)^2-sin(x)^2)r=cos(2*x)how=combine   4.[T,Y]=solver(odefun,tspan,y0)求微分方程的数值解.说明:   (1)其中的solver为命令ode45、ode23、ode113、ode15s、ode23s、ode23t、ode23tb之一.   ?dy   ?=f(t,y)   (2)odefun是显式常微分方程:?dt   ??y(t0)=y0   (3)在积分区间tspan=[t0,tf]上,从t0到tf,用初始条件y0求解.   (4)要获得问题在其他指定时间点t0,t1,t2,?上的解,则令tspan=[t0,t1,t2,?,tf](要求是单调的).   (5)因为没有一种算法可以有效地解决所有的ODE问题,为此,Matlab提供了多种求解器Solver,对于不同的ODE问题,采用不同的Solver.求解器Solverode45   ODE类型非刚性   特点   说明   单步算法;4、5阶Runge-Kutta大部分场合的首选算   法   方程;累计截断误差达(?x)3   单步算法;2、3阶Runge-Kutta使用于精度较低的情   形   方程;累计截断误差达(?x)3   多步法;Adams算法;高低精计算时间比ode45短度均可到10?3~10?6   ode23非刚性   ode113非刚性   ode23tode15sode23sode23tb   适度刚性刚性刚性刚性采用梯形算法   多步法;Gears反向数值微分;精度中等   单步法;2阶Rosebrock算法;低精度   梯形算法;低精度   适度刚性情形   若ode45失效时,可尝试使用   当精度较低时,计算时间比ode15s短当精度较低时,计算时间比ode15s短   (6)要特别的是:ode23、ode45是极其常用的用来求解非刚性的标准形式的一阶常微分方程(组)的初值问题的解的Matlab的常用程序,其中:   ode23采用龙格-库塔2阶算法,用3阶公式作误差估计来调节步长,具有低等的精度.   ode45则采用龙格-库塔4阶算法,用5阶公式作误差估计来调节步长,具有中等的精度.   5.ezplot(x,y,[tmin,tmax]):符号函数的作图命令.x,y为关于参数t的符号函数,[tmin,tmax]为t的取值范围.   6.inline():建立一个内联函数.格式:inline(expr,var1,var2,…),注意括号里的表达式要加引号.   例:Q=dblquad(inline(y*sin(x)),pi,2*pi,0,pi)   三、实验内容   1.几个可以直接用Matlab求微分方程精确解的例子:   dy?x2   例1:求解微分方程+2xy=xe,并加以验证.   dx   求解本问题的Matlab程序为:   symsxy%line1y=dsolve(Dy+2*x*y=x*exp(-x^2),x)%line2diff(y,x)+2*x*y-x*exp(-x^2)%line3simplify(diff(y,x)+2*x*y-x*exp(-x^2))%line4说明:   (1)行line1是用命令定义x,y为符号变量.这里

文档评论(0)

tangdequan1 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档