- 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.ODE:u=1-2tu1+t2u0=0,采用Euler折线法、梯形法、RK3、RK4、三步三阶Adams方法求解。
要求:(1)绘制误差下降曲线;
(2)确定每个方法的“数值阶”
实验图像和数据:
(1)误差曲线图:
①为了比较不同的方法在区间[0,T]固定、所分区间数N不断变大的情况下,在整个区间上数值解与真解的最大误差下降情况,取T=100、N=1000:10000,得到如下图像:
图一:不同方法随着区间数N的增大,最大误差的下降曲线
②为了探究三步三阶Admas方法的初值选取对后续误差的下降速度的影响,分别用Euler方法给初值,梯形方法给初值,和同阶的RK3方法给初值,同样考虑区间数N变大时,最大误差的下降情况,得到如下图二。
图二:使用不同阶数的方法给出初值对Admas方法的影响
(2)数值阶:
利用如下方法来计算数值阶:
ehT=chαeh2T=ch2αorder=log2eheh2
取h=0.1,T=100,对h、h/2、h/4、h/8、h/16,分别计算eh(T),再利用上述公式,两两相邻计算数值阶,可得如下表格:
Euler方法1.0230763111.0111956971.00551595711.002706721梯形方法1.9887729752.0001562161.9984676212.000017355RK33.1010330853.0511392423.0265982583.013430782RK44.0214762184.0112186024.0057134444.002890934三步三阶Admas2.9383190132.98437935832.9960819872.999019688
实验数据分析:
首先这里函数f(t,u)对u满足 Lipschitz 条件,故初值问题是适定的,且可求得真解为:u(t)=3t+t33+3t2.
①.从图一中我们可以看出,随着区间数的增大,5种方法的误差都在下降,由于问题是适定的,这是合理的。且在图中,高阶方法比低阶的方法下降地更快。
我们知道,整体误差e=C*hα,其中常数C与函数的高阶导数大小相关,α为方法的阶数,故整体误差取决于方法的阶数和高阶导数的大小。在一般情形,即函数的高阶导数增长不剧烈的情况下,则此时高阶方法整体误差较小;但在极端情形下,即函数的高阶导数增长特别剧烈时,也有可能反而较低阶的方法整体误差更小。此处对应函数的高阶导数增长不剧烈,故所得结果合理。
②从图1中可以看出,一阶方法Euler法的下降最慢,其次三阶Admas方法的误差下降与梯形方法差距不大,再然后RK3和RK4依次下降速度变大。
注意到三阶Admas方法的误差下降与梯形方法差距不大,,而梯形方法仅为二阶方法,三阶Admas方法与同为3阶的RK3方法相比误差下降速度小了不少。
对此做出的解释是:一方面三阶Admas方法的另两个初始值由单步Euler法给出,可能影响到了后序误差的下降速度;另一方面,注意到三步Admas法每多迭代一次只计算一个新的函数值,而RK3要计算3个新的函数值,计算量大了不少,也更多地利用了原问题的信息,从这个角度来看故必然有Admas方法的误差下降速度不如同阶的单步法。
③.从上面图2中可以看出,对三步三阶Admas 方法,由Euler法、梯形法、RK3给初值的误差下降的效果依次变好,但三者效果几乎平行,并无如图1中Admas方法和RK3所呈现出的那般本质上的区别,且通过不断缩小步长h,三者均能达到同样小的误差界。由此得出结论,不必非得用同阶或更高阶的单步法来给多步法提供初值。
④.从数值阶表格中可以看出,五种方法的数值阶均与理论上的阶数对应,且注意到虽然在图1中三阶Admas方法的表现效果与RK3方法相比有明显的差距,但两者的数值阶都近似为3,没有大的区别。
实验题2.ODE:u=xu(u-2)u0=2,采用如上方法计算;若u0=2+ε ,结果如何?
实验图像:
① 设置区间为[0,10],初始值为u0=2+10-4,区间数分别为N=100,200,300,500,得到如下数值解与真解的对应图像:
②同样设置区间为[0,10],初始值为u0=2+10-4,步长为0.1,分别使用不同的方法,可得如下图像:
实验数据分析:
这个初值问题由于对u不满足lipschitz条件,故不是适定的。问题的真解为:u(t)=2u0u0-u0-2et2.
①取初值u0=2.
在此种情形下,问题的真解为ut=2,且此时有ft,2=0,? t0.对上述Euler方法、梯形法、RK3、RK4、三步三阶Admas方法对应的迭代公式,从第一步开始每一步都有 fxnyn=0,且利用
文档评论(0)