System of nonlinear differential equations

3 visualizzazioni (ultimi 30 giorni)
Aleem Andrew
Aleem Andrew il 4 Feb 2020
Risposto: Walter Roberson il 4 Feb 2020
Can anyone explain why the following code is incorrect? It attempts to graph the solution to the differential equation y' = y'' which is ce^x.
kp = 3;
kpm = 30;
kmp = 25;
klm = 15;
kl = 1;
f = @(t,y) [(y(2))];
tspan = [0, 25];
xinit = [0.01];
ode45(f, tspan, xinit)
legend('p(t)', 'm(t)', 'l(t)')
  2 Commenti
darova
darova il 4 Feb 2020
Please explain how did you write your equation? Why
f = @(t,y) [(y(2))];
Aleem Andrew
Aleem Andrew il 4 Feb 2020
As in the code from the linked page that line equates the first derivative of y to the second derivative.

Accedi per commentare.

Risposte (1)

Walter Roberson
Walter Roberson il 4 Feb 2020
Your xinit is a scalar, so the second parameter received by f will be a scalar; it is not possible to index the second element of a scalar.
If you are working with second derivatives then your xinit should be providing boundary conditions for the first derivative and second derivative, and your f should return a column vector with the same number of elements that xinit has.

Categorie

Scopri di più su Mathematics in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by