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

◆ ztpcon()

void ztpcon ( char  norm,
char  uplo,
char  diag,
int  n,
doublecomplex  ap[],
double *  rcond,
doublecomplex  work[],
double  rwork[],
int *  info 
)

Condition number of a complex triangular matrix in packed form

Purpose
This routine estimates the reciprocal of the condition number of a packed triangular matrix A, in either the 1-norm or the infinity-norm.

The norm of A is computed and an estimate is obtained for norm(inv(A)), then the reciprocal of the condition number is computed as
rcond = 1 / (norm(A) * norm(inv(A))).
Parameters
[in]normSpecifies whether the 1-norm condition number or the infinity-norm condition number is required:
= '1' or 'O': 1-norm.
= 'I': Infinity-norm.
[in]uplo= 'U': A is upper triangular.
= 'L': A is lower triangular.
[in]diag= 'N': A is non-unit triangular.
= 'U': A is unit triangular. (Diagonal elements of ap[] are not referenced and are assumed to be 1)
[in]nOrder of the matrix A. (n >= 0) (If n = 0, returns rcond = 1)
[in]ap[]Array ap[lap] (lap >= n(n + 1)/2)
n x n triangular matrix A in packed symmetric matrix form. Upper or lower part is to be stored in accordance with uplo.
[out]rcondThe reciprocal of the condition number of the matrix A, computed as rcond = 1/(norm(A) * norm(inv(A))).
[out]work[]Array work[lwork] (lwork >= 2*n)
Work array.
[out]rwork[]Array rwork[lrwork] (lrwork >= n)
Work array.
[out]info= 0: Successful exit
= -1: The argument norm had an illegal value (norm != '1', 'O' nor 'I')
= -2: The argument uplo had an illegal value (uplo != 'U' nor 'L')
= -3: The argument diag had an illegal value (diag != 'N' nor 'U')
= -4: The argument n had an illegal value (n < 0)
Reference
LAPACK