Visible to Intel only — GUID: GUID-6F3C30BC-C2D3-4ECC-B0A7-DD9754A7A62D
Visible to Intel only — GUID: GUID-6F3C30BC-C2D3-4ECC-B0A7-DD9754A7A62D
?pbcon
Estimates the reciprocal of the condition number of a symmetric (Hermitian) positive-definite band matrix.
lapack_int LAPACKE_spbcon( int matrix_layout, char uplo, lapack_int n, lapack_int kd, const float* ab, lapack_int ldab, float anorm, float* rcond );
lapack_int LAPACKE_dpbcon( int matrix_layout, char uplo, lapack_int n, lapack_int kd, const double* ab, lapack_int ldab, double anorm, double* rcond );
lapack_int LAPACKE_cpbcon( int matrix_layout, char uplo, lapack_int n, lapack_int kd, const lapack_complex_float* ab, lapack_int ldab, float anorm, float* rcond );
lapack_int LAPACKE_zpbcon( int matrix_layout, char uplo, lapack_int n, lapack_int kd, const lapack_complex_double* ab, lapack_int ldab, double anorm, double* rcond );
- mkl.h
The routine estimates the reciprocal of the condition number of a symmetric (Hermitian) positive-definite band matrix A:
κ1(A) = ||A||1 ||A-1||1 (since A is symmetric or Hermitian, κ∞(A) = κ1(A)).
An estimate is obtained for ||A-1||, and the reciprocal of the condition number is computed as rcond = 1 / (||A|| ||A-1||).
Before calling this routine:
compute anorm (either ||A||1 = maxjΣi |aij| or ||A||∞ = maxiΣj |aij|)
call ?pbtrf to compute the Cholesky factorization of A.
matrix_layout |
Specifies whether matrix storage layout is row major (LAPACK_ROW_MAJOR) or column major (LAPACK_COL_MAJOR). |
uplo |
Must be 'U' or 'L'. Indicates how the input matrix A has been factored: If uplo = 'U', A is factored as A = UT*U for real flavors or A = UH*U for complex flavors, and U is stored. If uplo = 'L', A is factored as A = L*LT for real flavors or A = L*LH for complex flavors, and L is stored. |
n |
The order of the matrix A; n≥ 0. |
kd |
The number of superdiagonals or subdiagonals in the matrix A; kd≥ 0. |
ldab |
The leading dimension of the array ab. (ldab≥kd +1). |
ab |
The array ab of size max(1, ldab*n) contains the factored matrix A in band form, as returned by ?pbtrf. |
anorm |
The 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.