LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
|
subroutine slasv2 | ( | real | f, |
real | g, | ||
real | h, | ||
real | ssmin, | ||
real | ssmax, | ||
real | snr, | ||
real | csr, | ||
real | snl, | ||
real | csl | ||
) |
SLASV2 computes the singular value decomposition of a 2-by-2 triangular matrix.
Download SLASV2 + dependencies [TGZ] [ZIP] [TXT]
SLASV2 computes the singular value decomposition of a 2-by-2 triangular matrix [ F G ] [ 0 H ]. On return, abs(SSMAX) is the larger singular value, abs(SSMIN) is the smaller singular value, and (CSL,SNL) and (CSR,SNR) are the left and right singular vectors for abs(SSMAX), giving the decomposition [ CSL SNL ] [ F G ] [ CSR -SNR ] = [ SSMAX 0 ] [-SNL CSL ] [ 0 H ] [ SNR CSR ] [ 0 SSMIN ].
[in] | F | F is REAL The (1,1) element of the 2-by-2 matrix. |
[in] | G | G is REAL The (1,2) element of the 2-by-2 matrix. |
[in] | H | H is REAL The (2,2) element of the 2-by-2 matrix. |
[out] | SSMIN | SSMIN is REAL abs(SSMIN) is the smaller singular value. |
[out] | SSMAX | SSMAX is REAL abs(SSMAX) is the larger singular value. |
[out] | SNL | SNL is REAL |
[out] | CSL | CSL is REAL The vector (CSL, SNL) is a unit left singular vector for the singular value abs(SSMAX). |
[out] | SNR | SNR is REAL |
[out] | CSR | CSR is REAL The vector (CSR, SNR) is a unit right singular vector for the singular value abs(SSMAX). |
Any input parameter may be aliased with any output parameter. Barring over/underflow and assuming a guard digit in subtraction, all output quantities are correct to within a few units in the last place (ulps). In IEEE arithmetic, the code works correctly if one matrix element is infinite. Overflow will not occur unless the largest singular value itself overflows or is within a few ulps of overflow. Underflow is harmless if underflow is gradual. Otherwise, results may correspond to a matrix modified by perturbations of size near the underflow threshold.
Definition at line 135 of file slasv2.f.