|
function yout = runge_kutta(fun,t,yin,varargin)
) p* W4 }' b. R) z9 K9 Ft_interval = t(2)-t(1);! F7 n% @# q9 w) r( c
k1 = t_interval*fun(t(1),yin,varargin);
5 }, H' m) l' O$ T$ rk2 = t_interval*fun(t(1)+t_interval/2,yin+k1/2varargin);
5 L- Y7 L0 i4 ak3 = t_interval*fun(t(1)+t_interval/2,yin+k2/2,varargin);, ], ~+ ]3 ?2 {$ b/ ]! Q$ M! a
k4 = t_interval*fun(t(1)+t_interval,yin+k3,varargin);
* j! Z, `; ]" r# I; i {yout = yin+(k1+2*k2+2*k3+k4)/6;' _# G/ e* `5 j+ w* S! I
end |
|