Second Order Differential Equations
3 views (last 30 days)
Show older comments
I have seen all of the documentation of converting second order diffeq's to first order, but what if your equations are coupled...for instance:
y''[t] = 3x''[t] -4y[t];
x''[t] = 2y''[t] + 6x[t];
0 Comments
Answers (1)
Brian B
on 11 Jul 2014
Edited: Brian B
on 11 Jul 2014
You can rewrite that system with a constant mass matrix M. That is, the system above is equivalent to
M * d/dt[x1; x2; x3; x4] = [x2; x4; -4 x3; 6 x1]
where
M = [1 0 0 0; 0 0 1 0; 0 -3 0 1; 0 1 0 -2].
Use odeset to specify the mass matrix.
2 Comments
Helge
on 20 Feb 2015
Edited: Helge
on 20 Feb 2015
Hi Community,
isn't it possible to rewrite the above differential equations, so they aren't coupled anymore in terms of the second derivative? I would do it as follows:
- Insert the 2nd eqn into the first, which gives: y''[t] = 3*(2y''[t] + 6x[t]) - 4y[t] and solve this for y''[t]:: y''[t] = -18/5 * x[t] + 4/5 y[t]
- Re-Insert this in the 2nd eqn from "Leila" above, which gives x''[t] = 2(-18/5 * x[t] + 4/5 * y[t]) + 6 * x[t] and solve for x''[t]:: x''[t] = 8/5 * y[t] - 6/5 * x[t]
- Now these two equations can be brought to State Space Representation and solved with ode45()
I tried to solve my problem this way and now I am unsure if that is even possible or do I have two use the mass matrix M in any case?
Best wishes, Helge
Torsten
on 20 Feb 2015
Everything is all right with your way of solving the above system.
Best wishes
Torsten.
See Also
Categories
Find more on Ordinary Differential Equations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!