From rk-2 to rk-4

5 次查看(过去 30 天)
Danny Helwegen
Danny Helwegen 2018-12-20
编辑: madhan ravi 2018-12-21
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

采纳的回答

madhan ravi
madhan ravi 2018-12-21
编辑:madhan ravi 2018-12-21

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by