Filter löschen
Filter löschen

System of nonlinear differential equations

1 Ansicht (letzte 30 Tage)
Aleem Andrew
Aleem Andrew am 4 Feb. 2020
Beantwortet: Walter Roberson am 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 Kommentare
darova
darova am 4 Feb. 2020
Please explain how did you write your equation? Why
f = @(t,y) [(y(2))];
Aleem Andrew
Aleem Andrew am 4 Feb. 2020
As in the code from the linked page that line equates the first derivative of y to the second derivative.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Walter Roberson
Walter Roberson am 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.

Community Treasure Hunt

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

Start Hunting!

Translated by