阶常微分方程的初值问题.ppt
《阶常微分方程的初值问题.ppt》由会员分享,可在线阅读,更多相关《阶常微分方程的初值问题.ppt(37页珍藏版)》请在三一办公上搜索。
1、Ordinary Differential Equations,ODE,一阶常微分方程的初值问题:节点:x1x2 xn步长 为常数,一 欧拉方法(折线法)yi+1=yi+h f(xi,yi)(i=0,1,n-1)优点:计算简单。缺点:一阶精度。二 改进的欧拉方法,改进的欧拉公式可改写为 它每一步计算f(x,y)两次,截断误差为O(h3),精确解:,function t,y=Heun(ode,tspan,h,y0)t=(tspan(1):h:tspan(end);n=length(t);y=y0*ones(n,1);for i=2:n k1=feval(ode,t(i-1),y(i-1);k2=
2、feval(ode,t(i),y(i-1)+h*k1);y(i)=y(i-1)+h*(k1+k2)/2;end,三 龙格库塔法(Runge-Kutta)欧拉公式可改写为 它每一步计算 f(xi,yi)一次,截断误差为O(h2),标准四阶龙格库塔公式 每一步计算 f(x,y)四次,截断误差为O(h5),对于两个分量的一阶常微分方程组,用经典4阶 Runge-Kutta 法求解的格式为,n 级显式Runge-Kutta 方法的一般计算格式:,其中,Adams 外插公式(Adams-Bashforth 公式)是一类 k+1 步 k+1 阶显式方法三步法(k=2),四步法(k=3),Adams 内插公
3、式(Adams-Moulton 公式)是一类 k+1 步 k+2 阶隐式方法三步法(k=2),Adams 预估-校正方法(Adams-Bashforth-Moulton 公式)一般取四步外插法与三步内插法结合。,#include#include#include#define TRUE 1main()int nstep_pr,j,k;float h,hh,k1,k2,k3,k4,t_old,t_limit,t_mid,t_new,t_pr,y,ya,yn;double fun();printf(n Fourth-Order Runge-Kutta Scheme n);while(TRUE)pri
4、ntf(Interval of t for printing?n);scanf(%f,do for(j=1;j=nstep_pr;j+)t_old=t_new;t_new=t_new+h;yn=y;t_mid=t_old+hh;yn=y;k1=h*fun(yn,t_old);ya=yn+k1/2;k2=h*fun(ya,t_mid);ya=yn+k2/2;k3=h*fun(ya,t_mid);ya=yn+k3;k4=h*fun(ya,t_new);y=yn+(k1+k2*2+k3*2+k4)/6;printf(%12.5f%15.6e n,t_new,y);while(t_new=t_limi
5、t);printf(-n);printf(Maximum t limit exceeded n);printf(Type 1 to continue,or 0 to stop.n);scanf(%d,double fun(y,t)float y,t;float fun_v;fun_v=-y;return(fun_v);,四 误差的控制 我们常用事后估计法来估计误差,即从xi出发,用两种办法计算y(xi+1)的近似值。记 为从xi出发以h为步长得到的y(xi+1)的近似值,记 为从xi出发以 h/2 为步长跨两步得到的y(xi+1)的近似值。设给定精度为。如果不等式 成立,则 即为y(xi+1)
6、的满足精度要求的近似值。,自适应:使用2个不同的h。如果一个大的h和一个小的h得到的解相同,那么减小h就没有意义了;相反如果两个解差别大,可以假设大h值得到的解是不精确的。使用相同的h值,2种不同的算法。如果低精度算法与高精度算法的结果相同,则没有必要减小h。,Ode23 非刚性,单步法,二三阶Runge-Kutta,精度低Ode45非刚性,单步法,四五阶Runge-Kutta,精度较高,最常用Ode113非刚性,多步法,采用可变阶(1-13)Adams PECE 算法,精度可高可低Ode15s 刚性,多步法,采用Gears(或BDF)算法,精度中等.如果ode45很慢,系统可能是刚性的,可试
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微分方程 初值问题
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5886335.html