1
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
2
<!DOCTYPE MAN SYSTEM "../../manrev.dtd">
4
<LANGUAGE>eng</LANGUAGE>
5
<TITLE>specfact</TITLE>
6
<TYPE>Scilab Function</TYPE>
7
<DATE>April 1993</DATE>
8
<SHORT_DESCRIPTION name="specfact"> spectral factor</SHORT_DESCRIPTION>
10
<CALLING_SEQUENCE_ITEM>[W0,L]=specfact(A,B,C,D) </CALLING_SEQUENCE_ITEM>
14
Given a spectral density matrix <VERB>phi(s)</VERB>:</P>
18
R + C*(s*I-A) * B + B'*(-s*I-A') * C' with R=D+D' > 0
21
<P><VERB>specfact</VERB> computes <VERB>W0</VERB> and <VERB>L</VERB> such
22
that <VERB>W(s)=W0+L*(s*I-A)^-1*B</VERB> is a
23
spectral factor of of <VERB>PHI(s)</VERB>, i.e.</P>
25
<VERB>phi(s)=W'(-s)*W(s)</VERB>
30
A=diag([-1,-2]);B=[1;1];C=[1,1];D=1;s=poly(0,'s');
31
W1=syslin('c',A,B,C,D);
33
phis=clean(ss2tf(phi))
34
clean(phis-horner(phis,-s)'); //check this is 0...
36
[W0,L]=specfact(A,B,C,D);
37
W=syslin('c',A,B,L,W0)
53
<AUTHOR>F. D. </AUTHOR>