The generalized (or quotient) singular value decomposition of an m-by-n matrix A and a p-by-n matrix B is described in section 2.2.5. The routines described in this section, are used to compute the decomposition. The computation proceeds in the following two stages:
where and
are nonsingular upper triangular, and
is upper triangular.
If m - k - 1 < 0, the bottom zero block of
does not appear,
and
is upper trapezoidal.
,
and
are
orthogonal matrices (or unitary matrices if A and B are complex).
l is the rank of B, and
k + l is the rank of
.
Here ,
and
are orthogonal (or unitary) matrices,
C and S are both real
nonnegative diagonal matrices satisfying
, S is nonsingular,
and R is upper triangular and nonsingular.
-------------------------------------------------------- Single precision Double precision Operation real complex real complex -------------------------------------------------------- triangular reduction SGGSVP CGGSVP DGGSVP ZGGSVP of A and B -------------------------------------------------------- GSVD of a pair of STGSJA CTGSJA DTGSJA ZTGSJA triangular matrices --------------------------------------------------------Table 2.16: Computational routines for the generalized singular value decomposition
The reduction to triangular form, performed by xGGSVP, uses QR decomposition with column pivoting for numerical rank determination. See [12] for details.
The generalized singular value decomposition of two triangular matrices, performed by xTGSJA, is done using a Jacobi-like method as described in [10][62].