Convert Differential Equations to Spate Space

5 views (last 30 days)
I have a system of differential equations, which I would like to convert to spate-space representation:
s = [x(2);
(x(4)*x(6)*(p.Iyy-p.Izz)-(u(1)+u(2)+u(3)+u(4))*p.IR*x(4)...
+(p.b*p.l*(u(2)^2-u(4)^2)))/p.Ixx;
x(4);
(x(2)*x(6)*(p.Izz-p.Ixx)+(u(1)+u(2)+u(3)+u(4))*p.IR*x(2)...
+(p.b*p.l*(u(3)^2-u(1)^2)))/p.Iyy;
x(6);
(x(4)*x(2)*(p.Ixx-p.Iyy)+(p.d*(u(1)^2+u(3)^2-u(2)^2-u(4)^2)))/p.Izz;
x(8);
((p.b*(u(1)^2+u(2)^2+u(3)^2+u(4)^2))*(sin(x(1))*sin(x(5))...
+cos(x(1))*sin(x(3))*cos(x(5))))/p.mass;
x(10);
((p.b*(u(1)^2+u(2)^2+u(3)^2+u(4)^2))*(cos(x(1))*sin(x(3))*sin(x(5))...
-sin(x(1))*cos(x(5))))/p.mass;
x(12);
((p.b*(u(1)^2+u(2)^2+u(3)^2+u(4)^2))*(cos(x(1))*cos(x(3)))-p.mass*p.g)/p.mass];
The confusing moment for me is that there are multiplication of state variables (e.g. x(4)*x(6)), so I don't know how to write it down in A matrix.
Is it possible to convert such system to state-space? Could you hint the way how it should look like?
Thank you in advance for your answer!

Accepted Answer

Star Strider
Star Strider on 9 Jul 2019
In order to convert your equations to a state-space representation, you need to linearise them. This involves taking the Jacobian. I refer you to Linearization of Nonnlinear Systems to guide your efforts. The Symbolic Math Toolbox (that was not available when I encountered this) can likely help you significantly.
There are several other such references that reveal themselves in an Interweb search.

More Answers (0)

Categories

Find more on Matrix Computations 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!