ssrand
random system generator
Syntax
sl=ssrand(nout,nin,nstate) [sl,U]=ssrand(nout,nin,nstate,flag)
Arguments
- nout
integer (number of output)
- nin
integer (number of input)
- nstate
integer (dimension of state-space)
- flag
list made of one character string and one or several integers
- sl
list (
syslin
list)- U
square
(nstate x nstate)
nonsingular matrix
Description
sl=ssrand(nout,nin,nstate)
returns a random
strictly proper (D=0
) state-space system of size
[nout,nint]
represented by a syslin
list and with nstate
state variables.
[sl,U]=ssrand(nout,nin,nstate,flag)
returns a
test linear system with given properties specified by
flag
. flag
can be one of the
following:
flag=list('co',dim_cont_subs) flag=list('uo',dim_unobs_subs) flag=list('ncno',dim_cno,dim_ncno,dim_co,dim_nco) flag=list('st',dim_cont_subs,dim_stab_subs,dim_stab0) flag=list('dt',dim_inst_unob,dim_instb0,dim_unobs) flag=list('on',nr,ng,ng0,nv,rk) flag=list('ui',nw,nwu,nwui,nwuis,rk)
The complete description of the Sys
is given in
the code of the ssrand
function (in
SCI/modules/cacsd/macros/
). For example with
flag=list('co',dim_cont_subs)
a non-controllable system
is return and dim_cont_subs
is the dimension of the
controllable subspace of Sys
. The character strings
'co','uo','ncno','st','dt','on','ui'
stand for
"controllable", "unobservable", "non-controllable-non-observable",
"stabilizable","detectable","output-nulling","unknown-input".
Examples
//flag=list('st',dim_cont_subs,dim_stab_subs,dim_stab0) //dim_cont_subs<=dim_stab_subs<=dim_stab0 //pair (A,B) U-similar to: // [*,*,*,*; [*; // [0,s,*,*; [0; //A= [0,0,i,*; B=[0; // [0,0,0,u] [0] // // (A11,B1) controllable s=stable matrix i=neutral matrix u=unstable matrix [Sl,U]=ssrand(2,3,8,list('st',2,5,5)); w=ss2ss(Sl,inv(U)); //undo the random change of basis => form as above [n,nc,u,sl]=st_ility(Sl);n,nc
See also
- syslin — définition d'un système dynamique linéaire
Report an issue | ||
<< ssprint | Représentation de Systèmes Linéaires | sysconv >> |