Using dsolve function to solve this equation?

3 Ansichten (letzte 30 Tage)
Bob
Bob am 23 Jul. 2016
Kommentiert: Star Strider am 23 Jul. 2016
Question: Use dsolve to solve this equation: y' − y = 2 sin(t).
Below is the code I used but I do not think I am getting the right answer.
syms y(t);
y = dsolve(diff(y) == 2*sin(t)+y)

Akzeptierte Antwort

Star Strider
Star Strider am 23 Jul. 2016
For grins, I decided to see what a Laplace transform solution would produce:
syms s y(t) y0 Y
Lsin = laplace(sin(t));
Eqn1 = Y*(s-1) == Lsin;
Eqn2 = solve(Eqn1, Y);
Eqn3 = ilaplace(partfrac(Eqn2))
Eqn4 = simplify(Eqn3, 'steps',10)
Eqn3 =
exp(t)/2 - cos(t)/2 - sin(t)/2
Eqn4 =
exp(t)/2 - (2^(1/2)*sin(t + pi/4))/2
  2 Kommentare
Bob
Bob am 23 Jul. 2016
I need to use the dsolve function, so this does not help me at all.
Star Strider
Star Strider am 23 Jul. 2016
My point is that it gives an equivalent answer to the answer dsolve returns when you simplify it. It assumes an initial condition of zero. If you want to specify an initial condition, include one:
syms y(t) y0
y = dsolve(diff(y) == 2*sin(t)+y, y(0) == y0)
y =
exp(t)*(y0 + 1) - 2^(1/2)*cos(t - pi/4)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by