Controllability Gramian

I have a system of the form xdot= Ax + Bu. I have my A and B matrix defined. But I'm having a bit of trouble using the controllability gramian. The syntax just says
Wc = gram(sys,'c') % controllability gramian
But I don't know how to define 'sys'. Any help? Thanks!

 采纳的回答

use the state space ss() function.
help ss
SS Constructs state-space model or converts model to state space.
Construction:
SYS = SS(A,B,C,D) creates an object SYS of class @ss representing
the continuous-time state-space model
dx/dt = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)

3 个评论

Thanks! Do you know by any chance if there's a way to do the gramian from some initial time t0 to some final time tf instead of doing it from 0 to infinity?
Sorry, I have no idea.
I know this is several years late, but for anyone else reading this wondering the same thing, MATLAB 2016a has the option of computing the controllability gramian over some finite time. If your system is stable you can use the following:
opt = gramOptions('TimeInterval', [t0 tf]);
Wc = gram(sys,'c',opt);

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Matrix Computations 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by