Solves a system of linear equations with a Cholesky-factored symmetric (Hermitian) positive-definite matrix using the Rectangular Full Packed (RFP) format.
FORTRAN 77:
call spftrs( transr, uplo, n, nrhs, a, b, ldb, info )
call dpftrs( transr, uplo, n, nrhs, a, b, ldb, info )
call cpftrs( transr, uplo, n, nrhs, a, b, ldb, info )
call zpftrs( transr, uplo, n, nrhs, a, b, ldb, info )
C:
lapack_int LAPACKE_<?>pftrs( int matrix_order, char transr, char uplo, lapack_int n, lapack_int nrhs, const <datatype>* a, <datatype>* b, lapack_int ldb );
The routine solves a system of linear equations A*X = B with a symmetric positive-definite or, for complex data, Hermitian positive-definite matrix A using the Cholesky factorization of A:
A = UT*U for real data, A = UH*U for complex data | if uplo='U' |
A = L*LT for real data, A = L*LH for complex data | if uplo='L' |
computed by ?pftrf. L stands for a lower triangular matrix and U - for an upper triangular matrix.
The matrix A is in the Rectangular Full Packed (RFP) format. For the description of the RFP format, see Matrix Storage Schemes.
The data types are given for the Fortran interface. A <datatype> placeholder, if present, is used for the C interface data types in the C interface section above. See C Interface Conventions for the C interface principal conventions and type definitions.
transr |
CHARACTER*1. Must be 'N', 'T' (for real data) or 'C' (for complex data). If transr = 'N', the Normal transr of RFP A is stored. If transr = 'T', the Transpose transr of RFP A is stored. If transr = 'C', the Conjugate-Transpose transr of RFP A is stored. |
uplo |
CHARACTER*1. Must be 'U' or 'L'. Indicates whether the upper or lower triangular part of the RFP matrix A is stored: If uplo = 'U', the array a stores the upper triangular part of the matrix A. If uplo = 'L', the array a stores the lower triangular part of the matrix A. |
n |
INTEGER. The order of the matrix A; n ≥ 0. |
nrhs |
INTEGER. The number of right-hand sides, that is, the number of columns of the matrix B; nrhs ≥ 0. |
a, b |
REAL for spftrs DOUBLE PRECISION for dpftrs COMPLEX for cpftrs DOUBLE COMPLEX for zpftrs. Arrays: a(n*(n+1)/2), b(ldb,nrhs). The array a contains the matrix A in the RFP format. The array b contains the matrix B whose columns are the right-hand sides for the systems of equations. |
ldb |
INTEGER. The leading dimension of b; ldb ≥ max(1, n). |
b |
The solution matrix X. |
info |
INTEGER. If info=0, the execution is successful. If info = -i, the i-th parameter had an illegal value. |