Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
p?potf2
Computes the Cholesky factorization of a symmetric/Hermitian positive definite matrix (local unblocked algorithm).
Syntax
call pspotf2 ( uplo , n , a , ia , ja , desca , info )
call pdpotf2 ( uplo , n , a , ia , ja , desca , info )
call pcpotf2 ( uplo , n , a , ia , ja , desca , info )
call pzpotf2 ( uplo , n , a , ia , ja , desca , 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) CHARACTER .
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) INTEGER .
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)) 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) INTEGER .
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) INTEGER 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) INTEGER .
= 0 : successful exit
< 0 : if the i -th argument is an array and the j -th entry 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.