bdschur
Block diagonalization with the Schur factorization.
Syntax
[T,B] = bdschur(A))
[T,B] = bdschur(A, CONDMAX)
Inputs
- A
- A square matrix in the real Schur form.
- CONDMAX
- The upper limit for the infinity norm of elementary sub-matrices of the individual transformations used for reduction.
Outputs
- T
- Transformation matrix.
- B
- Matrix as B = T \ A * T.
Example
Example including the bdschur function:
A = [ 1. -1. 1. 2. 3. 1. 2. 3.;
1. 1. 3. 4. 2. 3. 4. 2.;
0. 0. 1. -1. 1. 5. 4. 1.;
0. 0. 0. 1. -1. 3. 1. 2.;
0. 0. 0. 1. 1. 2. 3. -1.;
0. 0. 0. 0. 0. 1. 5. 1.;
0. 0. 0. 0. 0. 0. 0.99999999 -0.99999999;
0. 0. 0. 0. 0. 0. 0.99999999 0.99999999];
[T, B] = bdschur(A)
T = [Matrix] 8 x 8 Rows[1:8]
1.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 9.04534e-01 1.95685e-01
0.00000e+00 1.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 -3.01511e-01 9.75458e-01
0.00000e+00 -0.00000e+00 8.16497e-01 -2.77556e-17 -5.76811e-01 -1.56454e-02 -3.01511e-01 1.48246e-02
0.00000e+00 -0.00000e+00 -4.08248e-01 7.07107e-01 -5.76811e-01 -1.56454e-02 2.04391e-17 -5.33685e-02
0.00000e+00 -0.00000e+00 -4.08248e-01 -7.07107e-01 -5.76811e-01 -1.56454e-02 4.12647e-17 8.00528e-02
0.00000e+00 -0.00000e+00 0.00000e+00 -0.00000e+00 -2.76132e-02 9.80452e-01 7.15878e-18 2.66843e-02
0.00000e+00 -0.00000e+00 0.00000e+00 -0.00000e+00 3.32343e-02 -6.58864e-03 -1.29651e-18 -1.78170e-18
0.00000e+00 -0.00000e+00 0.00000e+00 -0.00000e+00 1.12423e-03 1.94773e-01 9.76197e-19 -2.28057e-18
B = [Matrix] 8 x 8
1.00000e+00 -1.00000e+00 -1.22474e+00 -7.07107e-01 -3.41864e+00 1.45772e+00 0.00000e+00 0.00000e+00
1.00000e+00 1.00000e+00 1.66533e-16 1.41421e+00 -5.13895e+00 3.16374e+00 0.00000e+00 0.00000e+00
0.00000e+00 0.00000e+00 1.00000e+00 -1.73205e+00 -1.63479e-03 2.07010e+00 0.00000e+00 0.00000e+00
0.00000e+00 0.00000e+00 5.77350e-01 1.00000e+00 7.51592e-01 1.13790e+00 0.00000e+00 0.00000e+00
0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 1.00000e+00 -5.86059e+00 0.00000e+00 0.00000e+00
0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 1.70631e-01 1.00000e+00 0.00000e+00 0.00000e+00
0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 1.00000e+00 -8.85017e-01
0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00 1.00000e+00
Comments
Based on the SLICOT library function mb03rd.