version 1.17, 2018/05/29 07:18:22
|
version 1.18, 2023/08/07 08:39:26
|
Line 112
|
Line 112
|
*> \author Univ. of Colorado Denver |
*> \author Univ. of Colorado Denver |
*> \author NAG Ltd. |
*> \author NAG Ltd. |
* |
* |
*> \date December 2016 |
|
* |
|
*> \ingroup complex16OTHERcomputational |
*> \ingroup complex16OTHERcomputational |
* |
* |
*> \par Further Details: |
*> \par Further Details: |
Line 151
|
Line 149
|
* ===================================================================== |
* ===================================================================== |
SUBROUTINE ZHPTRD( UPLO, N, AP, D, E, TAU, INFO ) |
SUBROUTINE ZHPTRD( UPLO, N, AP, D, E, TAU, INFO ) |
* |
* |
* -- LAPACK computational routine (version 3.7.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..-- |
* December 2016 |
|
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
CHARACTER UPLO |
CHARACTER UPLO |
Line 224
|
Line 221
|
* |
* |
ALPHA = AP( I1+I-1 ) |
ALPHA = AP( I1+I-1 ) |
CALL ZLARFG( I, ALPHA, AP( I1 ), 1, TAUI ) |
CALL ZLARFG( I, ALPHA, AP( I1 ), 1, TAUI ) |
E( I ) = ALPHA |
E( I ) = DBLE( ALPHA ) |
* |
* |
IF( TAUI.NE.ZERO ) THEN |
IF( TAUI.NE.ZERO ) THEN |
* |
* |
Line 249
|
Line 246
|
* |
* |
END IF |
END IF |
AP( I1+I-1 ) = E( I ) |
AP( I1+I-1 ) = E( I ) |
D( I+1 ) = AP( I1+I ) |
D( I+1 ) = DBLE( AP( I1+I ) ) |
TAU( I ) = TAUI |
TAU( I ) = TAUI |
I1 = I1 - I |
I1 = I1 - I |
10 CONTINUE |
10 CONTINUE |
D( 1 ) = AP( 1 ) |
D( 1 ) = DBLE( AP( 1 ) ) |
ELSE |
ELSE |
* |
* |
* Reduce the lower triangle of A. II is the index in AP of |
* Reduce the lower triangle of A. II is the index in AP of |
Line 269
|
Line 266
|
* |
* |
ALPHA = AP( II+1 ) |
ALPHA = AP( II+1 ) |
CALL ZLARFG( N-I, ALPHA, AP( II+2 ), 1, TAUI ) |
CALL ZLARFG( N-I, ALPHA, AP( II+2 ), 1, TAUI ) |
E( I ) = ALPHA |
E( I ) = DBLE( ALPHA ) |
* |
* |
IF( TAUI.NE.ZERO ) THEN |
IF( TAUI.NE.ZERO ) THEN |
* |
* |
Line 296
|
Line 293
|
* |
* |
END IF |
END IF |
AP( II+1 ) = E( I ) |
AP( II+1 ) = E( I ) |
D( I ) = AP( II ) |
D( I ) = DBLE( AP( II ) ) |
TAU( I ) = TAUI |
TAU( I ) = TAUI |
II = I1I1 |
II = I1I1 |
20 CONTINUE |
20 CONTINUE |
D( N ) = AP( II ) |
D( N ) = DBLE( AP( II ) ) |
END IF |
END IF |
* |
* |
RETURN |
RETURN |