Using dsolve function to solve this equation?

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)

 Accepted Answer

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 Comments

I need to use the dsolve function, so this does not help me at all.
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)

Sign in to comment.

More Answers (0)

Tags

Asked:

Bob
on 23 Jul 2016

Commented:

on 23 Jul 2016

Community Treasure Hunt

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

Start Hunting!