version 1.14, 2016/08/27 15:34:52
|
version 1.18, 2023/08/07 08:39:26
|
Line 2
|
Line 2
|
* |
* |
* =========== DOCUMENTATION =========== |
* =========== DOCUMENTATION =========== |
* |
* |
* Online html documentation available at |
* Online html documentation available at |
* http://www.netlib.org/lapack/explore-html/ |
* http://www.netlib.org/lapack/explore-html/ |
* |
* |
*> \htmlonly |
*> \htmlonly |
*> Download ZHPGST + dependencies |
*> Download ZHPGST + dependencies |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/zhpgst.f"> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/zhpgst.f"> |
*> [TGZ]</a> |
*> [TGZ]</a> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/zhpgst.f"> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/zhpgst.f"> |
*> [ZIP]</a> |
*> [ZIP]</a> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/zhpgst.f"> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/zhpgst.f"> |
*> [TXT]</a> |
*> [TXT]</a> |
*> \endhtmlonly |
*> \endhtmlonly |
* |
* |
* Definition: |
* Definition: |
* =========== |
* =========== |
* |
* |
* SUBROUTINE ZHPGST( ITYPE, UPLO, N, AP, BP, INFO ) |
* SUBROUTINE ZHPGST( ITYPE, UPLO, N, AP, BP, INFO ) |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
* CHARACTER UPLO |
* CHARACTER UPLO |
* INTEGER INFO, ITYPE, N |
* INTEGER INFO, ITYPE, N |
Line 27
|
Line 27
|
* .. Array Arguments .. |
* .. Array Arguments .. |
* COMPLEX*16 AP( * ), BP( * ) |
* COMPLEX*16 AP( * ), BP( * ) |
* .. |
* .. |
* |
* |
* |
* |
*> \par Purpose: |
*> \par Purpose: |
* ============= |
* ============= |
Line 101
|
Line 101
|
* Authors: |
* Authors: |
* ======== |
* ======== |
* |
* |
*> \author Univ. of Tennessee |
*> \author Univ. of Tennessee |
*> \author Univ. of California Berkeley |
*> \author Univ. of California Berkeley |
*> \author Univ. of Colorado Denver |
*> \author Univ. of Colorado Denver |
*> \author NAG Ltd. |
*> \author NAG Ltd. |
* |
|
*> \date November 2011 |
|
* |
* |
*> \ingroup complex16OTHERcomputational |
*> \ingroup complex16OTHERcomputational |
* |
* |
* ===================================================================== |
* ===================================================================== |
SUBROUTINE ZHPGST( ITYPE, UPLO, N, AP, BP, INFO ) |
SUBROUTINE ZHPGST( ITYPE, UPLO, N, AP, BP, INFO ) |
* |
* |
* -- LAPACK computational routine (version 3.4.0) -- |
* -- LAPACK computational routine -- |
* -- 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 2011 |
|
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
CHARACTER UPLO |
CHARACTER UPLO |
Line 185
|
Line 182
|
* Compute the j-th column of the upper triangle of A |
* Compute the j-th column of the upper triangle of A |
* |
* |
AP( JJ ) = DBLE( AP( JJ ) ) |
AP( JJ ) = DBLE( AP( JJ ) ) |
BJJ = BP( JJ ) |
BJJ = DBLE( BP( JJ ) ) |
CALL ZTPSV( UPLO, 'Conjugate transpose', 'Non-unit', J, |
CALL ZTPSV( UPLO, 'Conjugate transpose', 'Non-unit', J, |
$ BP, AP( J1 ), 1 ) |
$ BP, AP( J1 ), 1 ) |
CALL ZHPMV( UPLO, J-1, -CONE, AP, BP( J1 ), 1, CONE, |
CALL ZHPMV( UPLO, J-1, -CONE, AP, BP( J1 ), 1, CONE, |
Line 206
|
Line 203
|
* |
* |
* Update the lower triangle of A(k:n,k:n) |
* Update the lower triangle of A(k:n,k:n) |
* |
* |
AKK = AP( KK ) |
AKK = DBLE( AP( KK ) ) |
BKK = BP( KK ) |
BKK = DBLE( BP( KK ) ) |
AKK = AKK / BKK**2 |
AKK = AKK / BKK**2 |
AP( KK ) = AKK |
AP( KK ) = AKK |
IF( K.LT.N ) THEN |
IF( K.LT.N ) THEN |
Line 237
|
Line 234
|
* |
* |
* Update the upper triangle of A(1:k,1:k) |
* Update the upper triangle of A(1:k,1:k) |
* |
* |
AKK = AP( KK ) |
AKK = DBLE( AP( KK ) ) |
BKK = BP( KK ) |
BKK = DBLE( BP( KK ) ) |
CALL ZTPMV( UPLO, 'No transpose', 'Non-unit', K-1, BP, |
CALL ZTPMV( UPLO, 'No transpose', 'Non-unit', K-1, BP, |
$ AP( K1 ), 1 ) |
$ AP( K1 ), 1 ) |
CT = HALF*AKK |
CT = HALF*AKK |
Line 261
|
Line 258
|
* |
* |
* Compute the j-th column of the lower triangle of A |
* Compute the j-th column of the lower triangle of A |
* |
* |
AJJ = AP( JJ ) |
AJJ = DBLE( AP( JJ ) ) |
BJJ = BP( JJ ) |
BJJ = DBLE( BP( JJ ) ) |
AP( JJ ) = AJJ*BJJ + ZDOTC( N-J, AP( JJ+1 ), 1, |
AP( JJ ) = AJJ*BJJ + ZDOTC( N-J, AP( JJ+1 ), 1, |
$ BP( JJ+1 ), 1 ) |
$ BP( JJ+1 ), 1 ) |
CALL ZDSCAL( N-J, BJJ, AP( JJ+1 ), 1 ) |
CALL ZDSCAL( N-J, BJJ, AP( JJ+1 ), 1 ) |