微分方程模型以及数值解简介 数学建模课件教学教材.pptVIP

微分方程模型以及数值解简介 数学建模课件教学教材.ppt

  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文档。上传文档
查看更多
微分方程模型以及数值解简介 数学建模课件教学教材.ppt

* * * * * * * * * * * * * * * * * 使用数值积分 对方程y’=f(x,y), 两边由xi到xi+1积分,并利用梯形公式,有: 实际应用时,与欧拉公式结合使用: 此即改进的欧拉法。 故有公式: 使用泰勒公式 以此方法为基础,有龙格-库塔法、线性多步法等方法。 数值公式的精度 当一个数值公式的截断误差可表示为O(hk+1)时(k为正整数,h为步长),称它是一个k阶公式。 k越大,则数值公式的精度越高。 常用数值解法 欧拉(Euler)法 此问题最简单而直观的数值方法,但是精度不高,在实际计算中并不常用。其实现离散化的手段是用差商来近似导数。 Runge-Kutta法 较常用,精度高。 预报-校正法 利用积分关系式 欧拉法是一阶公式,改进的欧拉法是二阶公式。 龙格-库塔法有二阶公式和四阶公式。 线性多步法有四阶阿达姆斯外插公式和内插公式。 微分方程(组)的解析解 求解微分方程(组)的解析解用函数dsolve . 用该函数 时需要将微分方程包含在dsolve的表达式中。 在表达微分方程时,用字母D表示求微分,D2、D3等表示求高阶微分。任何D后所跟的字母为因变量,自变量可以指定或由symvar规则选定为缺省。 例如,微分方程 ,应表为:D2y=0 用Matlab解微分方程(组) 例1 求du/dt=1+u2的通解 解:命令为: dsolve(‘Du=1+u^2’,’t’) 结果为:ans = tan(t-C1) 例2 求下列微分方程的特解 解 命令:y=dsolve(‘D2y+4Dy+29*y=0’,’y(0)=0,Dy(0)=15’, ’x’) 结果: y = 3*exp(-2*x)*sin(5*x) 例3 求下列微分方程组的通解 解 命令为: [x y z]=dsolve(‘Dx=2*x-3*y+3*z’,’Dy=4*x-5*y+3*z’, ’Dz=4*x-4*y+2*z’); x=simple(x) %将x简化 y=simple(y) z=simple(z) 结果:x= -(-C1-C2*exp(-3*t)+C2-C3+C3*exp(-3*t))*exp(2*t) y= -(-C1+C1*exp(-4*t)-C2*exp(-4*t)-C2*exp(-3t)+C2 - C3+C3*exp(-3*t))*exp(2*t) z= -(-C1*exp(-4*t)+C1-C2+C2*exp(-4*t)+C3)*exp(2*t) 在符号计算方面,Matlab软件的功能不如Mathematica 软件强,在求解微分方程的解析解方面就是如此。对于 某些微分方程,用Matlab软件求不出解析解,但用 Mathematica软件可能求出。 微分方程(组)的数值解 Matlab中求解微分方程数值解的函数有5个:ode45, ode23, ode113, ode15s, ode23s.不同的函数代表不同的内部算法。 程序命令为:[t,x]=solver(‘f’,ts,x0,options) .其中solver取上面5个函数之一。 f 是待解函数写成的m-文件名。 ts=[ t0, tf ] 自变量的取值范围。 x0为函数初值。 options用于设定误差限(可缺省)。 ode23运用一个组合2/3阶龙格-库塔-费尔贝格算法,而ode45运用一个组合4/5阶龙格-库塔-费尔贝格算法.一般常用函数ode45. [t,x]=solver(’f’,ts,x0,options) ode45 ode23 ode113ode15sode23s 由待解方程写成的m-文件名 ts = [t0,tf], t0、tf为自变量的初值和终值 函数的初值 ode23:组合的2/3阶龙格-库塔-芬尔格算法 ode45:运用组合的4/5阶龙格-库塔-芬尔格算法 自变量值 函数值 用于设定误差限(缺省时设定相对误差10-3, 绝对误差10-6), 命令为:options=odeset(’reltol’,rt,’abstol’,at), rt,at:分别为设定的相对误差和绝对误差. 1、在解n个未知函数的方程组时,x0和x

文档评论(0)

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

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

1亿VIP精品文档

相关文档