Skip to content

Commit 2c80f8c

Browse files
authored
Merge pull request #5755 from martin-frbg/fixup5702
Fix partial merge of changes from PR #5702 (applying Reference-LAPACK PR 1203)
2 parents 1aea1d6 + 0ea2348 commit 2c80f8c

File tree

4 files changed

+38
-32
lines changed

4 files changed

+38
-32
lines changed

lapack-netlib/SRC/chegvd.f

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
* Online html documentation available at
66
* http://www.netlib.org/lapack/explore-html/
77
*
8-
*> \htmlonly
98
*> Download CHEGVD + dependencies
109
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/chegvd.f">
1110
*> [TGZ]</a>
1211
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/chegvd.f">
1312
*> [ZIP]</a>
1413
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/chegvd.f">
1514
*> [TXT]</a>
16-
*> \endhtmlonly
1715
*
1816
* Definition:
1917
* ===========
@@ -238,8 +236,10 @@
238236
*> Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA
239237
*>
240238
* =====================================================================
241-
SUBROUTINE CHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
239+
SUBROUTINE CHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W,
240+
$ WORK,
242241
$ LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO )
242+
IMPLICIT NONE
243243
*
244244
* -- LAPACK driver routine --
245245
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -272,7 +272,8 @@ SUBROUTINE CHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
272272
EXTERNAL LSAME, SROUNDUP_LWORK
273273
* ..
274274
* .. External Subroutines ..
275-
EXTERNAL CHEEVD, CHEGST, CPOTRF, CTRMM, CTRSM, XERBLA
275+
EXTERNAL CHEEVD, CHEGST, CPOTRF, CTRMM, CTRSM,
276+
$ XERBLA
276277
* ..
277278
* .. Intrinsic Functions ..
278279
INTRINSIC MAX, REAL
@@ -318,7 +319,7 @@ SUBROUTINE CHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
318319
*
319320
IF( INFO.EQ.0 ) THEN
320321
WORK( 1 ) = SROUNDUP_LWORK(LOPT)
321-
RWORK( 1 ) = LROPT
322+
RWORK( 1 ) = SROUNDUP_LWORK(LROPT)
322323
IWORK( 1 ) = LIOPT
323324
*
324325
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
@@ -353,7 +354,8 @@ SUBROUTINE CHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
353354
* Transform problem to standard eigenvalue problem and solve.
354355
*
355356
CALL CHEGST( ITYPE, UPLO, N, A, LDA, B, LDB, INFO )
356-
CALL CHEEVD( JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, RWORK, LRWORK,
357+
CALL CHEEVD( JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, RWORK,
358+
$ LRWORK,
357359
$ IWORK, LIWORK, INFO )
358360
LOPT = MAX( LOPT, INT( REAL( WORK( 1 ) ) ) )
359361
LROPT = MAX( LROPT, INT( RWORK( 1 ) ) )
@@ -394,7 +396,7 @@ SUBROUTINE CHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
394396
END IF
395397
*
396398
WORK( 1 ) = SROUNDUP_LWORK(LOPT)
397-
RWORK( 1 ) = LROPT
399+
RWORK( 1 ) = SROUNDUP_LWORK(LROPT)
398400
IWORK( 1 ) = LIOPT
399401
*
400402
RETURN

lapack-netlib/SRC/chpgvd.f

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
* Online html documentation available at
66
* http://www.netlib.org/lapack/explore-html/
77
*
8-
*> \htmlonly
98
*> Download CHPGVD + dependencies
109
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/chpgvd.f">
1110
*> [TGZ]</a>
1211
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/chpgvd.f">
1312
*> [ZIP]</a>
1413
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/chpgvd.f">
1514
*> [TXT]</a>
16-
*> \endhtmlonly
1715
*
1816
* Definition:
1917
* ===========
@@ -220,8 +218,10 @@
220218
*> Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA
221219
*
222220
* =====================================================================
223-
SUBROUTINE CHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
221+
SUBROUTINE CHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ,
222+
$ WORK,
224223
$ LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO )
224+
IMPLICIT NONE
225225
*
226226
* -- LAPACK driver routine --
227227
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -250,7 +250,8 @@ SUBROUTINE CHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
250250
EXTERNAL LSAME, SROUNDUP_LWORK
251251
* ..
252252
* .. External Subroutines ..
253-
EXTERNAL CHPEVD, CHPGST, CPPTRF, CTPMV, CTPSV, XERBLA
253+
EXTERNAL CHPEVD, CHPGST, CPPTRF, CTPMV, CTPSV,
254+
$ XERBLA
254255
* ..
255256
* .. Intrinsic Functions ..
256257
INTRINSIC MAX, REAL
@@ -294,7 +295,7 @@ SUBROUTINE CHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
294295
END IF
295296
*
296297
WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
297-
RWORK( 1 ) = LRWMIN
298+
RWORK( 1 ) = SROUNDUP_LWORK(LRWMIN)
298299
IWORK( 1 ) = LIWMIN
299300
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
300301
INFO = -11
@@ -376,7 +377,7 @@ SUBROUTINE CHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
376377
END IF
377378
*
378379
WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
379-
RWORK( 1 ) = LRWMIN
380+
RWORK( 1 ) = SROUNDUP_LWORK(LRWMIN)
380381
IWORK( 1 ) = LIWMIN
381382
RETURN
382383
*

lapack-netlib/SRC/zhegvd.f

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
* Online html documentation available at
66
* http://www.netlib.org/lapack/explore-html/
77
*
8-
*> \htmlonly
98
*> Download ZHEGVD + dependencies
109
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/zhegvd.f">
1110
*> [TGZ]</a>
1211
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/zhegvd.f">
1312
*> [ZIP]</a>
1413
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/zhegvd.f">
1514
*> [TXT]</a>
16-
*> \endhtmlonly
1715
*
1816
* Definition:
1917
* ===========
@@ -219,7 +217,7 @@
219217
*> \author Univ. of Colorado Denver
220218
*> \author NAG Ltd.
221219
*
222-
*> \ingroup complex16HEeigen
220+
*> \ingroup hegvd
223221
*
224222
*> \par Further Details:
225223
* =====================
@@ -238,8 +236,10 @@
238236
*> Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA
239237
*>
240238
* =====================================================================
241-
SUBROUTINE ZHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
239+
SUBROUTINE ZHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W,
240+
$ WORK,
242241
$ LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO )
242+
IMPLICIT NONE
243243
*
244244
* -- LAPACK driver routine --
245245
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -272,7 +272,8 @@ SUBROUTINE ZHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
272272
EXTERNAL LSAME, DROUNDUP_LWORK
273273
* ..
274274
* .. External Subroutines ..
275-
EXTERNAL XERBLA, ZHEEVD, ZHEGST, ZPOTRF, ZTRMM, ZTRSM
275+
EXTERNAL XERBLA, ZHEEVD, ZHEGST, ZPOTRF, ZTRMM,
276+
$ ZTRSM
276277
* ..
277278
* .. Intrinsic Functions ..
278279
INTRINSIC DBLE, MAX
@@ -317,8 +318,8 @@ SUBROUTINE ZHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
317318
END IF
318319
*
319320
IF( INFO.EQ.0 ) THEN
320-
WORK( 1 ) = LOPT
321-
RWORK( 1 ) = LROPT
321+
WORK( 1 ) = DROUNDUP_LWORK(LOPT)
322+
RWORK( 1 ) = DROUNDUP_LWORK(LROPT)
322323
IWORK( 1 ) = LIOPT
323324
*
324325
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
@@ -353,7 +354,8 @@ SUBROUTINE ZHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
353354
* Transform problem to standard eigenvalue problem and solve.
354355
*
355356
CALL ZHEGST( ITYPE, UPLO, N, A, LDA, B, LDB, INFO )
356-
CALL ZHEEVD( JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, RWORK, LRWORK,
357+
CALL ZHEEVD( JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, RWORK,
358+
$ LRWORK,
357359
$ IWORK, LIWORK, INFO )
358360
LOPT = MAX( LOPT, INT( DBLE( WORK( 1 ) ) ) )
359361
LROPT = MAX( LROPT, INT( RWORK( 1 ) ) )
@@ -393,8 +395,8 @@ SUBROUTINE ZHEGVD( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
393395
END IF
394396
END IF
395397
*
396-
WORK( 1 ) = LOPT
397-
RWORK( 1 ) = LROPT
398+
WORK( 1 ) = DROUNDUP_LWORK(LOPT)
399+
RWORK( 1 ) = DROUNDUP_LWORK(LROPT)
398400
IWORK( 1 ) = LIOPT
399401
*
400402
RETURN

lapack-netlib/SRC/zhpgvd.f

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
* Online html documentation available at
66
* http://www.netlib.org/lapack/explore-html/
77
*
8-
*> \htmlonly
98
*> Download ZHPGVD + dependencies
109
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/zhpgvd.f">
1110
*> [TGZ]</a>
1211
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/zhpgvd.f">
1312
*> [ZIP]</a>
1413
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/zhpgvd.f">
1514
*> [TXT]</a>
16-
*> \endhtmlonly
1715
*
1816
* Definition:
1917
* ===========
@@ -212,16 +210,18 @@
212210
*> \author Univ. of Colorado Denver
213211
*> \author NAG Ltd.
214212
*
215-
*> \ingroup complex16OTHEReigen
213+
*> \ingroup hpgvd
216214
*
217215
*> \par Contributors:
218216
* ==================
219217
*>
220218
*> Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA
221219
*
222220
* =====================================================================
223-
SUBROUTINE ZHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
221+
SUBROUTINE ZHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ,
222+
$ WORK,
224223
$ LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO )
224+
IMPLICIT NONE
225225
*
226226
* -- LAPACK driver routine --
227227
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -250,7 +250,8 @@ SUBROUTINE ZHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
250250
EXTERNAL LSAME, DROUNDUP_LWORK
251251
* ..
252252
* .. External Subroutines ..
253-
EXTERNAL XERBLA, ZHPEVD, ZHPGST, ZPPTRF, ZTPMV, ZTPSV
253+
EXTERNAL XERBLA, ZHPEVD, ZHPGST, ZPPTRF, ZTPMV,
254+
$ ZTPSV
254255
* ..
255256
* .. Intrinsic Functions ..
256257
INTRINSIC DBLE, MAX
@@ -293,8 +294,8 @@ SUBROUTINE ZHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
293294
END IF
294295
END IF
295296
*
296-
WORK( 1 ) = LWMIN
297-
RWORK( 1 ) = LRWMIN
297+
WORK( 1 ) = DROUNDUP_LWORK(LWMIN)
298+
RWORK( 1 ) = DROUNDUP_LWORK(LRWMIN)
298299
IWORK( 1 ) = LIWMIN
299300
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
300301
INFO = -11
@@ -375,8 +376,8 @@ SUBROUTINE ZHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
375376
END IF
376377
END IF
377378
*
378-
WORK( 1 ) = LWMIN
379-
RWORK( 1 ) = LRWMIN
379+
WORK( 1 ) = DROUNDUP_LWORK(LWMIN)
380+
RWORK( 1 ) = DROUNDUP_LWORK(LRWMIN)
380381
IWORK( 1 ) = LIWMIN
381382
RETURN
382383
*

0 commit comments

Comments
 (0)