version 1.5, 2010/08/07 13:22:43
|
version 1.8, 2011/07/22 07:38:19
|
Line 1
|
Line 1
|
SUBROUTINE ZPPTRS( UPLO, N, NRHS, AP, B, LDB, INFO ) |
SUBROUTINE ZPPTRS( UPLO, N, NRHS, AP, B, LDB, INFO ) |
* |
* |
* -- LAPACK routine (version 3.2) -- |
* -- LAPACK routine (version 3.3.1) -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* November 2006 |
* -- April 2011 -- |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
CHARACTER UPLO |
CHARACTER UPLO |
Line 18
|
Line 18
|
* |
* |
* ZPPTRS solves a system of linear equations A*X = B with a Hermitian |
* ZPPTRS solves a system of linear equations A*X = B with a Hermitian |
* positive definite matrix A in packed storage using the Cholesky |
* positive definite matrix A in packed storage using the Cholesky |
* factorization A = U**H*U or A = L*L**H computed by ZPPTRF. |
* factorization A = U**H * U or A = L * L**H computed by ZPPTRF. |
* |
* |
* Arguments |
* Arguments |
* ========= |
* ========= |
Line 36
|
Line 36
|
* |
* |
* AP (input) COMPLEX*16 array, dimension (N*(N+1)/2) |
* AP (input) COMPLEX*16 array, dimension (N*(N+1)/2) |
* The triangular factor U or L from the Cholesky factorization |
* The triangular factor U or L from the Cholesky factorization |
* A = U**H*U or A = L*L**H, packed columnwise in a linear |
* A = U**H * U or A = L * L**H, packed columnwise in a linear |
* array. The j-th column of U or L is stored in the array AP |
* array. The j-th column of U or L is stored in the array AP |
* as follows: |
* as follows: |
* if UPLO = 'U', AP(i + (j-1)*j/2) = U(i,j) for 1<=i<=j; |
* if UPLO = 'U', AP(i + (j-1)*j/2) = U(i,j) for 1<=i<=j; |
Line 96
|
Line 96
|
* |
* |
IF( UPPER ) THEN |
IF( UPPER ) THEN |
* |
* |
* Solve A*X = B where A = U'*U. |
* Solve A*X = B where A = U**H * U. |
* |
* |
DO 10 I = 1, NRHS |
DO 10 I = 1, NRHS |
* |
* |
* Solve U'*X = B, overwriting B with X. |
* Solve U**H *X = B, overwriting B with X. |
* |
* |
CALL ZTPSV( 'Upper', 'Conjugate transpose', 'Non-unit', N, |
CALL ZTPSV( 'Upper', 'Conjugate transpose', 'Non-unit', N, |
$ AP, B( 1, I ), 1 ) |
$ AP, B( 1, I ), 1 ) |
Line 112
|
Line 112
|
10 CONTINUE |
10 CONTINUE |
ELSE |
ELSE |
* |
* |
* Solve A*X = B where A = L*L'. |
* Solve A*X = B where A = L * L**H. |
* |
* |
DO 20 I = 1, NRHS |
DO 20 I = 1, NRHS |
* |
* |
Line 121
|
Line 121
|
CALL ZTPSV( 'Lower', 'No transpose', 'Non-unit', N, AP, |
CALL ZTPSV( 'Lower', 'No transpose', 'Non-unit', N, AP, |
$ B( 1, I ), 1 ) |
$ B( 1, I ), 1 ) |
* |
* |
* Solve L'*X = Y, overwriting B with X. |
* Solve L**H *X = Y, overwriting B with X. |
* |
* |
CALL ZTPSV( 'Lower', 'Conjugate transpose', 'Non-unit', N, |
CALL ZTPSV( 'Lower', 'Conjugate transpose', 'Non-unit', N, |
$ AP, B( 1, I ), 1 ) |
$ AP, B( 1, I ), 1 ) |