Solving ODE in MATLAB using Runge-Kutta method of order 4

8 次查看(过去 30 天)
Write a computer program that will solve the initial value problem dy/dx = f(x, y) subjected to y(x0) = y0 by classical fourth order Runge-Kutta method.
Inputs: x0, y0, f(x, y), h = step-size, and n = number of steps. Using the code obtain the solutions of the ODE
Compare each numerically obtained solution with corresponding analytical solution by plotting them in a single figure.
  9 个评论
James Tursa
James Tursa 2021-12-14
编辑:James Tursa 2021-12-14
Still not clear. Is the user supposed to know that z is dy/dx? How would they know this? Is the user supposed to enter a function handle directly using x, y, and z with the assumption that z is dy/dx?
Shankhadeep Saha
Shankhadeep Saha 2021-12-14
Yes, the user knows that. He will input the function interms of x, y and z. Like in this particular case user will input g(x,y,z) = sin 2x -0.2z-y = dz/dx

请先登录,再进行评论。

回答(1 个)

James Tursa
James Tursa 2021-12-14
Why aren't you using this to update z:
z(i+1) = z(i) + (1/6)*(l1+(2*l2)+(2*l3)+l4);

类别

Help CenterFile Exchange 中查找有关 Ordinary Differential Equations 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by