1.ode23:
显式的单步Runge-Kutta低阶(2阶到3阶)解法。适用具有一定难度对精度要求不高,或者f(t,y)不平滑(非连续)的问题
[T, Y] = ode23(‘F’,Tspan,y0)
其中:
T:求解区域内离散数据
Y:求解区域内离散数据的对应数值解
‘F’ 是包括函数文件名字的字符串或函数句柄。函数F(t,y) 必须返回列向量
Tspan = [t0,tN]是常微分方程求解区域;或具体节点. 例:linspace(a,b,step)
y0是表示初始条件
例1:
function test [t,N]=ode23(@fun1,[1994,2020],12) plot(t,N,’o’) function
dfun=fun1(t,N) dfun=0.015*N;
例2:
[t,Y]=ode23('fox',[0,20],[100;20]); function z=fox(t,y)
z(1,:)=y(1)-0.015*y(1).*y(2); z(2,:)=-y(2)+0.01*y(1).*y(2);
2.ode45:
显式的单步Runge-Kutta中阶(4阶到5阶) 解法。适用对精度有一定要求的非难度问题