Solving a Second Order Differential Equation
Afficher commentaires plus anciens
Réponses (2)
syms x t y(t)
dx = diff(x, t)
dy = diff(y, t)
x is not a function of t so its derivative with respect to t is 0.
y is a function of t so its derivative with respect to t is not 0. [It could be, if you substituted a constant into dy for y, but it's not always zero.]
dyForConstant = subs(dy, y, 5)
dyForNonconstant = subs(dy, y, sin(t))
1 commentaire
Anthony Mullins
le 29 Jan 2021
Modifié(e) : Anthony Mullins
le 29 Jan 2021
James Tursa
le 29 Jan 2021
Modifié(e) : James Tursa
le 29 Jan 2021
Here is what I get:
>> syms y(t)
>> eqn = 4*diff(y,t,2)+32*diff(y,t)+24*y^3 == 192;
>> Dy = diff(y,t);
>> cond = [y(0)==1.5, Dy(0)==0];
>> ySol(t) = dsolve(eqn,cond)
Warning: Unable to find symbolic solution.
> In dsolve (line 216)
ySol(t) =
[ empty sym ]
Maybe not surprising that it can't find a symbolic solution given the y^3 term. So you could use a numeric solver instead. E.g.,
f = @(t,y) [y(2);(192 - 32*y(2) - 24*y(1)^3)/4];
[t,y] = ode45(f,[0 10],[1.5;0]);
plot(t,y(:,1)); grid on
Catégories
En savoir plus sur Calculus dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



