is there any possibility to linearize nonlinear system and change into state space system

103 views (last 30 days)
my problem is huge 31dof problem, I figure it out how to solve. But the main problem is linearization so i create fuction which represents the 31 equations of motion and parameters and use simulink to linearize. But its not working i want state space system A,B,C,D from my equations. Is there any method to solve ode and convert into state space. Please help me

Accepted Answer

Tim Grunert
Tim Grunert on 12 Apr 2018
Hey, if you can set up your dynamical equations in explicit form: dx/dt = f(x,u) and y = g(x,u) e.g. using the symbolic math toolbox you can easily linearize your system around a steady state (x0, u0).
As an example your system matrix results from: A = jacobian(f, x) After it you need to replace all remaining x with x0 and u with u0 in A.
For the input matrix likewise shown but with B = jacobian(f,u) For C and D using g instead of f.
We published a small tool to handle nonlinear dynamical systems symbolically in MATLAB. There the feature of linearization is implemented: https://github.com/odesca/ODESCA/releases

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!