1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
c Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
c Copyright (C) ????-2008 - INRIA
c
c This file must be used under the terms of the CeCILL.
c This source file is licensed as described in the file COPYING, which
c you should have received as part of this distribution. The terms
c are also available at
c http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
subroutine contr(nstate,nin,a,b,icontr,tol)
c computes the order of controllablility of a state-space representation
double precision a(nstate,*),b(nstate,*)
double precision tol
integer nstate,nin,icontr
c
double precision w(200)
integer iw(20)
c
lz=1
lwrka=lz+nstate*nstate
lwrk1=lwrka+nstate*nin
lwrk2=lwrk1+nin
lw=lwrk2+nin
if(lw.gt.200) then
call erro('Too big system')
return
endif
lnblk=1
liwrk=lnblk+nstate
lw=liwrk+nin
if(lw.gt.20) then
call erro('Too big system')
return
endif
call ssxmc(nstate,nin,a,nstate,b,icontr,indcon,iw(lnblk),
1 w(lz),w(lwrka), w(lwrk1), w(lwrk2),iw(liwrk),
2 tol,0)
return
end
|