MATLAB Function Reference |
Reorder eigenvalues in Schur factorization
Syntax
Description
[US,TS] = ordschur(U,T,select)
reorders the Schur factorization X = U*T*U'
produced by the schur
function and returns the reordered Schur matrix TS
and the cumulative orthogonal transformation US
such that X = US*TS*US'
. In this reordering, the selected cluster of eigenvalues appears in the leading (upper left) diagonal blocks of the quasitriangular Schur matrix TS
, and the corresponding invariant subspace is spanned by the leading columns of US
. The logical vector select
specifies the selected cluster as E(select)
where E
is the vector of eigenvalues as they appear along T
's diagonal.
Note
To extract E from T , use E = ordeig(T) , instead of eig . This ensures that the eigenvalues in E occur in the same order as they appear on the diagonal of TS .
|
[US,TS] = ordschur(U,T,keyword)
sets the selected cluster to include all eigenvalues in one of the following regions:
keyword |
Selected Region |
'lhp' |
Left-half plane (real(E) < 0 ) |
'rhp' |
Right-half plane (real(E) > 0 ) |
'udi' |
Interior of unit disk (abs(E) < 1 ) |
'udo' |
Exterior of unit disk (abs(E) > 1 ) |
[US,TS] = ordschur(U,T,clusters)
reorders multiple clusters at once. Given a vector clusters
of cluster indices, commensurate with E = ordeig(T)
, and such that all eigenvalues with the same clusters
value form one cluster, ordschur
sorts the specified clusters in descending order along the diagonal of TS
, the cluster with highest index appearing in the upper left corner.
Input of Type Double
If U
and T
have type double
, ordschur
uses the LAPACK routines listed in the following table to compute the Schur form of a matrix:
Matrix Type |
Routine |
Real |
DTRSEN |
Complex |
ZTRSEN |
Input of Type Single
If U
and T
have type single
, ordschur
uses the LAPACK routines listed in the following table to compute the Schur form of a matrix:
Matrix Type |
Routine |
Real |
STRSEN |
Complex |
CTRSEN |
See Also
ordqz | orient |
© 1994-2005 The MathWorks, Inc.