pptri#

Functions

void spptri(
    const char*          uplo,
    const INT            n,
          f32*  restrict AP,
          INT*           info
);
void spptri(const char *uplo, const INT n, f32 *restrict AP, INT *info)#

SPPTRI computes the inverse of a real symmetric positive definite matrix A using the Cholesky factorization A = U**T*U or A = L*L**T computed by SPPTRF.

Parameters

in
uplo

  • 'U': Upper triangular factor is stored in AP

  • 'L': Lower triangular factor is stored in AP

in
n

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

inout
AP

Array of dimension n*(n+1)/2. On entry, the triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T, packed columnwise as a linear array. The j-th column of U or L is stored in the array AP as follows: if uplo='U', AP[i + j*(j+1)/2] = U(i,j) for 0<=i<=j; if uplo='L', AP[i + j*(2*n-j-1)/2] = L(i,j) for j<=i<=n-1. On exit, the upper or lower triangle of the (symmetric) inverse of A, overwriting the input factor U or L.

out
info

  • info=0: successful exit

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

  • info>0: if info=i, the (i,i) element of the factor U or L is zero, and the inverse could not be computed.

Functions

void dpptri(
    const char*          uplo,
    const INT            n,
          f64*  restrict AP,
          INT*           info
);
void dpptri(const char *uplo, const INT n, f64 *restrict AP, INT *info)#

DPPTRI computes the inverse of a real symmetric positive definite matrix A using the Cholesky factorization A = U**T*U or A = L*L**T computed by DPPTRF.

Parameters

in
uplo

  • 'U': Upper triangular factor is stored in AP

  • 'L': Lower triangular factor is stored in AP

in
n

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

inout
AP

Array of dimension n*(n+1)/2. On entry, the triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T, packed columnwise as a linear array. The j-th column of U or L is stored in the array AP as follows: if uplo='U', AP[i + j*(j+1)/2] = U(i,j) for 0<=i<=j; if uplo='L', AP[i + j*(2*n-j-1)/2] = L(i,j) for j<=i<=n-1. On exit, the upper or lower triangle of the (symmetric) inverse of A, overwriting the input factor U or L.

out
info

  • info=0: successful exit

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

  • info>0: if info=i, the (i,i) element of the factor U or L is zero, and the inverse could not be computed.

Functions

void cpptri(
    const char*          uplo,
    const INT            n,
          c64*  restrict AP,
          INT*           info
);
void cpptri(const char *uplo, const INT n, c64 *restrict AP, INT *info)#

CPPTRI computes the inverse of a complex Hermitian positive definite matrix A using the Cholesky factorization A = U**H*U or A = L*L**H computed by CPPTRF.

Parameters

in
uplo

  • 'U': Upper triangular factor is stored in AP

  • 'L': Lower triangular factor is stored in AP

in
n

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

inout
AP

Array of dimension n*(n+1)/2. On entry, the triangular factor U or L from the Cholesky factorization A = U**H*U or A = L*L**H, packed columnwise as a linear array. The j-th column of U or L is stored in the array AP as follows: if uplo='U', AP[i + j*(j+1)/2] = U(i,j) for 0<=i<=j; if uplo='L', AP[i + j*(2*n-j-1)/2] = L(i,j) for j<=i<=n-1. On exit, the upper or lower triangle of the (Hermitian) inverse of A, overwriting the input factor U or L.

out
info

  • info=0: successful exit

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

  • info>0: if info=i, the (i,i) element of the factor U or L is zero, and the inverse could not be computed.

Functions

void zpptri(
    const char*          uplo,
    const INT            n,
          c128* restrict AP,
          INT*           info
);
void zpptri(const char *uplo, const INT n, c128 *restrict AP, INT *info)#

ZPPTRI computes the inverse of a complex Hermitian positive definite matrix A using the Cholesky factorization A = U**H*U or A = L*L**H computed by ZPPTRF.

Parameters

in
uplo

  • 'U': Upper triangular factor is stored in AP

  • 'L': Lower triangular factor is stored in AP

in
n

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

inout
AP

Array of dimension n*(n+1)/2. On entry, the triangular factor U or L from the Cholesky factorization A = U**H*U or A = L*L**H, packed columnwise as a linear array. The j-th column of U or L is stored in the array AP as follows: if uplo='U', AP[i + j*(j+1)/2] = U(i,j) for 0<=i<=j; if uplo='L', AP[i + j*(2*n-j-1)/2] = L(i,j) for j<=i<=n-1. On exit, the upper or lower triangle of the (Hermitian) inverse of A, overwriting the input factor U or L.

out
info

  • info=0: successful exit

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

  • info>0: if info=i, the (i,i) element of the factor U or L is zero, and the inverse could not be computed.