Replace the conditionally defined index variable INDIBL with a constant 1

This commit is contained in:
Martin Kroeker
2023-03-26 17:33:21 +02:00
committed by GitHub
parent 2d39e715e2
commit c48bbe93d4
10 changed files with 70 additions and 80 deletions
+7 -8
View File
@@ -317,7 +317,7 @@
* .. Local Scalars ..
LOGICAL ALLEIG, INDEIG, TEST, UPPER, VALEIG, WANTZ
CHARACTER ORDER, VECT
INTEGER I, IINFO, INDD, INDE, INDEE, INDIBL, INDISP,
INTEGER I, IINFO, INDD, INDE, INDEE, INDISP,
$ INDIWO, INDWRK, ITMP1, J, JJ, NSPLIT
DOUBLE PRECISION TMP1
* ..
@@ -457,17 +457,16 @@
ELSE
ORDER = 'E'
END IF
INDIBL = 1
INDISP = INDIBL + N
INDISP = 1 + N
INDIWO = INDISP + N
CALL DSTEBZ( RANGE, ORDER, N, VL, VU, IL, IU, ABSTOL,
$ WORK( INDD ), WORK( INDE ), M, NSPLIT, W,
$ IWORK( INDIBL ), IWORK( INDISP ), WORK( INDWRK ),
$ IWORK( 1 ), IWORK( INDISP ), WORK( INDWRK ),
$ IWORK( INDIWO ), INFO )
*
IF( WANTZ ) THEN
CALL DSTEIN( N, WORK( INDD ), WORK( INDE ), M, W,
$ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ,
$ IWORK( 1 ), IWORK( INDISP ), Z, LDZ,
$ WORK( INDWRK ), IWORK( INDIWO ), IFAIL, INFO )
*
* Apply transformation matrix used in reduction to tridiagonal
@@ -497,11 +496,11 @@
40 CONTINUE
*
IF( I.NE.0 ) THEN
ITMP1 = IWORK( INDIBL+I-1 )
ITMP1 = IWORK( 1 + I-1 )
W( I ) = W( J )
IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 )
IWORK( 1 + I-1 ) = IWORK( 1 + J-1 )
W( J ) = TMP1
IWORK( INDIBL+J-1 ) = ITMP1
IWORK( 1 + J-1 ) = ITMP1
CALL DSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 )
IF( INFO.NE.0 ) THEN
ITMP1 = IFAIL( I )