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 commentaires

Alan Stevens
Alan Stevens le 19 Sep 2020
What do you expect the results to look like?
Gerard Rojo
Gerard Rojo le 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 le 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.
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);

Connectez-vous pour commenter.

Réponses (1)

Wan Ji
Wan Ji le 20 Août 2021
Modifié(e) : Wan Ji le 20 Août 2021

0 votes

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);

Catégories

En savoir plus sur Programming dans Centre d'aide et File Exchange

Produits

Version

R2019b

Tags

Modifié(e) :

le 20 Août 2021

Community Treasure Hunt

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

Start Hunting!

Translated by