Purpose
=======
LA_POSV computes the solution to a linear system of equations
A*X=B, where A is real symmetric or complex Hermitian and, in either
case, positive definite, and where X and B are rectangular matrices
or vectors. The Cholesky decomposition is used to factor A as
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 a lower triangular
matrix (L = U^H ). The factored form of A is then used to solve the
above system.
=========
SUBROUTINE LA_POSV( A, B, UPLO=uplo, INFO=info )
(), INTENT(INOUT) :: A(:,:),
CHARACTER(LEN=1), INTENT(IN), OPTIONAL :: UPLO
INTEGER, INTENT(OUT), OPTIONAL :: INFO
where
::= REAL | COMPLEX
::= KIND(1.0) | KIND(1.0D0)
::= B(:,:) | B(:)
Arguments
=========
A (input/output) REAL or COMPLEX square array, shape (:,:).
On entry, the matrix A.
If UPLO = 'U', the upper triangular part of A contains the upper
triangular part of the matrix A, and the strictly lower triangular
part of A is not referenced. If UPLO = 'L', the lower triangular
part of A contains the lower triangular part of the matrix A, and
the strictly upper triangular part of A is not referenced.
On exit, the factor U or L from the Cholesky factorization
A = U^H*U = L*L^H.
B (input/output) REAL or COMPLEX array, shape (:,:) with
size(B,1) = size(A,1) or shape (:) with size(B) = size(A,1).
On entry, the matrix B.
On exit, the solution matrix X.
UPLO Optional (input) CHARACTER(LEN=1)
= 'U': Upper triangle of A is stored;
= 'L': Lower triangle of A is stored.
Default value: 'U'.
INFO Optional (output) INTEGER
= 0: sauccessful exit.
< 0: if INFO = -i, the i-th argument had an illegal value.
> 0: if INFO = i, the leading minor of order i of A is not
positive definite, so the factorization could not be
completed and the solution could not be computed.
If INFO is not present and an error occurs, then the program is
terminated with an error message.