solving ordinary differential equations

14 vues (au cours des 30 derniers jours)
abdallah alwohoush
abdallah alwohoush le 31 Déc 2021
Modifié(e) : Torsten le 31 Déc 2021
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 commentaire
Torsten
Torsten le 31 Déc 2021
Modifié(e) : Torsten le 31 Déc 2021
Which MATLAB version do you use ?
The syntax for using "dsolve" has changed in the course of time.

Connectez-vous pour commenter.

Réponse acceptée

Cris LaPierre
Cris LaPierre le 31 Déc 2021
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 = 

Plus de réponses (0)

Catégories

En savoir plus sur Symbolic Math Toolbox dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by