How do I plot component curves for system of differential equations? I keep getting errors for this compartment model

4 vues (au cours des 30 derniers jours)
F=@(t,x) [-4*x(1)+4*x(2); x(1)-6*x(2)+3*x(3)+2; x(1)+2*x(2)-8*x(3)+5];
[t,x]=ode45(F,[0 3], [0 10]);
plot(t, x(:,1), t, x(:,2), t, x(:,3))

Réponse acceptée

Star Strider
Star Strider le 7 Juin 2018
You have to supply the same number of initial conditions to the ODE solver as you have variables in your ODE equation. Assuming you only want ‘x(3)’ to have anything in it at the start, this works:
[t,x]=ode45(F,[0 3], [0 0 10]);
The rest of your code is unchanged, although you might want to add this after your plot call:
legend('C_1(t)', 'C_2(t)', 'C_3(t)', 'Location','NE')
  5 commentaires
Alex Vasin
Alex Vasin le 7 Juin 2018
Modifié(e) : Alex Vasin le 7 Juin 2018
Thanks for the help. I finished fixing everything to be the way I want it.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Programming dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by