微分方程的数值解法matlab(四阶龙格-库塔法).ppt
《微分方程的数值解法matlab(四阶龙格-库塔法).ppt》由会员分享,可在线阅读,更多相关《微分方程的数值解法matlab(四阶龙格-库塔法).ppt(36页珍藏版)》请在三一办公上搜索。
1、微分方程的数值解法,四阶龙格库塔法(The Fourth-Order RungeKutta Method),常微分方程(Ordinary differential equations,ODE),初值问题-给出初始值边值问题-给出边界条件,与初值常微分方程解算有关的指令ode23 ode45 ode113 ode23tode15s ode23sode23tb,一.解ODE的基本机理:,2.把高阶方程转换成一阶微分方程组,1.列出微分方程,初始条件,令,(2.1),(2.2),(2.3),例:著名的Van der Pol方程,令,降为一阶,初始条件,3.根据式(2.2)编写计算导数的M函数文件-O
2、DE文件,把t,Y作为输入宗量,把 作为输出宗量,%M function file name:dYdt.m function Yd=f(t,Y)Yd=f(t,Y)的展开式,例Van der Pol方程,%M function file name:dYdt.m function Yd=f(t,Y)Yd=zeros(size(Y);,4.使编写好的ODE函数文件和初值 供微分方程解算指令(solver)调用,Solver解算指令的使用格式,输出宗量形式,说明:t0:初始时刻;tN:终点时刻Y0:初值;tol:计算精度,例题1:著名的Van der Pol方程,%主程序(程序名:VanderPol
3、_ex1.m)t0=0;tN=20;tol=1e-6;Y0=0.25;0.0;t,Y=ode45(dYdt,t0,tN,Y0,tol);subplot(121),plot(t,Y)subplot(122),plot(Y(:,1),Y(:,2),解法1:采用ODE命令,Van der Pol方程,%子程序(程序名:dYdt.m)function Ydot=dYdt(t,Y),Ydot=Y(2);-Y(2)*(Y(1)2-1)-Y(1);,或写为,function Ydot=dYdt(t,Y)Ydot=zeros(size(Y);Ydot(1)=Y(2);Ydot(2)=-Y(2)*(Y(1).2
4、-1)-Y(1);,各种solver 解算指令的特点,二.四 阶 Runge-Kutta 法,对 I=a,b作分割,步长,单步法-Runge-Kutta 方法多步法-Admas方法,计算 的近似值 时只用到,是自开始方法,Runge-Kutta法是常微分方程的一种经典解法MATLAB 对应命令:ode45,四阶Runge-Kutta公式,四 阶 Runge-Kutta 法计算流程图,开始,Plot,初始条件:;积分步长:迭代次数:,输出结果,子程序计算,End,三.Runge-Kutta 法解Van der Pol 方程的Matlab 程序结构主程序:RK_vanderpol.m 子程序:RK
5、_sub.m(函数文件),解法2:采用Runge_Kutta法编程计算,主程序:RK_vanderpol.mt0=0;tN=20;y0=0.25;0;h=0.001;t=t0:h:tN;N=length(t);j=1;for i=1:N t1=t0+h;K1=RK_sub(t0,y0);K2=RK_sub(t0+h/2,y0+h*K1/2);K3=RK_sub(t0+h/2,y0+h*K2/2);K4=RK_sub(t0+h,y0+h*K3);y1=y0+(h/6)*(K1+2*K2+2*K3+K4);yy1(j)=y1(1);yy2(j)=y1(2);t0=t1;y0=y1;j=j+1;en
6、dsubplot(121),plot(t,yy1,t,yy2);gridsubplot(122),plot(yy2,yy1);grid,子程序:RK_sub.m function ydot=vdpol(t,y)ydot=zeros(size(y);ydot(1)=y(2);ydot(2)=-y(2)*(y(1)2-1)-y(1);或写为:ydot=y(1);-y(2)*(y(1)2-1)-y(1);,四.Matlab对应命令:ode23,ode45,调用格式:t,y=ode23(函数文件名,t0,tN,y0,tol)t,y=ode45(函数文件名,t0,tN,y0,tol),默认精度:ode2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微分方程 数值 解法 matlab 四阶龙格 库塔法
链接地址:https://www.31ppt.com/p-5349500.html