rsf2csf

Converts a real Schur form into the complex, fully triangular Schur form.

Category: Mathematics > Linear Algebra

Syntax

[U, T] = rsf2csf(U, T)

Takes the real Schur factors and returns complex factors with T upper triangular.

Description

The real Schur form of a real matrix may contain 2-by-2 blocks on the diagonal, one for each pair of complex-conjugate eigenvalues. rsf2csf splits those blocks with complex rotations so that T becomes strictly upper triangular and its diagonal lists the eigenvalues directly.

The pair still satisfies A = U*T*U', now with complex U.

Input arguments

U, T
Real orthogonal U and real quasi-triangular T, as returned by schur(A).

Output arguments

U, T
Unitary U and upper-triangular T with the same product U*T*U'.

Example

A rotation matrix

A = [0 1; -1 0];
[U, T] = schur(A);
[U2, T2] = rsf2csf(U, T);
diag(T2).'
norm(U2*T2*U2' - A) < 1e-12
Output
ans = 1×2 complex

   0.0000 + 1.0000i   0.0000 - 1.0000i
ans = logical
   1

See also

schur eig ordschur