File: specfact.cat

package info (click to toggle)
scilab 2.6-4
  • links: PTS
  • area: non-free
  • in suites: woody
  • size: 54,632 kB
  • ctags: 40,267
  • sloc: ansic: 267,851; fortran: 166,549; sh: 10,005; makefile: 4,119; tcl: 1,070; cpp: 233; csh: 143; asm: 135; perl: 130; java: 39
file content (33 lines) | stat: -rw-r--r-- 803 bytes parent folder | download
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
specfact          Scilab Group          Scilab Function            specfact
NAME
   specfact - spectral factor
  
CALLING SEQUENCE
 [W0,L]=specfact(A,B,C,D)
DESCRIPTION
   Given a spectral density matrix phi(s):
  
                  -1                   -1
      R + C*(s*I-A) * B  +  B'*(-s*I-A') * C'  with R=D+D' > 0
   specfact computes  W0 and L such  that  W(s)=W0+L*(s*I-A)^-1*B  is a
  spectral factor of of PHI(s), i.e.
  
   phi(s)=W'(-s)*W(s)
  
EXAMPLE
 A=diag([-1,-2]);B=[1;1];C=[1,1];D=1;s=poly(0,'s');
 W1=syslin('c',A,B,C,D);
 phi=gtild(W1,'c')+W1;
 phis=clean(ss2tf(phi))
 clean(phis-horner(phis,-s)');   //check this is 0...
 [A,B,C,D]=abcd(W1);
 [W0,L]=specfact(A,B,C,D);
 W=syslin('c',A,B,L,W0)
 Ws=ss2tf(W);
 horner(Ws,-s)*Ws
SEE ALSO
   gtild, sfact, fspecg
  
AUTHOR
   F. D.