Purpose
To compute an LU factorization of a complex n-by-n upper Hessenberg matrix H using partial pivoting with row interchanges.Specification
SUBROUTINE MB02SZ( N, H, LDH, IPIV, INFO )
C .. Scalar Arguments ..
INTEGER INFO, LDH, N
C .. Array Arguments ..
INTEGER IPIV(*)
COMPLEX*16 H(LDH,*)
Arguments
Input/Output Parameters
N (input) INTEGER
The order of the matrix H. N >= 0.
H (input/output) COMPLEX*16 array, dimension (LDH,N)
On entry, the n-by-n upper Hessenberg matrix to be
factored.
On exit, the factors L and U from the factorization
H = P*L*U; the unit diagonal elements of L are not stored,
and L is lower bidiagonal.
LDH INTEGER
The leading dimension of the array H. LDH >= max(1,N).
IPIV (output) INTEGER array, dimension (N)
The pivot indices; for 1 <= i <= N, row i of the matrix
was interchanged with row IPIV(i).
Error Indicator
INFO INTEGER
= 0: successful exit;
< 0: if INFO = -i, the i-th argument had an illegal
value;
> 0: if INFO = i, U(i,i) is exactly zero. The
factorization has been completed, but the factor U
is exactly singular, and division by zero will occur
if it is used to solve a system of equations.
Method
The factorization has the form
H = P * L * U
where P is a permutation matrix, L is lower triangular with unit
diagonal elements (and one nonzero subdiagonal), and U is upper
triangular.
This is the right-looking Level 2 BLAS version of the algorithm
(adapted after ZGETF2).
References
-Numerical Aspects
2 The algorithm requires 0( N ) complex operations.Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None