how to properly implement K values in 4th order Runge-kutta (RK4)
2 views (last 30 days)
Show older comments
just want to know If I am proper implementing these K eqns I'm not sure if I'm actually taking a slope estimate at each time step so some help would be nice
if true
%begin creating K1s to create intermediate F values
k11 = F2(i);
k12 = 2*F4(i) - f*F2(i) +F1(i) - mu2*(F1(i)+mu1)/(((F1(i)+mu1)^2 + F2(i)^2)^1.5) - mu1*(F1(i)-mu2)/(((F1(i)-mu2)^2 + F3(i)^2)^1.5);
k13 = F4(i);
k14 = -2*F2(i) - f*F4(i) + F3(i) -mu2*F3(i)/(((F1(i)+mu1)^2 + F3(i)^2)^1.5) - mu1*F3(i)/(((F1(i)-mu2)^2 + F3(i)^2)^1.5);
%initialize values for intermediate F equations (intermediate slopes)
F1tmp(i) = F1(i) + (dt/2)*k11;
F2tmp(i) = F2(i) + (dt/2)*k12;
F3tmp(i) = F3(i) + (dt/2)*k13;
F4tmp(i) = F4(i) + (dt/2)*k14;
%create K2s for next intermediate F values
k21 = F2tmp(i);
k22 = 2*F4tmp(i) - f*F2tmp(i) +F1tmp(i) - mu2*(F1tmp(i)+mu1)/(((F1tmp(i)+mu1)^2 + F2tmp(i)^2)^1.5) - mu1*(F1tmp(i)-mu2)/(((F1tmp(i)-mu2)^2 + F3tmp(i)^2)^1.5);
k23 = F4tmp(i);
k24 = -2*F2tmp(i) - f*F4tmp(i) + F3tmp(i) -mu2*F3tmp(i)/(((F1tmp(i)+mu1)^2 + F3tmp(i)^2)^1.5) - mu1*F3tmp(i)/(((F1tmp(i)-mu2)^2 + F3tmp(i)^2)^1.5);
% code
end
0 Comments
Answers (0)
See Also
Categories
Find more on Numerical Integration and Differential Equations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!