📄 runge_kutta4.m
字号:
function [x,y]=Runge_Kutta4(ydot_fun, x0, y0, h, N)
% 标准四阶Runge_Kutta公式,其中
% ydot_fun --- 一阶微分方程的函数
% x0, y0 --- 初始条件
% h --- 区间步长
% N --- 区间的个数
% x --- Xn 构成的向量
% y --- Yn 构成的向量
x=zeros(1,N+1); y=zeros(1,N+1); x(1)=x0; y(1)=y0;
for n=1:N
x(n+1)=x(n)+h;
k1=h*feval(ydot_fun, x(n), y(n));
k2=h*feval(ydot_fun, x(n)+1/2*h, y(n)+1/2*k1);
k3=h*feval(ydot_fun, x(n)+1/2*h, y(n)+1/2*k2);
k4=h*feval(ydot_fun, x(n)+h, y(n)+k3);
y(n+1)=y(n)+1/6*(k1+2*k2+2*k3+k4);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -