simple second order ODE solver

14 ビュー (過去 30 日間)
Derek Bindbeutel
Derek Bindbeutel 2016 年 4 月 27 日
編集済み: Jan 2016 年 4 月 27 日
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 件のコメント
Jan
Jan 2016 年 4 月 27 日
編集済み: Jan 2016 年 4 月 27 日
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.

サインインしてコメントする。

回答 (2 件)

Torsten
Torsten 2016 年 4 月 27 日
You can't prescribe x''(0) for a 2nd order ODE.
Best wishes
Torsten.
  4 件のコメント
Derek Bindbeutel
Derek Bindbeutel 2016 年 4 月 27 日
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 2016 年 4 月 27 日
No. t will be a variable in the answer.
Solution is here:
Best wishes
Torsten.

サインインしてコメントする。


Jan
Jan 2016 年 4 月 27 日
編集済み: Jan 2016 年 4 月 27 日
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)];

カテゴリ

Help Center および File ExchangeNumeric Solvers についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by