Developer Reference for Intel® oneAPI Math Kernel Library for C
?pftrf
Computes the Cholesky factorization of a symmetric (Hermitian) positive-definite matrix using the Rectangular Full Packed (RFP) format .
Syntax
lapack_int LAPACKE_spftrf(int matrix_layout, char transr, char uplo, lapack_int n,
float *a);
lapack_int LAPACKE_dpftrf(int matrix_layout, char transr, char uplo, lapack_int n,
double *a);
lapack_int LAPACKE_cpftrf(int matrix_layout, char transr, char uplo, lapack_int n,
lapack_complex_float *a);
lapack_int LAPACKE_zpftrf(int matrix_layout, char transr, char uplo, lapack_int n,
lapack_complex_double *a);
Include Files
mkl.h
Description
The routine forms the Cholesky factorization of a symmetric positive-definite or, for complex data, a Hermitian positive-definite matrix A :
\(A = U^{T}*U\) for real data, \(A = U^{H}*U\) for complex data |
if uplo='U' |
\(A = L*L^{T}\) for real data, \(A = L*L^{H}\) for complex data |
if uplo='L' |
where \(L\) is a lower triangular matrix and \(U\) is upper triangular.
The matrix \(A\) is in the Rectangular Full Packed (RFP) format. For the description of the RFP format, see Matrix Storage Schemes .
This is the block version of the algorithm, calling Level 3 BLAS.
Input Parameters
matrix_layout
Specifies whether matrix storage layout is row major ( LAPACK_ROW_MAJOR ) or column major ( LAPACK_COL_MAJOR ).
transr
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
Must be ‘U’ or ‘L’ .
Indicates whether the upper or lower triangular part of 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
-
Specifies the order of the matrix A . The value of n must be at least zero.
a
Array, size (n*(n+1)/2) . The array a contains the matrix A in the RFP format.
Output Parameters
a
a is overwritten by the Cholesky factor U or L , as specified by uplo and trans .
Return Values
This function returns a value info .
If info=0 , the execution is successful.
If info = -i , parameter i had an illegal value.
If info = i , the leading minor of order i (and therefore the matrix A itself) is not positive-definite, and the factorization could not be completed. This may indicate an error in forming the matrix A .