XLPack 7.0
XLPack Numerical Library (C API) Reference Manual
Loading...
Searching...
No Matches

◆ zptcon()

void zptcon ( int  n,
double  d[],
doublecomplex  e[],
double  anorm,
double *  rcond,
double  rwork[],
int *  info 
)

Condition number of a Hermitian positive definite tridiagonal matrix

Purpose
This routine computes the reciprocal of the condition number (in the 1-norm) of a Hermitian positive definite tridiagonal matrix using the factorization A = L*D*L^H or A = U^H*D*U computed by zpttrf.

Norm(inv(A)) is computed by a direct method, and the reciprocal of the condition number is computed as
rcond = 1 / (anorm * norm(inv(A))).
Parameters
[in]nOrder of the matrix A. (n >= 0) (If n = 0, returns rcond = 1)
[in]d[]Array d[ld] (ld >= n)
n diagonal elements of the diagonal matrix D from the factorization of A, as computed by zpttrf.
[in]e[]Array e[le] (le >= n - 1)
n-1 sub-diagonal elements of the unit bidiagonal factor U or L from the factorization of A, as computed by zpttrf.
[in]anormThe 1-norm of the original matrix A.
[out]rcondThe reciprocal of the condition number of the matrix A, computed as rcond = 1/(anorm * ainvnm), where ainvnm is the 1-norm of inv(A) computed in this routine.
[out]rwork[]Array rwork[lrwork] (lrwork >= n)
Work array.
[out]info= 0: Successful exit
= -1: The argument n had an illegal value (n < 0)
= -4: The argument anorm had an illegal value (anorm < 0)
Reference
LAPACK