SUBROUTINE DPPSV( UPLO, N, NRHS, A, B, LDB, INFO) CHARACTER * 1 UPLO INTEGER N, NRHS, LDB, INFO DOUBLE PRECISION A(*), B(LDB,*) SUBROUTINE DPPSV_64( UPLO, N, NRHS, A, B, LDB, INFO) CHARACTER * 1 UPLO INTEGER*8 N, NRHS, LDB, INFO DOUBLE PRECISION A(*), B(LDB,*)
SUBROUTINE PPSV( UPLO, N, [NRHS], A, B, [LDB], [INFO]) CHARACTER(LEN=1) :: UPLO INTEGER :: N, NRHS, LDB, INFO REAL(8), DIMENSION(:) :: A REAL(8), DIMENSION(:,:) :: B SUBROUTINE PPSV_64( UPLO, N, [NRHS], A, B, [LDB], [INFO]) CHARACTER(LEN=1) :: UPLO INTEGER(8) :: N, NRHS, LDB, INFO REAL(8), DIMENSION(:) :: A REAL(8), DIMENSION(:,:) :: B
void dppsv(char uplo, int n, int nrhs, double *a, double *b, int ldb, int *info);
void dppsv_64(char uplo, long n, long nrhs, double *a, double *b, long ldb, long *info);
The Cholesky decomposition is used to factor A as
A = U**T* U, if UPLO = 'U', or A = L * L**T, if UPLO = 'L',
where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
On exit, if INFO = 0, the factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T, in the same storage format as A.