How to solve Coupled Differential Equations
131 views (last 30 days)
Show older comments
Hi
how to solve that set of equations
y'-x'=2-x
2x'-y'=3+2y
0 Comments
Answers (2)
Star Strider
on 9 May 2021
Try this —
syms x(t) y(t) x0 y0
Dx = diff(x);
Dy = diff(y);
ode1 = Dy-Dx == 2 - x
ode2 = 2-Dy - Dy == 3 + 2*y
S = dsolve(ode1, ode2, x(0)==x0, y(0)==y0)
x(t) = simplify(S.x, 500)
y(t) = simplify(S.y, 500)
.
0 Comments
Walter Roberson
on 9 May 2021
yprime - xprime == 2-x, 2*xprime - yprime == 3 + 2*y
2*yprime - 2*xprime == 4-2*x, 2*xprime - yprime == 3 + 2*y
2*yprime - 2*xprime + 2*xprime - yprime == 4-2*x + 3 + 2*y
yprime == 7 - 2*x + 2*y
7 - 2*x + 2*y - xprime == 2*x
7 - 2*x + 2*y - 2*x == xprime
xprime = 7 - 4*x + 2*y
So...
function dxy = odefun(t, xy)
dxy = [7 - 4*xy(1) + 2*xy(2); 7 - 2*xy(1) + 2*xy(2)];
end
4 Comments
Walter Roberson
on 9 May 2021
syms xprime yprime x y
eqn = [yprime - xprime == 2-x, 2*xprime - yprime == 3 + 2*y]
sol = solve(eqn, [xprime, yprime])
sol.xprime
sol.yprime
Hmmm, where did I go wrong?
Walter Roberson
on 9 May 2021
I did make a mistake, but it was the step after you indicated. I copied as 2*x instead of 2-x . The corrected version is
yprime - xprime == 2-x, 2*xprime - yprime == 3 + 2*y
2*yprime - 2*xprime == 4-2*x, 2*xprime - yprime == 3 + 2*y
2*yprime - 2*xprime + 2*xprime - yprime == 4-2*x + 3 + 2*y
yprime == 7 - 2*x + 2*y
7 - 2*x + 2*y - xprime == 2 - x %corrected
7 - 2*x + 2*y - (2 - x) == xprime
xprime = 5 - x + 2*y
So...
function dxy = odefun(t, xy)
dxy = [5 - xy(1) + 2*xy(2); 7 - 2*xy(1) + 2*xy(2)];
end
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!