PFTRI - 5.2 English - 68552

AOCL API Guide (68552)

Document ID
68552
Release Date
2025-12-29
Version
5.2 English
template<typename T>
void pftri(char *transr, char *uplo, integer *n, T *a, integer *info)#

PFTRI computes the inverse of a real (symmetric) positive definite matrix.

Purpose:

    PFTRI 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 PFTRF.
Parameters:
  • TRANSR[in]

    TRANSR is CHARACTER*1

    = ‘N’: The Normal TRANSR of RFP A is stored;

    = ‘T’: The Transpose TRANSR of RFP A is stored.
  • UPLO[in]

    UPLO is CHARACTER*1

    = ‘U’: Upper triangle of A is stored;

    = ‘L’: Lower triangle of A is stored.
  • N[in]

    N is INTEGER

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

  • A[inout]

    A is REAL array, dimension ( N*(N+1)/2)

    On entry, the symmetric matrix A in RFP format. RFP format is described by TRANSR, UPLO, and N as follows: If TRANSR = ‘N’ then RFP A is (0:N,0:k-1) when N is even; k=N/2. RFP A is (0:N-1,0:k) when N is odd; k=N/2. IF TRANSR = ‘T’ then RFP is the transpose of RFP A as defined when TRANSR = ‘N’. The contents of RFP A are defined by UPLO as follows: If UPLO = ‘U’ the RFP A contains the nt elements of upper packed A. If UPLO = ‘L’ the RFP A contains the elements of lower packed A. The LDA of RFP A is (N+1)/2 when TRANSR = ‘T’. When TRANSR is ‘N’ the LDA is N+1 when N is even and N is odd. See the Note below for more details.

    On exit, the symmetric inverse of the original matrix, in the same storage format.
  • INFO[out]

    INFO is INTEGER

    = 0: successful exit

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

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