Hello,
I am trying to make a runge-kutta code that solves a coupled ode by taking initial values (x0 and y0). Can you please guide me on this

4 Kommentare

Alan Stevens
Alan Stevens am 19 Sep. 2020
What do you expect the results to look like?
Gerard Rojo
Gerard Rojo am 19 Sep. 2020
It should look something like this. The values I get are very close to the initial value, when it should be much bigger.
Gerard Rojo
Gerard Rojo am 19 Sep. 2020
I forgot to mention i haven't plotted x and y values for all 20 initial conditions. I have only done it for first 10 initial conditions.
the cyclist
the cyclist am 19 Sep. 2020
I don't have a solution to your main question, but just wanted to point out that you can do all 20 plots with this one line of code:
figure;
plot(x_rk', y_rk','y', 'MarkerSize',5);

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Wan Ji
Wan Ji am 20 Aug. 2021
Bearbeitet: Wan Ji am 20 Aug. 2021

0 Stimmen

Use arrayfun to obtain your solutions and Plot them!
x0y0 = [20x2] array?
tspan = [0:dt:t_end];
[tsol, xysol] = arrayfun(@(i) ode45(@odefun, tspan, x0y0(i,:)), 1:20, 'uniform', false);
arrayfun(@(i)plot(xysol{i}(:,1), xysol{i}(:,2),'b'), 1:20);

Kategorien

Mehr zu Programming finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2019b

Tags

Gefragt:

am 19 Sep. 2020

Bearbeitet:

am 20 Aug. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by