Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
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 ( - syslinlist)
- 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 | ||
| << pen2ea | Traitement du signal | sysconv >> |