Visible to Intel only — GUID: GUID-A5E155AF-E997-46CD-95BE-F44EDA90B4CA
Visible to Intel only — GUID: GUID-A5E155AF-E997-46CD-95BE-F44EDA90B4CA
?ptcon
Estimates the reciprocal of the condition number of a symmetric (Hermitian) positive-definite tridiagonal matrix.
lapack_int LAPACKE_sptcon( lapack_int n, const float* d, const float* e, float anorm, float* rcond );
lapack_int LAPACKE_dptcon( lapack_int n, const double* d, const double* e, double anorm, double* rcond );
lapack_int LAPACKE_cptcon( lapack_int n, const float* d, const lapack_complex_float* e, float anorm, float* rcond );
lapack_int LAPACKE_zptcon( lapack_int n, const double* d, const lapack_complex_double* e, double anorm, double* rcond );
- mkl.h
The routine computes the reciprocal of the condition number (in the 1-norm) of a real symmetric or complex Hermitian positive-definite tridiagonal matrix using the factorization A = L*D*LT for real flavors and A = L*D*LH for complex flavors or A = UT*D*U for real flavors and A = UH*D*U for complex flavors computed by ?pttrf :
κ1(A) = ||A||1 ||A-1||1 (since A is symmetric or Hermitian, κ∞(A) = κ1(A)).
The norm ||A-1|| is computed by a direct method, and the reciprocal of the condition number is computed as rcond = 1 / (||A|| ||A-1||).
Before calling this routine:
compute anorm as ||A||1 = maxjΣi |aij|
call ?pttrf to compute the factorization of A.
n |
The order of the matrix A; n≥ 0. |
d |
Arrays, dimension (n). The array d contains the n diagonal elements of the diagonal matrix D from the factorization of A, as computed by ?pttrf ; |
e |
Array, size (n -1). Contains off-diagonal elements of the unit bidiagonal factor U or L from the factorization computed by ?pttrf . |
anorm |
The 1- norm of the original matrix A (see Description). |
rcond |
An estimate of the reciprocal of the condition number. The routine sets rcond =0 if the estimate underflows; in this case the matrix is singular (to working precision). However, anytime rcond is small compared to 1.0, for the working precision, the matrix may be poorly conditioned or even singular. |
This function returns a value info.
If info = 0, the execution is successful.
If info = -i, parameter i had an illegal value.
The computed rcond is never less than r (the reciprocal of the true condition number) and in practice is nearly always less than 10r. A call to this routine involves solving a number of systems of linear equations A*x = b; the number is usually 4 or 5 and never more than 11. Each solution requires approximately 4*n(kd + 1) floating-point operations for real flavors and 16*n(kd + 1) for complex flavors.