Developer Reference for Intel® oneAPI Math Kernel Library for C
?ptcon
Estimates the reciprocal of the condition number of a symmetric (Hermitian) positive-definite tridiagonal matrix.
Syntax
lapack_int LAPACKE_sptcon ( lapack_intn , const float*d , const float*e , floatanorm , float*rcond );
lapack_int LAPACKE_dptcon ( lapack_intn , const double*d , const double*e , doubleanorm , double*rcond );
lapack_int LAPACKE_cptcon ( lapack_intn , const float*d , const lapack_complex_float*e , floatanorm , float*rcond );
lapack_int LAPACKE_zptcon ( lapack_intn , const double*d , const lapack_complex_double*e , doubleanorm , double*rcond );
Include Files
mkl.h
Description
sptcon dptcon cptcon zptcon ptcon
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*L^{T} for real flavors and A = L*D*L^{H} for complex flavors or A = U^{T}*D*U for real flavors and A = U^{H}*D*U for complex flavors computed by ?pttrf (Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.) :
κ_{1}(A) = ||A||_{1} ||A^{-1}||_{1} (since A is symmetric or Hermitian, \(\kappa_{\infty}(A) = \kappa_{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} = max_{j}Σ_{i} |a_{ij}|
call ?pttrf (Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.) to compute the factorization of A .
Input Parameters
n
The order of the matrix A ; n ≥ 0.
d , work
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 (Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.) ;
e
Array, size (n -1) .
Contains off-diagonal elements of the unit bidiagonal factor U or L from the factorization computed by ?pttrf (Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.) .
anorm
The 1- norm of the original matrix A (see Description ) .
Output Parameters
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.
Return Values
This function returns a value info .
If info = 0 , the execution is successful.
If info = -i , parameter i had an illegal value.
LAPACK 95 Interface Notes
There exist FORTRAN 77 and FORTRAN 95 interfaces for this routine. See the Intel® oneMKL Fortran Developer Reference for details.
Application Notes
The computed rcond is never less than r (the reciprocal of the true condition number) and in practice is nearly always less than 10 r . 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.