solving ordinary differential equations

Hello, I'm a beginner in matlab. I'm trying to solve ODE in matlab, but I'm getting error I don't know why!
This is the equation d2y(t) / dt2 + 2 dy/dt + 5 y(t) = 5 cos1500t, I attached a photo of my code with the errors.

1 件のコメント

Torsten
Torsten 2021 年 12 月 31 日
編集済み: Torsten 2021 年 12 月 31 日
Which MATLAB version do you use ?
The syntax for using "dsolve" has changed in the course of time.

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

 採用された回答

Cris LaPierre
Cris LaPierre 2021 年 12 月 31 日

1 投票

I think the reason for the error is that you have defined dy as a sym variable rather than a symfun, so it is interpretting the '(0)' to be an index into variable dy rather than dy at t==0.
Try this
syms y(t)
dy(t) = diff(y(t),t)
dy(t) = 
dy2(t) = diff(y(t),t,2)
dy2(t) = 
equation = dy2 + 2*dy + 5*y(t) == 5*cos(1500*t)
equation(t) = 
i1 = y(0) == 0;
i2 = dy(0) == 0;
dsolve(equation,[i1,i2])
ans = 

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeSymbolic Math Toolbox についてさらに検索

タグ

質問済み:

2021 年 12 月 31 日

編集済み:

2021 年 12 月 31 日

Community Treasure Hunt

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

Start Hunting!

Translated by