Developer Reference for Intel® oneAPI Math Kernel Library for C
p?potf2
Computes the Cholesky factorization of a symmetric/Hermitian positive definite matrix (local unblocked algorithm).
Syntax
voidpspotf2 ( char*uplo , MKL_INT*n , float*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
voidpdpotf2 ( char*uplo , MKL_INT*n , double*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
voidpcpotf2 ( char*uplo , MKL_INT*n , MKL_Complex8*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
voidpzpotf2 ( char*uplo , MKL_INT*n , MKL_Complex16*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
Include Files
mkl_scalapack.h
Description
pspotf2 pdpotf2 pcpotf2 pzpotf2 The p?potf2 routine function computes the Cholesky factorization of a real symmetric or complex Hermitian positive definite distributed matrix sub (A)=A(ia:ia+n-1, ja:ja+n-1) .
The factorization has the form
sub( A ) = U' * U , if uplo = ‘U’ , or sub( A ) = L * L' , if uplo = ‘L’ ,
where U is an upper triangular matrix, L is lower triangular. X' denotes transpose (conjugate transpose) of X .
Input Parameters
uplo
(global)
Specifies whether the upper or lower triangular part of the symmetric/Hermitian matrix A is stored. = ‘U’ : upper triangle of sub ( A ) is stored; = ‘L’ : lower triangle of sub ( A ) is stored.
n
(global)
The number of rows and columns to be operated on, that is, the order of the distributed matrix sub ( A ). n ≥ 0 .
- a
-
(local) REAL for pspotf2 DOUBLE PRECISION for pdpotf2 COMPLEX for pcpotf2 COMPLEX*16 for pzpotf2 .
Pointer into the local memory to an array of size (lld_a, LOCc(ja+n-1))lld_a * LOCc ( ja + n -1) containing the local pieces of the n -by- n symmetric distributed matrix sub( A ) to be factored.
If uplo = 'U' , the leading n -by- n upper triangular part of sub( A ) contains the upper triangular matrix and the strictly lower triangular part of this matrix is not referenced. If uplo = 'L' , the leading n -by- n lower triangular part of sub( A ) contains the lower triangular matrix and the strictly upper triangular part of sub( A ) is not referenced.
ia , ja
(global)
The row and column indices in the global matrix A indicating the first row and the first column of the sub( A ), respectively.
desca
(global and local) array of size dlen_ . The array descriptor for the distributed matrix A .
Output Parameters
- a
-
(local) On exit, if uplo = 'U' , the upper triangular part of the distributed matrix contains the Cholesky factor U ; if uplo = 'L' , the lower triangular part of the distributed matrix contains the Cholesky factor L .
info
(local)
= 0 : successful exit
< 0 : if the i -th argument is an array and the j -th entry , indexed j -1, had an illegal value,
then info = - ( i *100 + j ), if the i -th argument is a scalar and had an illegal value, then info = - i . > 0 : if info = k , the leading minor of order k is not positive definite, and the factorization could not be completed.