Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

?pftrs

Solves a system of linear equations with a Cholesky-factored symmetric (Hermitian) positive-definite coefficient matrix using the Rectangular Full Packed (RFP) format.

Syntax

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 )

Include Files

  • mkl.fi, lapack.f90

Description

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'

Before calling ?pftrs, you must call ?pftrf to compute the Cholesky factorization of A. 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.

Input Parameters

transr

CHARACTER*1. Must be 'N', 'T' (for real data) or 'C' (for complex data).

If transr = 'N', the untransposed factor of Ais stored in RFP format.

If transr = 'T', the transposed factor of Ais stored in RFP format.

If transr = 'C', the conjugate-transposed factor of Ais stored in RFP format.

uplo

CHARACTER*1. Must be 'U' or 'L'.

Indicates how the input matrix A has been factored:

If uplo = 'U', U is stored, where A = UT*U for real data, A = UH*U for complex data.

If uplo = 'L', L is stored, where A = L*LT for real data, A = L*LH for complex data

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, in the RFP format, the factor U or L obtained by factorization of matrix A.

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).

Output Parameters

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.