lin — linearization
[A,B,C,D]=lin(sim,x0,u0) [sl]=lin(sim,x0,u0)
linearization of the non-linear system [y,xdot]=sim(x,u)
around x0,u0
.
sim
is a function which computes y
and xdot
.
The output is a linear system (syslin
list) sl
or the
four matrices (A,B,C,D)
For example, if ftz
is the function passed to ode e.g.
[zd]=ftz(t,z,u)
and if we assume that y=x
[z]=ode(x0,t0,tf,list(ftz,u)
compute x(tf)
.
If simula
is the following function:
deff('[y,xd]=simula(x,u)','xd=ftz(tf,x,u); y=x;');
the tangent linear system sl
can be obtained by:
[A,B,C,D]=lin(simula,z,u) sl = syslin('c',A,B,C,D,x0)