|
|
function yout = runge_kutta(fun,t,yin,varargin)- e: q# `% i3 Z2 z% H& K% ?' Y# q
t_interval = t(2)-t(1);
! B" F6 A8 ?) f+ b2 Ck1 = t_interval*fun(t(1),yin,varargin);: \) R% `/ i3 P- Q0 K
k2 = t_interval*fun(t(1)+t_interval/2,yin+k1/2varargin);
, @" }% f6 e, n" @. qk3 = t_interval*fun(t(1)+t_interval/2,yin+k2/2,varargin);
; [5 X9 _9 y5 F* H8 yk4 = t_interval*fun(t(1)+t_interval,yin+k3,varargin);* X+ T3 u3 K9 J. W; n
yout = yin+(k1+2*k2+2*k3+k4)/6;* @ c1 r6 j7 I# Y) s) M& {) d k! o7 r
end |
|