How do I prepare the following ODE for ode45?

5 Ansichten (letzte 30 Tage)
Sergio Manzetti
Sergio Manzetti am 20 Feb. 2018
Kommentiert: Torsten am 9 Mär. 2018
Hello, I would like to solve the following ODE in ode45, but the example's on the site are not describing using higher order derivatives with non-linear terms.
The ODE is:
y''' = y(2+x^2)
initial conditions are: y(0)=0 y'(0)=0 y''(0)=0
Thanks!
  2 Kommentare
Torsten
Torsten am 20 Feb. 2018
Google is your friend:
matlab & higher order odes
Best wishes
Torsten.
Sergio Manzetti
Sergio Manzetti am 20 Feb. 2018
Bearbeitet: Sergio Manzetti am 20 Feb. 2018
I got so far:
dYdX = @(X,Y) [Y(3) + (x^2+2)*Y(1)]; % Differential equation
res = @(ya,yb) [ya(1); ya(2); yb(2)-1]; % Boundary conditions
SolYinit = bvpinit([0 1E+1], [1; 1; 1]);
Fsol = bvp4c(dYdX, res, SolYinit);
X = Fsol.x;
F = Fsol.y;
figure(1)
plot(X, F)
legend('F_1', 'F_2', 'F_3', 3)
grid
But the first line is not correct. Can you see what is missing?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Torsten
Torsten am 20 Feb. 2018
fun = @(x,y)[y(2);y(3);y(1)*(2+x^2)];
y0 = [0 0 0];
xspan = [0 5];
[X,Y] = ode45(fun,xspan,y0);
plot(X,Y(:,1),X,Y(:,2),X,Y(:,3));
Best wishes
Torsten.
  17 Kommentare
Sergio Manzetti
Sergio Manzetti am 28 Feb. 2018
Hi Jan, is it possible to plot the square modulus of the numerical solution following your suggestion here ?
Torsten
Torsten am 28 Feb. 2018
Maybe, if you tell us what the "square modulus of the numerical solution" is.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Sergio Manzetti
Sergio Manzetti am 28 Feb. 2018
Bearbeitet: Sergio Manzetti am 28 Feb. 2018
(abs(y))^2
if y is the solution
  11 Kommentare
Sergio Manzetti
Sergio Manzetti am 9 Mär. 2018
Bearbeitet: Sergio Manzetti am 9 Mär. 2018
OK, this is quite a new way to think...so one lists the levels of derivation of y as such?
Torsten
Torsten am 9 Mär. 2018
You transform a higher order ODE to a system of first-order ODEs.
I already gave you the link to digest this.

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by