S = 0 0 -31.2179 69.7186 -142.6727 0 0 0 15.8532 -42.1039 0 0 0 -15.5639 -3.4712 0 0 0 0 13.5979 0 0 0 0 0 T = 0 -21.5942 -22.1660 44.5153 -110.9818 0 0 -25.0581 19.3190 -43.8905 0 0 0 -7.7820 9.2041 0 0 0 0 0 0 0 0 0 0 P = 0.2697 0.4520 0.8072 0.0226 -0.2660 0.4045 0.5101 -0.4985 0.5400 -0.1900 0.6742 -0.3818 0.1705 0.2136 0.5701 0.1348 0.5620 -0.1771 -0.6188 0.5017 0.5394 -0.2718 -0.1986 -0.5285 -0.5625 Q = -0.4044 0.1510 0.4636 0.7253 -0.2697 0.6985 -0.4097 0.1200 0.1975 -0.5394 0.1470 0.6896 -0.5633 0.1481 -0.4045 -0.4044 -0.0310 0.1859 -0.5886 -0.6742 -0.4044 -0.5769 -0.6471 0.2582 -0.1348 kstr = 2 1 0 -1 2 0 -1 1 -1 1 1 0 -1 1 0 -1 1 -1
The first part of kstr (all the columns to the left of the first -1) shall be interpreted as follows:
The second part of kstr contains the corresponding information
about and
blocks and the third contains information
about the size of the regular part.
For this example we see that the computed GUPTRI form has the
expected Kronecker structure, including one
block
(
), one
block (
),
one
block (
),
one
block (
),
and finally a
regular part corresponding
to the finite nonzero eigenvalue 2 (
).
The
block corresponds to
and
having a common column
null space (both
and
have a first column with zero entries).
Similarly, the
block corresponds to
and
having a common
row null space (both
and
have a last row with zero entries).
Since
and
are the only singular blocks,
is of size
and
is of size
.
The remaining Kronecker structure in the GUPTRI form is
contained in
and
, i.e.,
rows 1 to 4 and columns 2 to 5 of
and
:
,
,
and finally
.
The computed transformation matrices and
are orthogonal
to machine precision accuracy.
Moreover,
By setting
and making the call (with the
default values on EPSU and GAP)
S = -2.9227e-15 0 3.1218e+01 6.9719e+01 -1.4267e+02 2.0749e-15 -3.0175e-15 1.7377e-14 1.5853e+01 -4.2104e+01 -5.4031e-15 -1.7747e-15 8.8818e-16 -1.5564e+01 -3.4712e+00 1.6694e-15 -4.4157e-15 2.2204e-15 0 1.3598e+01 -8.3206e-16 3.1071e-16 1.9984e-15 -2.2204e-16 0 T = -6.9809e-31 2.1594e+01 2.2166e+01 4.4515e+01 -1.1098e+02 3.4328e-31 0 2.5058e+01 1.9319e+01 -4.3890e+01 1.7764e-15 0 0 -7.7820e+00 9.2041e+00 -5.5511e-16 0 0 0 -7.5221e-15 0 0 0 0 3.1465e-15The tiny nonzero elements in the lower triangular parts of
We end the discussion by exposing our seemingly harmless
example to the MATLAB function eig.
The call [V,D] = eig(A,B) is supposed to compute
a diagonal eigenvalue matrix
and a full matrix
whose
columns are the corresponding eigenvectors so that
.
MATLAB computes a
with the diagonal entries
-1.8351e+16 2.0000e+00 7.2695e-01 - 4.1359e-25i -6.2535e-16 + 2.4399e-08i -5.9077e-16 - 2.4399e-08iand an eigenvector matrix