equil1

equil1 — balancing (nonnegative) pair of matrices

Calling sequence

[T [,siz]]=equil1(P,Q [,tol])  

Parameters

P, Q : two non-negative symmetric matrices
T : nonsingular matrix
siz : vector of three integers
tol : threshold

Description

equil1 computes t such that:

P1=T*P*T' and Q1=inv(T)'*Q*inv(T) are as follows:

P1 = diag(S1,S2,0,0) and Q1 = diag(S1,0,S3,0) with S1,S2,S3 positive and diagonal matrices with respective dimensions siz=[n1,n2,n3]

tol is a threshold for rank determination in SVD

Examples



S1=rand(2,2);S1=S1*S1';
S2=rand(2,2);S2=S2*S2';
S3=rand(2,2);S3=S3*S3';
P=sysdiag(S1,S2,zeros(4,4));
Q=sysdiag(S1,zeros(2,2),S3,zeros(2,2));
X=rand(8,8);
P=X*P*X';Q=inv(X)'*Q*inv(X);
[T,siz]=equil1(P,Q);
P1=clean(T*P*T')
Q1=clean(inv(T)'*Q*inv(T))
 
  

See also

balreal, minreal, equil, hankelsv

Author

S. Steer 1987