~ubuntu-branches/ubuntu/hoary/scilab/hoary

« back to all changes in this revision

Viewing changes to man/control/cainv.man

  • Committer: Bazaar Package Importer
  • Author(s): Torsten Werner
  • Date: 2005-01-09 22:58:21 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20050109225821-473xr8vhgugxxx5j
Tags: 3.0-12
changed configure.in to build scilab's own malloc.o, closes: #255869

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
.TH cainv 1 "April 1993" "Scilab Group" "Scilab Function"
2
 
.so ../sci.an 
3
 
.SH NAME
4
 
cainv -  Dual of abinv
5
 
.SH CALLING SEQUENCE
6
 
.nf
7
 
[X,dims,J,Y,k,Z]=cainv(Sl,alfa,beta,flag)
8
 
.fi
9
 
.SH PARAMETERS
10
 
.TP 10
11
 
Sl
12
 
: \fVsyslin\fR list containing the matrices \fV[A,B,C,D]\fR.
13
 
.TP
14
 
alfa 
15
 
: real number or vector (possibly complex, location of closed loop poles)
16
 
.TP
17
 
beta
18
 
: real number or vector (possibly complex, location of closed loop poles)
19
 
.TP
20
 
flag
21
 
: (optional) character string \fV'ge'\fR (default) or \fV'st'\fR or \fV'pp'\fR
22
 
.TP
23
 
X
24
 
: orthogonal matrix of size nx (dim of state space).
25
 
.TP
26
 
dims
27
 
:
28
 
integer row vector \fVdims=[nd1,nu1,dimS,dimSg,dimN]\fR  (5 entries, nondecreasing order).If \fVflag='st'\fR, (resp. \fV'pp'\fR), \fVdims\fR has 4
29
 
(resp. 3) components.
30
 
.TP
31
 
J
32
 
: real matrix (output injection)
33
 
.TP
34
 
Y
35
 
: orthogonal matrix of size ny (dim of output space).
36
 
.TP
37
 
k
38
 
: integer (normal rank of \fVSl\fR)
39
 
.TP
40
 
Z
41
 
: non-singular linear system (\fVsyslin\fR list)
42
 
.SH DESCRIPTION
43
 
\fVcainv\fR finds a bases \fV(X,Y)\fR (of state space and output space resp.)
44
 
and output injection matrix \fVJ\fR such that the matrices of Sl in 
45
 
bases (X,Y) are displayed as:
46
 
.nf
47
 
 
48
 
                  [A11,*,*,*,*,*]                [*]
49
 
                  [0,A22,*,*,*,*]                [*]
50
 
   X'*(A+J*C)*X = [0,0,A33,*,*,*]   X'*(B+J*D) = [*]
51
 
                  [0,0,0,A44,*,*]                [0]
52
 
                  [0,0,0,0,A55,*]                [0]
53
 
                  [0,0,0,0,0,A66]                [0]
54
 
 
55
 
          Y*C*X = [0,0,C13,*,*,*]          Y*D = [*]
56
 
                  [0,0,0,0,0,C26]                [0]
57
 
 
58
 
 
59
 
.fi
60
 
.LP
61
 
The partition of \fVX\fR is defined by the vector 
62
 
\fVdims=[nd1,nu1,dimS,dimSg,dimN]\fR and the partition of \fVY\fR
63
 
is determined by \fVk\fR.
64
 
.LP
65
 
Eigenvalues of \fVA11\fR \fV(nd1 x nd1)\fR are unstable.
66
 
Eigenvalues of \fVA22\fR \fV(nu1-nd1 x nu1-nd1)\fR are stable.
67
 
.LP
68
 
The pair \fV(A33, C13)\fR \fV(dimS-nu1 x dimS-nu1, k x dimS-nu1)\fR is observable, 
69
 
and eigenvalues of \fVA33\fR are set to \fValfa\fR.
70
 
.LP
71
 
Matrix \fVA44\fR \fV(dimSg-dimS x dimSg-dimS)\fR is unstable.
72
 
Matrix \fVA55\fR \fV(dimN-dimSg,dimN-dimSg)\fR is stable
73
 
.LP
74
 
The pair \fV(A66,C26)\fR \fV(nx-dimN x nx-dimN)\fR is observable, 
75
 
and eigenvalues of \fVA66\fR set to \fVbeta\fR.
76
 
.LP
77
 
The \fVdimS\fR first columns of \fVX\fR span S= smallest (C,A) invariant
78
 
subspace which contains Im(B), \fVdimSg\fR first columns of \fVX\fR
79
 
span Sg the maximal "complementary detectability subspace" of \fVSl\fR
80
 
.LP 
81
 
The \fVdimN\fR first columns of \fVX\fR span the maximal
82
 
"complementary observability subspace" of \fVSl\fR. 
83
 
(\fVdimS=0\fR if B(ker(D))=0).
84
 
.LP
85
 
If \fVflag='st'\fR is given, a five blocks partition of the matrices is 
86
 
returned and \fRdims\fR has four components. If \fVflag='pp'\fR is 
87
 
given a four blocks partition is returned (see abinv).
88
 
.LP
89
 
This function can be used to calculate an unknown input observer:
90
 
.nf
91
 
// DDEP: dot(x)=A x + Bu + Gd
92
 
//           y= Cx   (observation)
93
 
//           z= Hx    (z=variable to be estimated, d=disturbance)
94
 
//  Find: dot(w) = Fw + Ey + Ru such that
95
 
//          zhat = Mw + Ny
96
 
//           z-Hx goes to zero at infinity
97
 
//  Solution exists iff Ker H contains Sg(A,C,G) inter KerC (assuming detectability)
98
 
//i.e. H is such that:
99
 
// For any W which makes a column compression of [Xp(1:dimSg,:);C]
100
 
// with Xp=X' and [X,dims,J,Y,k,Z]=cainv(syslin('c',A,G,C));
101
 
// [Xp(1:dimSg,:);C]*W = [0 | *] one has
102
 
// H*W = [0 | *]  (with at least as many aero columns as above).
103
 
.fi
104
 
.SH SEE ALSO
105
 
abinv, dt_ility, ui_observer
106
 
 
107
 
 
108
 
 
109
 
 
110
 
 
111