pbcon#

Functions

void spbcon(
    const char*          uplo,
    const INT            n,
    const INT            kd,
    const f32*  restrict AB,
    const INT            ldab,
    const f32            anorm,
          f32*           rcond,
          f32*  restrict work,
          INT*  restrict iwork,
          INT*           info
);
void spbcon(const char *uplo, const INT n, const INT kd, const f32 *restrict AB, const INT ldab, const f32 anorm, f32 *rcond, f32 *restrict work, INT *restrict iwork, INT *info)#

SPBCON estimates the reciprocal of the condition number (in the 1-norm) of a real symmetric positive definite band matrix using the Cholesky factorization A = U**T*U or A = L*L**T computed by SPBTRF.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

Parameters

in
uplo

  • 'U': Upper triangular factor stored in AB

  • 'L': Lower triangular factor stored in AB

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

in
AB

Array of dimension (ldab, n). The triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T of the band matrix A, stored in the first kd+1 rows of the array. The j-th column of U or L is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = U(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = L(i,j) for j<=i<=min(n-1,j+kd).

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
anorm

The 1-norm (or infinity-norm) of the symmetric band matrix A.

out
rcond

The reciprocal of the condition number of the matrix A, computed as rcond=1/(anorm*ainvnm), where ainvnm is an estimate of the 1-norm of inv(A) computed in this routine.

out
work

Array of dimension 3*n.

out
iwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-i, the i-th argument had an illegal value

Functions

void dpbcon(
    const char*          uplo,
    const INT            n,
    const INT            kd,
    const f64*  restrict AB,
    const INT            ldab,
    const f64            anorm,
          f64*           rcond,
          f64*  restrict work,
          INT*  restrict iwork,
          INT*           info
);
void dpbcon(const char *uplo, const INT n, const INT kd, const f64 *restrict AB, const INT ldab, const f64 anorm, f64 *rcond, f64 *restrict work, INT *restrict iwork, INT *info)#

DPBCON estimates the reciprocal of the condition number (in the 1-norm) of a real symmetric positive definite band matrix using the Cholesky factorization A = U**T*U or A = L*L**T computed by DPBTRF.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

Parameters

in
uplo

  • 'U': Upper triangular factor stored in AB

  • 'L': Lower triangular factor stored in AB

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

in
AB

Array of dimension (ldab, n). The triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T of the band matrix A, stored in the first kd+1 rows of the array. The j-th column of U or L is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = U(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = L(i,j) for j<=i<=min(n-1,j+kd).

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
anorm

The 1-norm (or infinity-norm) of the symmetric band matrix A.

out
rcond

The reciprocal of the condition number of the matrix A, computed as rcond=1/(anorm*ainvnm), where ainvnm is an estimate of the 1-norm of inv(A) computed in this routine.

out
work

Array of dimension 3*n.

out
iwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-i, the i-th argument had an illegal value

Functions

void cpbcon(
    const char*          uplo,
    const INT            n,
    const INT            kd,
    const c64*  restrict AB,
    const INT            ldab,
    const f32            anorm,
          f32*           rcond,
          c64*  restrict work,
          f32*  restrict rwork,
          INT*           info
);
void cpbcon(const char *uplo, const INT n, const INT kd, const c64 *restrict AB, const INT ldab, const f32 anorm, f32 *rcond, c64 *restrict work, f32 *restrict rwork, INT *info)#

CPBCON estimates the reciprocal of the condition number (in the 1-norm) of a complex Hermitian positive definite band matrix using the Cholesky factorization A = U**H*U or A = L*L**H computed by CPBTRF.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

Parameters

in
uplo

  • 'U': Upper triangular factor stored in AB

  • 'L': Lower triangular factor stored in AB

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

in
AB

Array of dimension (ldab, n). The triangular factor U or L from the Cholesky factorization A = U**H*U or A = L*L**H of the band matrix A, stored in the first kd+1 rows of the array. The j-th column of U or L is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = U(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = L(i,j) for j<=i<=min(n-1,j+kd).

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
anorm

The 1-norm (or infinity-norm) of the Hermitian band matrix A.

out
rcond

The reciprocal of the condition number of the matrix A, computed as rcond=1/(anorm*ainvnm), where ainvnm is an estimate of the 1-norm of inv(A) computed in this routine.

out
work

Complex array of dimension 2*n.

out
rwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-i, the i-th argument had an illegal value

Functions

void zpbcon(
    const char*          uplo,
    const INT            n,
    const INT            kd,
    const c128* restrict AB,
    const INT            ldab,
    const f64            anorm,
          f64*           rcond,
          c128* restrict work,
          f64*  restrict rwork,
          INT*           info
);
void zpbcon(const char *uplo, const INT n, const INT kd, const c128 *restrict AB, const INT ldab, const f64 anorm, f64 *rcond, c128 *restrict work, f64 *restrict rwork, INT *info)#

ZPBCON estimates the reciprocal of the condition number (in the 1-norm) of a complex Hermitian positive definite band matrix using the Cholesky factorization A = U**H*U or A = L*L**H computed by ZPBTRF.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).

Parameters

in
uplo

  • 'U': Upper triangular factor stored in AB

  • 'L': Lower triangular factor stored in AB

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

in
AB

Array of dimension (ldab, n). The triangular factor U or L from the Cholesky factorization A = U**H*U or A = L*L**H of the band matrix A, stored in the first kd+1 rows of the array. The j-th column of U or L is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = U(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = L(i,j) for j<=i<=min(n-1,j+kd).

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
anorm

The 1-norm (or infinity-norm) of the Hermitian band matrix A.

out
rcond

The reciprocal of the condition number of the matrix A, computed as rcond=1/(anorm*ainvnm), where ainvnm is an estimate of the 1-norm of inv(A) computed in this routine.

out
work

Complex array of dimension 2*n.

out
rwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-i, the i-th argument had an illegal value