Contents
cpotrf - compute the Cholesky factorization of a complex
Hermitian positive definite matrix A
SUBROUTINE CPOTRF(UPLO, N, A, LDA, INFO)
CHARACTER * 1 UPLO
COMPLEX A(LDA,*)
INTEGER N, LDA, INFO
SUBROUTINE CPOTRF_64(UPLO, N, A, LDA, INFO)
CHARACTER * 1 UPLO
COMPLEX A(LDA,*)
INTEGER*8 N, LDA, INFO
F95 INTERFACE
SUBROUTINE POTRF(UPLO, [N], A, [LDA], [INFO])
CHARACTER(LEN=1) :: UPLO
COMPLEX, DIMENSION(:,:) :: A
INTEGER :: N, LDA, INFO
SUBROUTINE POTRF_64(UPLO, [N], A, [LDA], [INFO])
CHARACTER(LEN=1) :: UPLO
COMPLEX, DIMENSION(:,:) :: A
INTEGER(8) :: N, LDA, INFO
C INTERFACE
#include <sunperf.h>
void cpotrf(char uplo, int n, complex *a, int lda, int
*info);
void cpotrf_64(char uplo, long n, complex *a, long lda, long
*info);
cpotrf computes the Cholesky factorization of a complex Her-
mitian positive definite matrix A.
The factorization has the form
A = U**H * U, if UPLO = 'U', or
A = L * L**H, if UPLO = 'L',
where U is an upper triangular matrix and L is lower tri-
angular.
This is the block version of the algorithm, calling Level 3
BLAS.
UPLO (input)
= 'U': Upper triangle of A is stored;
= 'L': Lower triangle of A is stored.
N (input) The order of the matrix A. N >= 0.
A (input/output)
On entry, the Hermitian matrix A. If UPLO = 'U',
the leading N-by-N upper triangular part of A con-
tains the upper triangular part of the matrix A,
and the strictly lower triangular part of A is not
referenced. If UPLO = 'L', the leading N-by-N
lower triangular part of A contains the lower tri-
angular part of the matrix A, and the strictly
upper triangular part of A is not referenced.
On exit, if INFO = 0, the factor U or L from the
Cholesky factorization A = U**H*U or A = L*L**H.
LDA (input)
The leading dimension of the array A. LDA >=
max(1,N).
INFO (output)
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an ille-
gal value
> 0: if INFO = i, the leading minor of order i is
not positive definite, and the factorization could
not be completed.