simple second order ODE solver

15 visualizaciones (últimos 30 días)
Derek Bindbeutel
Derek Bindbeutel el 27 de Abr. de 2016
Editada: Jan el 27 de Abr. de 2016
Hello, I am trying to solve this second order ODE.
(d^2(x)/dt^2)+(dx/dt)+x=0
x(0)=0,x'(0)=1
t=[0 10]
I have tried using ODE 45 and dsolve , however when I always get some kind of error message either regarding my t input or my x''. If anyone has can lend assistance that would be much appreciated. Thanks in advance.
  1 comentario
Jan
Jan el 27 de Abr. de 2016
Editada: Jan el 27 de Abr. de 2016
Please post your code and the a copy of the complete error message. Then suggesting an improvement is easier and you can learn what went wrong.

Iniciar sesión para comentar.

Respuestas (2)

Torsten
Torsten el 27 de Abr. de 2016
You can't prescribe x''(0) for a 2nd order ODE.
Best wishes
Torsten.
  4 comentarios
Derek Bindbeutel
Derek Bindbeutel el 27 de Abr. de 2016
Thanks this is a lot of help. How will add a time span from 0 to 10 t=[0,10] affect this method?
Torsten
Torsten el 27 de Abr. de 2016
No. t will be a variable in the answer.
Solution is here:
Best wishes
Torsten.

Iniciar sesión para comentar.


Jan
Jan el 27 de Abr. de 2016
Editada: Jan el 27 de Abr. de 2016
function yourIntegration
x0 = [0; 1];
[t, x] = ode45(@YourODE, x0, [0, 10]);
plot(t, x);
function dx = YourODE(t, x)
dx = [x(2) ; ...
-x(2) - x(1)];

Community Treasure Hunt

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

Start Hunting!

Translated by