MATLAB Answers

From rk-2 to rk-4

4 views (last 30 days)
Danny Helwegen
Danny Helwegen on 20 Dec 2018
Edited: madhan ravi on 21 Dec 2018
Hi, I have a problem. I have written the following code for a Runge Kutta 2 but now i want it write a code for a Runge Kutta 4. So if i'm correct i have to add a k3 and a k4 but i have no clue how. Can anyone help me?
function x = exc5rk2(k,M,h,D)
% k, m, and D are preset values
%h is the timesteps and D is the time
N = D/h;
t(1) = 0;
x(1) = 1.5;
v(1) = 0;
for i = 1:N
t(i+1) = t(i) + h;
xs = x(i) + h*(v(i));
vs = v(i) + h*(-k/M*x(i));
x(i+1) = x(i) + h/2*(v(i)+vs);
v(i+1) = v(i) + h/2*(-k/M*x(i)-k/M*xs);
end
plot(t,x,t,v)
return
  1 Comment
madhan ravi
madhan ravi on 20 Dec 2018
can't you use ode solvers?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by