home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 10 / 10.iso / l / l455 / 10.ddi / CONTROL.DI$ / OBSVF.M < prev    next >
Encoding:
Text File  |  1993-03-11  |  1.0 KB  |  35 lines

  1. function [abar,bbar,cbar,t,k] = obsvf(a,b,c,tol)
  2. %OBSVF    Observability staircase form.
  3. %    [ABAR,BBAR,CBAR,T,K] = OBSVF(A,B,C) returns a decomposition
  4. %    into the observable/unobservable subspaces.
  5. %    [ABAR,BBAR,CBAR,T,K] = OBSVF(A,B,C,TOL) uses tolerance TOL.
  6. %
  7. %    If Ob=OBSV(A,C) has rank r <= n, then there is a similarity
  8. %    transformation T such that
  9. %
  10. %      Abar = T * A * T' ,  Bbar = T * B  ,  Cbar = C * T' .
  11. %
  12. %    and the transformed system has the form
  13. %
  14. %          | Ano   A12|           |Bno|
  15. %    Abar =  ----------  ,  Bbar =  ---  ,  Cbar = [ 0 | Co].
  16. %          |  0    Ao |           |Bo |
  17. %
  18. %                                               -1           -1
  19. %    where (Ao,Bo) is controllable, and Co(sI-Ao) Bo = C(sI-A) B.
  20. %
  21. %    See also: OBSV.
  22.  
  23. %    Author : R.Y. Chiang  3-21-86
  24. %    Revised 5-27-86 JNL
  25. %    Copyright (c) 1986-93 by the MathWorks, Inc.
  26.  
  27. % Use CTRBF and duality:
  28.  
  29. if nargin == 4
  30.     [aa,bb,cc,t,k] = ctrbf(a',c',b',tol);
  31. else
  32.     [aa,bb,cc,t,k] = ctrbf(a',c',b');
  33. end
  34. abar = aa'; bbar = cc'; cbar = bb';
  35.