Merge pull request #4310 from martin-frbg/lapack904

Apply rounding up to workspace calculations done with reals (Reference-LAPACK PR 904)
This commit is contained in:
Martin Kroeker 2023-11-12 16:45:10 +01:00 committed by GitHub
commit d58c88cf42
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
216 changed files with 1334 additions and 1187 deletions

View File

@ -176,7 +176,8 @@ C>
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
@ -225,13 +226,13 @@ C>
* Optimal workspace for dlarfb = MAX(1,N)*NT * Optimal workspace for dlarfb = MAX(1,N)*NT
* *
LWKOPT = (LBWORK+LLWORK)*NB LWKOPT = (LBWORK+LLWORK)*NB
WORK( 1 ) = (LWKOPT+NT*NT) WORK( 1 ) = SROUNDUP_LWORK(LWKOPT+NT*NT)
ELSE ELSE
LBWORK = CEILING(REAL(K)/REAL(NB))*NB LBWORK = CEILING(REAL(K)/REAL(NB))*NB
LWKOPT = (LBWORK+LLWORK-NB)*NB LWKOPT = (LBWORK+LLWORK-NB)*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
@ -413,7 +414,7 @@ C>
END IF END IF
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CGEQRF * End of CGEQRF

View File

@ -176,7 +176,8 @@ C>
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV DOUBLE PRECISION DROUNDUP_LWORK
EXTERNAL ILAENV, DROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
@ -225,13 +226,13 @@ C>
* Optimal workspace for dlarfb = MAX(1,N)*NT * Optimal workspace for dlarfb = MAX(1,N)*NT
* *
LWKOPT = (LBWORK+LLWORK)*NB LWKOPT = (LBWORK+LLWORK)*NB
WORK( 1 ) = (LWKOPT+NT*NT) WORK( 1 ) = DROUNDUP_LWORK(LWKOPT+NT*NT)
ELSE ELSE
LBWORK = CEILING(REAL(K)/REAL(NB))*NB LBWORK = CEILING(REAL(K)/REAL(NB))*NB
LWKOPT = (LBWORK+LLWORK-NB)*NB LWKOPT = (LBWORK+LLWORK-NB)*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = DROUNDUP_LWORK(LWKOPT)
END IF END IF
@ -413,7 +414,7 @@ C>
END IF END IF
WORK( 1 ) = IWS WORK( 1 ) = DROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of DGEQRF * End of DGEQRF

View File

@ -176,7 +176,8 @@ C>
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV DOUBLE PRECISION DROUNDUP_LWORK
EXTERNAL ILAENV, DROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
@ -225,13 +226,13 @@ C>
* Optimal workspace for dlarfb = MAX(1,N)*NT * Optimal workspace for dlarfb = MAX(1,N)*NT
* *
LWKOPT = (LBWORK+LLWORK)*NB LWKOPT = (LBWORK+LLWORK)*NB
WORK( 1 ) = (LWKOPT+NT*NT) WORK( 1 ) = DROUNDUP_LWORK(LWKOPT+NT*NT)
ELSE ELSE
LBWORK = CEILING(REAL(K)/REAL(NB))*NB LBWORK = CEILING(REAL(K)/REAL(NB))*NB
LWKOPT = (LBWORK+LLWORK-NB)*NB LWKOPT = (LBWORK+LLWORK-NB)*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = DROUNDUP_LWORK(LWKOPT)
END IF END IF
@ -413,7 +414,7 @@ C>
END IF END IF
WORK( 1 ) = IWS WORK( 1 ) = DROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of SGEQRF * End of SGEQRF

View File

@ -176,7 +176,8 @@ C>
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
@ -225,13 +226,13 @@ C>
* Optimal workspace for dlarfb = MAX(1,N)*NT * Optimal workspace for dlarfb = MAX(1,N)*NT
* *
LWKOPT = (LBWORK+LLWORK)*NB LWKOPT = (LBWORK+LLWORK)*NB
WORK( 1 ) = (LWKOPT+NT*NT) WORK( 1 ) = SROUNDUP_LWORK(LWKOPT+NT*NT)
ELSE ELSE
LBWORK = CEILING(REAL(K)/REAL(NB))*NB LBWORK = CEILING(REAL(K)/REAL(NB))*NB
LWKOPT = (LBWORK+LLWORK-NB)*NB LWKOPT = (LBWORK+LLWORK-NB)*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
@ -413,7 +414,7 @@ C>
END IF END IF
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of ZGEQRF * End of ZGEQRF

View File

@ -189,7 +189,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEeigen *> \ingroup gees
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGEES( JOBVS, SORT, SELECT, N, A, LDA, SDIM, W, VS, SUBROUTINE CGEES( JOBVS, SORT, SELECT, N, A, LDA, SDIM, W, VS,
@ -230,13 +230,13 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CCOPY, CGEBAK, CGEBAL, CGEHRD, CHSEQR, CLACPY, EXTERNAL CCOPY, CGEBAK, CGEBAL, CGEHRD, CHSEQR, CLACPY,
$ CLASCL, CTRSEN, CUNGHR, SLABAD, XERBLA $ CLASCL, CTRSEN, CUNGHR, XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC MAX, SQRT INTRINSIC MAX, SQRT
@ -292,7 +292,7 @@
MAXWRK = MAX( MAXWRK, HSWORK ) MAXWRK = MAX( MAXWRK, HSWORK )
END IF END IF
END IF END IF
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
* *
IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN
INFO = -12 INFO = -12
@ -318,7 +318,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -413,7 +412,7 @@
CALL CCOPY( N, A, LDA+1, W, 1 ) CALL CCOPY( N, A, LDA+1, W, 1 )
END IF END IF
* *
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
RETURN RETURN
* *
* End of CGEES * End of CGEES

View File

@ -230,7 +230,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEeigen *> \ingroup geesx
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGEESX( JOBVS, SORT, SELECT, SENSE, N, A, LDA, SDIM, W, SUBROUTINE CGEESX( JOBVS, SORT, SELECT, SENSE, N, A, LDA, SDIM, W,
@ -274,13 +274,13 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CCOPY, CGEBAK, CGEBAL, CGEHRD, CHSEQR, CLACPY, EXTERNAL CCOPY, CGEBAK, CGEBAL, CGEHRD, CHSEQR, CLACPY,
$ CLASCL, CTRSEN, CUNGHR, SLABAD, SLASCL, XERBLA $ CLASCL, CTRSEN, CUNGHR, SLASCL, XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC MAX, SQRT INTRINSIC MAX, SQRT
@ -350,7 +350,7 @@
IF( .NOT.WANTSN ) IF( .NOT.WANTSN )
$ LWRK = MAX( LWRK, ( N*N )/2 ) $ LWRK = MAX( LWRK, ( N*N )/2 )
END IF END IF
WORK( 1 ) = LWRK WORK( 1 ) = SROUNDUP_LWORK(LWRK)
* *
IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN
INFO = -15 INFO = -15
@ -376,7 +376,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -488,7 +487,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
RETURN RETURN
* *
* End of CGEESX * End of CGEESX

View File

@ -172,7 +172,7 @@
* *
* @generated from zgeev.f, fortran z -> c, Tue Apr 19 01:47:44 2016 * @generated from zgeev.f, fortran z -> c, Tue Apr 19 01:47:44 2016
* *
*> \ingroup complexGEeigen *> \ingroup geev
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGEEV( JOBVL, JOBVR, N, A, LDA, W, VL, LDVL, VR, LDVR, SUBROUTINE CGEEV( JOBVL, JOBVR, N, A, LDA, W, VL, LDVL, VR, LDVR,
@ -212,14 +212,15 @@
REAL DUM( 1 ) REAL DUM( 1 )
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SLABAD, XERBLA, CSSCAL, CGEBAK, CGEBAL, CGEHRD, EXTERNAL XERBLA, CSSCAL, CGEBAK, CGEBAL, CGEHRD,
$ CHSEQR, CLACPY, CLASCL, CSCAL, CTREVC3, CUNGHR $ CHSEQR, CLACPY, CLASCL, CSCAL, CTREVC3, CUNGHR
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ISAMAX, ILAENV INTEGER ISAMAX, ILAENV
REAL SLAMCH, SCNRM2, CLANGE REAL SLAMCH, SCNRM2, CLANGE, SROUNDUP_LWORK
EXTERNAL LSAME, ISAMAX, ILAENV, SLAMCH, SCNRM2, CLANGE EXTERNAL LSAME, ISAMAX, ILAENV, SLAMCH, SCNRM2, CLANGE,
$ SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC REAL, CMPLX, CONJG, AIMAG, MAX, SQRT INTRINSIC REAL, CMPLX, CONJG, AIMAG, MAX, SQRT
@ -291,7 +292,7 @@
HSWORK = INT( WORK(1) ) HSWORK = INT( WORK(1) )
MAXWRK = MAX( MAXWRK, HSWORK, MINWRK ) MAXWRK = MAX( MAXWRK, HSWORK, MINWRK )
END IF END IF
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
* *
IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN
INFO = -12 INFO = -12
@ -315,7 +316,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -493,7 +493,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
RETURN RETURN
* *
* End of CGEEV * End of CGEEV

View File

@ -279,7 +279,7 @@
* *
* @generated from zgeevx.f, fortran z -> c, Tue Apr 19 01:47:44 2016 * @generated from zgeevx.f, fortran z -> c, Tue Apr 19 01:47:44 2016
* *
*> \ingroup complexGEeigen *> \ingroup geevx
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGEEVX( BALANC, JOBVL, JOBVR, SENSE, N, A, LDA, W, VL, SUBROUTINE CGEEVX( BALANC, JOBVL, JOBVR, SENSE, N, A, LDA, W, VL,
@ -323,15 +323,16 @@
REAL DUM( 1 ) REAL DUM( 1 )
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SLABAD, SLASCL, XERBLA, CSSCAL, CGEBAK, CGEBAL, EXTERNAL SLASCL, XERBLA, CSSCAL, CGEBAK, CGEBAL,
$ CGEHRD, CHSEQR, CLACPY, CLASCL, CSCAL, CTREVC3, $ CGEHRD, CHSEQR, CLACPY, CLASCL, CSCAL, CTREVC3,
$ CTRSNA, CUNGHR $ CTRSNA, CUNGHR
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ISAMAX, ILAENV INTEGER ISAMAX, ILAENV
REAL SLAMCH, SCNRM2, CLANGE REAL SLAMCH, SCNRM2, CLANGE, SROUNDUP_LWORK
EXTERNAL LSAME, ISAMAX, ILAENV, SLAMCH, SCNRM2, CLANGE EXTERNAL LSAME, ISAMAX, ILAENV, SLAMCH, SCNRM2, CLANGE,
$ SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC REAL, CMPLX, CONJG, AIMAG, MAX, SQRT INTRINSIC REAL, CMPLX, CONJG, AIMAG, MAX, SQRT
@ -434,7 +435,7 @@
END IF END IF
MAXWRK = MAX( MAXWRK, MINWRK ) MAXWRK = MAX( MAXWRK, MINWRK )
END IF END IF
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
* *
IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN
INFO = -20 INFO = -20
@ -458,7 +459,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -657,7 +657,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
RETURN RETURN
* *
* End of CGEEVX * End of CGEEVX

View File

@ -120,7 +120,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEcomputational *> \ingroup gehrd
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -201,7 +201,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -227,7 +228,7 @@
* *
NB = MIN( NBMAX, ILAENV( 1, 'CGEHRD', ' ', N, ILO, IHI, -1 ) ) NB = MIN( NBMAX, ILAENV( 1, 'CGEHRD', ' ', N, ILO, IHI, -1 ) )
LWKOPT = N*NB + TSIZE LWKOPT = N*NB + TSIZE
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -344,7 +345,7 @@
* Use unblocked code to reduce the rest of the matrix * Use unblocked code to reduce the rest of the matrix
* *
CALL CGEHD2( N, I, IHI, A, LDA, TAU, WORK, IINFO ) CALL CGEHD2( N, I, IHI, A, LDA, TAU, WORK, IINFO )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -166,6 +166,8 @@
*> the LQ factorization. *> the LQ factorization.
*> \endverbatim *> \endverbatim
*> *>
*> \ingroup gelq
*>
* ===================================================================== * =====================================================================
SUBROUTINE CGELQ( M, N, A, LDA, T, TSIZE, WORK, LWORK, SUBROUTINE CGELQ( M, N, A, LDA, T, TSIZE, WORK, LWORK,
$ INFO ) $ INFO )
@ -190,7 +192,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGELQT, CLASWLQ, XERBLA EXTERNAL CGELQT, CLASWLQ, XERBLA
@ -292,9 +295,9 @@
T( 2 ) = MB T( 2 ) = MB
T( 3 ) = NB T( 3 ) = NB
IF( MINW ) THEN IF( MINW ) THEN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
ELSE ELSE
WORK( 1 ) = LWREQ WORK( 1 ) = SROUNDUP_LWORK(LWREQ)
END IF END IF
END IF END IF
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -319,7 +322,7 @@
$ LWORK, INFO ) $ LWORK, INFO )
END IF END IF
* *
WORK( 1 ) = LWREQ WORK( 1 ) = SROUNDUP_LWORK(LWREQ)
* *
RETURN RETURN
* *

View File

@ -118,7 +118,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEcomputational *> \ingroup gelqf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -167,7 +167,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -176,7 +177,7 @@
INFO = 0 INFO = 0
NB = ILAENV( 1, 'CGELQF', ' ', M, N, -1, -1 ) NB = ILAENV( 1, 'CGELQF', ' ', M, N, -1, -1 )
LWKOPT = M*NB LWKOPT = M*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
LQUERY = ( LWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 )
IF( M.LT.0 ) THEN IF( M.LT.0 ) THEN
INFO = -1 INFO = -1
@ -266,7 +267,7 @@
$ CALL CGELQ2( M-I+1, N-I+1, A( I, I ), LDA, TAU( I ), WORK, $ CALL CGELQ2( M-I+1, N-I+1, A( I, I ), LDA, TAU( I ), WORK,
$ IINFO ) $ IINFO )
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CGELQF * End of CGELQF

View File

@ -204,7 +204,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEsolve *> \ingroup gelsd
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -249,13 +249,13 @@
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEBRD, CGELQF, CGEQRF, CLACPY, EXTERNAL CGEBRD, CGELQF, CGEQRF, CLACPY,
$ CLALSD, CLASCL, CLASET, CUNMBR, $ CLALSD, CLASCL, CLASET, CUNMBR,
$ CUNMLQ, CUNMQR, SLABAD, SLASCL, $ CUNMLQ, CUNMQR, SLASCL,
$ SLASET, XERBLA $ SLASET, XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL CLANGE, SLAMCH, ILAENV EXTERNAL CLANGE, SLAMCH, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC INT, LOG, MAX, MIN, REAL INTRINSIC INT, LOG, MAX, MIN, REAL
@ -367,7 +367,7 @@
END IF END IF
END IF END IF
MINWRK = MIN( MINWRK, MAXWRK ) MINWRK = MIN( MINWRK, MAXWRK )
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
IWORK( 1 ) = LIWORK IWORK( 1 ) = LIWORK
RWORK( 1 ) = LRWORK RWORK( 1 ) = LRWORK
* *
@ -396,7 +396,6 @@
SFMIN = SLAMCH( 'S' ) SFMIN = SLAMCH( 'S' )
SMLNUM = SFMIN / EPS SMLNUM = SFMIN / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
* *
* Scale A if max entry outside range [SMLNUM,BIGNUM]. * Scale A if max entry outside range [SMLNUM,BIGNUM].
* *
@ -647,7 +646,7 @@
END IF END IF
* *
10 CONTINUE 10 CONTINUE
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
IWORK( 1 ) = LIWORK IWORK( 1 ) = LIWORK
RWORK( 1 ) = LRWORK RWORK( 1 ) = LRWORK
RETURN RETURN

View File

@ -218,8 +218,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL ILAENV, CLANGE, SLAMCH EXTERNAL ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC MAX, MIN INTRINSIC MAX, MIN
@ -361,7 +361,7 @@
END IF END IF
MAXWRK = MAX( MINWRK, MAXWRK ) MAXWRK = MAX( MINWRK, MAXWRK )
END IF END IF
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
* *
IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY )
$ INFO = -12 $ INFO = -12
@ -758,7 +758,7 @@
CALL CLASCL( 'G', 0, 0, BIGNUM, BNRM, N, NRHS, B, LDB, INFO ) CALL CLASCL( 'G', 0, 0, BIGNUM, BNRM, N, NRHS, B, LDB, INFO )
END IF END IF
70 CONTINUE 70 CONTINUE
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
RETURN RETURN
* *
* End of CGELSS * End of CGELSS

View File

@ -176,7 +176,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEsolve *> \ingroup gelst
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -224,15 +224,15 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL SLAMCH, CLANGE REAL SLAMCH, CLANGE, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SLAMCH, CLANGE EXTERNAL LSAME, ILAENV, SLAMCH, CLANGE, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGELQT, CGEQRT, CGEMLQT, CGEMQRT, SLABAD, EXTERNAL CGELQT, CGEQRT, CGEMLQT, CGEMQRT,
$ CLASCL, CLASET, CTRTRS, XERBLA $ CLASCL, CLASET, CTRTRS, XERBLA
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC REAL, MAX, MIN INTRINSIC MAX, MIN
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -270,7 +270,7 @@
* *
MNNRHS = MAX( MN, NRHS ) MNNRHS = MAX( MN, NRHS )
LWOPT = MAX( 1, (MN+MNNRHS)*NB ) LWOPT = MAX( 1, (MN+MNNRHS)*NB )
WORK( 1 ) = REAL( LWOPT ) WORK( 1 ) = SROUNDUP_LWORK( LWOPT )
* *
END IF END IF
* *
@ -285,7 +285,7 @@
* *
IF( MIN( M, N, NRHS ).EQ.0 ) THEN IF( MIN( M, N, NRHS ).EQ.0 ) THEN
CALL CLASET( 'Full', MAX( M, N ), NRHS, CZERO, CZERO, B, LDB ) CALL CLASET( 'Full', MAX( M, N ), NRHS, CZERO, CZERO, B, LDB )
WORK( 1 ) = REAL( LWOPT ) WORK( 1 ) = SROUNDUP_LWORK( LWOPT )
RETURN RETURN
END IF END IF
* *
@ -311,7 +311,6 @@
* *
SMLNUM = SLAMCH( 'S' ) / SLAMCH( 'P' ) SMLNUM = SLAMCH( 'S' ) / SLAMCH( 'P' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
* *
* Scale A, B if max element outside range [SMLNUM,BIGNUM] * Scale A, B if max element outside range [SMLNUM,BIGNUM]
* *
@ -334,7 +333,7 @@
* Matrix all zero. Return zero solution. * Matrix all zero. Return zero solution.
* *
CALL CLASET( 'Full', MAX( M, N ), NRHS, CZERO, CZERO, B, LDB ) CALL CLASET( 'Full', MAX( M, N ), NRHS, CZERO, CZERO, B, LDB )
WORK( 1 ) = REAL( LWOPT ) WORK( 1 ) = SROUNDUP_LWORK( LWOPT )
RETURN RETURN
END IF END IF
* *
@ -524,7 +523,7 @@
$ INFO ) $ INFO )
END IF END IF
* *
WORK( 1 ) = REAL( LWOPT ) WORK( 1 ) = SROUNDUP_LWORK( LWOPT )
* *
RETURN RETURN
* *

View File

@ -113,7 +113,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEcomputational *> \ingroup geqlf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -162,7 +162,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -186,7 +187,7 @@
NB = ILAENV( 1, 'CGEQLF', ' ', M, N, -1, -1 ) NB = ILAENV( 1, 'CGEQLF', ' ', M, N, -1, -1 )
LWKOPT = N*NB LWKOPT = N*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.MAX( 1, N ) .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MAX( 1, N ) .AND. .NOT.LQUERY ) THEN
INFO = -7 INFO = -7
@ -276,7 +277,7 @@
IF( MU.GT.0 .AND. NU.GT.0 ) IF( MU.GT.0 .AND. NU.GT.0 )
$ CALL CGEQL2( MU, NU, A, LDA, TAU, WORK, IINFO ) $ CALL CGEQL2( MU, NU, A, LDA, TAU, WORK, IINFO )
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CGEQLF * End of CGEQLF

View File

@ -121,7 +121,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEcomputational *> \ingroup geqrf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -170,7 +170,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -199,7 +200,7 @@
ELSE ELSE
LWKOPT = N*NB LWKOPT = N*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
END IF END IF
* *
@ -274,7 +275,7 @@
$ CALL CGEQR2( M-I+1, N-I+1, A( I, I ), LDA, TAU( I ), WORK, $ CALL CGEQR2( M-I+1, N-I+1, A( I, I ), LDA, TAU( I ), WORK,
$ IINFO ) $ IINFO )
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CGEQRF * End of CGEQRF

View File

@ -122,7 +122,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEcomputational *> \ingroup geqrfp
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -173,7 +173,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -182,7 +183,7 @@
INFO = 0 INFO = 0
NB = ILAENV( 1, 'CGEQRF', ' ', M, N, -1, -1 ) NB = ILAENV( 1, 'CGEQRF', ' ', M, N, -1, -1 )
LWKOPT = N*NB LWKOPT = N*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
LQUERY = ( LWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 )
IF( M.LT.0 ) THEN IF( M.LT.0 ) THEN
INFO = -1 INFO = -1
@ -272,7 +273,7 @@
$ CALL CGEQR2P( M-I+1, N-I+1, A( I, I ), LDA, TAU( I ), WORK, $ CALL CGEQR2P( M-I+1, N-I+1, A( I, I ), LDA, TAU( I ), WORK,
$ IINFO ) $ IINFO )
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CGEQRFP * End of CGEQRFP

View File

@ -114,7 +114,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEcomputational *> \ingroup gerqf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -163,7 +163,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -187,7 +188,7 @@
NB = ILAENV( 1, 'CGERQF', ' ', M, N, -1, -1 ) NB = ILAENV( 1, 'CGERQF', ' ', M, N, -1, -1 )
LWKOPT = M*NB LWKOPT = M*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF ( .NOT.LQUERY ) THEN IF ( .NOT.LQUERY ) THEN
IF( LWORK.LE.0 .OR. ( N.GT.0 .AND. LWORK.LT.MAX( 1, M ) ) ) IF( LWORK.LE.0 .OR. ( N.GT.0 .AND. LWORK.LT.MAX( 1, M ) ) )
@ -278,7 +279,7 @@
IF( MU.GT.0 .AND. NU.GT.0 ) IF( MU.GT.0 .AND. NU.GT.0 )
$ CALL CGERQ2( MU, NU, A, LDA, TAU, WORK, IINFO ) $ CALL CGERQ2( MU, NU, A, LDA, TAU, WORK, IINFO )
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CGERQF * End of CGERQF

View File

@ -206,7 +206,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEsing *> \ingroup gesvd
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGESVD( JOBU, JOBVT, M, N, A, LDA, S, U, LDU, VT, LDVT, SUBROUTINE CGESVD( JOBU, JOBVT, M, N, A, LDA, S, U, LDU, VT, LDVT,
@ -259,8 +259,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC MAX, MIN, SQRT INTRINSIC MAX, MIN, SQRT
@ -615,7 +615,7 @@
END IF END IF
END IF END IF
MAXWRK = MAX( MINWRK, MAXWRK ) MAXWRK = MAX( MINWRK, MAXWRK )
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
* *
IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN
INFO = -13 INFO = -13
@ -3694,7 +3694,7 @@
* *
* Return optimal workspace in WORK(1) * Return optimal workspace in WORK(1)
* *
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
* *
RETURN RETURN
* *

View File

@ -107,7 +107,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEcomputational *> \ingroup getri
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGETRI( N, A, LDA, IPIV, WORK, LWORK, INFO ) SUBROUTINE CGETRI( N, A, LDA, IPIV, WORK, LWORK, INFO )
@ -138,7 +138,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEMM, CGEMV, CSWAP, CTRSM, CTRTRI, XERBLA EXTERNAL CGEMM, CGEMV, CSWAP, CTRSM, CTRTRI, XERBLA
@ -153,7 +154,7 @@
INFO = 0 INFO = 0
NB = ILAENV( 1, 'CGETRI', ' ', N, -1, -1, -1 ) NB = ILAENV( 1, 'CGETRI', ' ', N, -1, -1, -1 )
LWKOPT = N*NB LWKOPT = N*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
LQUERY = ( LWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 )
IF( N.LT.0 ) THEN IF( N.LT.0 ) THEN
INFO = -1 INFO = -1
@ -251,7 +252,7 @@
$ CALL CSWAP( N, A( 1, J ), 1, A( 1, JP ), 1 ) $ CALL CSWAP( N, A( 1, J ), 1, A( 1, JP ), 1 )
60 CONTINUE 60 CONTINUE
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CGETRI * End of CGETRI

View File

@ -154,7 +154,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEsolve *> \ingroup getsls
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGETSLS( TRANS, M, N, NRHS, A, LDA, B, LDB, SUBROUTINE CGETSLS( TRANS, M, N, NRHS, A, LDA, B, LDB,
@ -191,15 +191,15 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
REAL SLAMCH, CLANGE REAL SLAMCH, CLANGE, SROUNDUP_LWORK
EXTERNAL LSAME, SLABAD, SLAMCH, CLANGE EXTERNAL LSAME, SLAMCH, CLANGE, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEQR, CGEMQR, CLASCL, CLASET, EXTERNAL CGEQR, CGEMQR, CLASCL, CLASET,
$ CTRTRS, XERBLA, CGELQ, CGEMLQ $ CTRTRS, XERBLA, CGELQ, CGEMLQ
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC REAL, MAX, MIN, INT INTRINSIC MAX, MIN, INT
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -265,7 +265,7 @@
INFO = -10 INFO = -10
END IF END IF
* *
WORK( 1 ) = REAL( WSIZEO ) WORK( 1 ) = SROUNDUP_LWORK( WSIZEO )
* *
END IF END IF
* *
@ -274,7 +274,7 @@
RETURN RETURN
END IF END IF
IF( LQUERY ) THEN IF( LQUERY ) THEN
IF( LWORK.EQ.-2 ) WORK( 1 ) = REAL( WSIZEM ) IF( LWORK.EQ.-2 ) WORK( 1 ) = SROUNDUP_LWORK( WSIZEM )
RETURN RETURN
END IF END IF
IF( LWORK.LT.WSIZEO ) THEN IF( LWORK.LT.WSIZEO ) THEN
@ -297,7 +297,6 @@
* *
SMLNUM = SLAMCH( 'S' ) / SLAMCH( 'P' ) SMLNUM = SLAMCH( 'S' ) / SLAMCH( 'P' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
* *
* Scale A, B if max element outside range [SMLNUM,BIGNUM] * Scale A, B if max element outside range [SMLNUM,BIGNUM]
* *
@ -485,7 +484,7 @@
END IF END IF
* *
50 CONTINUE 50 CONTINUE
WORK( 1 ) = REAL( TSZO + LWO ) WORK( 1 ) = SROUNDUP_LWORK( TSZO + LWO )
RETURN RETURN
* *
* End of CGETSLS * End of CGETSLS

View File

@ -261,7 +261,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEeigen *> \ingroup gges
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGGES( JOBVSL, JOBVSR, SORT, SELCTG, N, A, LDA, B, LDB, SUBROUTINE CGGES( JOBVSL, JOBVSR, SORT, SELCTG, N, A, LDA, B, LDB,
@ -312,14 +312,13 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY, EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY,
$ CLASCL, CLASET, CTGSEN, CUNGQR, CUNMQR, SLABAD, $ CLASCL, CLASET, CTGSEN, CUNGQR, CUNMQR, XERBLA
$ XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC MAX, SQRT INTRINSIC MAX, SQRT
@ -390,7 +389,7 @@
LWKOPT = MAX( LWKOPT, N + LWKOPT = MAX( LWKOPT, N +
$ N*ILAENV( 1, 'CUNGQR', ' ', N, 1, N, -1 ) ) $ N*ILAENV( 1, 'CUNGQR', ' ', N, 1, N, -1 ) )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY )
$ INFO = -18 $ INFO = -18
@ -415,7 +414,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -587,7 +585,7 @@
* *
30 CONTINUE 30 CONTINUE
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -320,7 +320,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEeigen *> \ingroup ggesx
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGGESX( JOBVSL, JOBVSR, SORT, SELCTG, SENSE, N, A, LDA, SUBROUTINE CGGESX( JOBVSL, JOBVSR, SORT, SELCTG, SENSE, N, A, LDA,
@ -373,14 +373,13 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY, EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY,
$ CLASCL, CLASET, CTGSEN, CUNGQR, CUNMQR, SLABAD, $ CLASCL, CLASET, CTGSEN, CUNGQR, CUNMQR, XERBLA
$ XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC MAX, SQRT INTRINSIC MAX, SQRT
@ -476,7 +475,7 @@
MAXWRK = 1 MAXWRK = 1
LWRK = 1 LWRK = 1
END IF END IF
WORK( 1 ) = LWRK WORK( 1 ) = SROUNDUP_LWORK(LWRK)
IF( WANTSN .OR. N.EQ.0 ) THEN IF( WANTSN .OR. N.EQ.0 ) THEN
LIWMIN = 1 LIWMIN = 1
ELSE ELSE
@ -510,7 +509,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -705,7 +703,7 @@
* *
40 CONTINUE 40 CONTINUE
* *
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
RETURN RETURN

View File

@ -209,7 +209,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEeigen *> \ingroup ggev
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGGEV( JOBVL, JOBVR, N, A, LDA, B, LDB, ALPHA, BETA, SUBROUTINE CGGEV( JOBVL, JOBVR, N, A, LDA, B, LDB, ALPHA, BETA,
@ -254,14 +254,13 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY, EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY,
$ CLASCL, CLASET, CTGEVC, CUNGQR, CUNMQR, SLABAD, $ CLASCL, CLASET, CTGEVC, CUNGQR, CUNMQR, XERBLA
$ XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC ABS, AIMAG, MAX, REAL, SQRT INTRINSIC ABS, AIMAG, MAX, REAL, SQRT
@ -336,7 +335,7 @@
LWKOPT = MAX( LWKOPT, N + LWKOPT = MAX( LWKOPT, N +
$ N*ILAENV( 1, 'CUNGQR', ' ', N, 1, N, -1 ) ) $ N*ILAENV( 1, 'CUNGQR', ' ', N, 1, N, -1 ) )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY )
$ INFO = -15 $ INFO = -15
@ -359,7 +358,6 @@
EPS = SLAMCH( 'E' )*SLAMCH( 'B' ) EPS = SLAMCH( 'E' )*SLAMCH( 'B' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -547,7 +545,7 @@
IF( ILBSCL ) IF( ILBSCL )
$ CALL CLASCL( 'G', 0, 0, BNRMTO, BNRM, N, 1, BETA, N, IERR ) $ CALL CLASCL( 'G', 0, 0, BNRMTO, BNRM, N, 1, BETA, N, IERR )
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CGGEV * End of CGGEV

View File

@ -335,7 +335,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGEeigen *> \ingroup ggevx
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -416,13 +416,13 @@
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY, EXTERNAL CGEQRF, CGGBAK, CGGBAL, CGGHRD, CHGEQZ, CLACPY,
$ CLASCL, CLASET, CTGEVC, CTGSNA, CUNGQR, CUNMQR, $ CLASCL, CLASET, CTGEVC, CTGSNA, CUNGQR, CUNMQR,
$ SLABAD, SLASCL, XERBLA $ SLASCL, XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANGE, SLAMCH REAL CLANGE, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH EXTERNAL LSAME, ILAENV, CLANGE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC ABS, AIMAG, MAX, REAL, SQRT INTRINSIC ABS, AIMAG, MAX, REAL, SQRT
@ -521,7 +521,7 @@
$ N*ILAENV( 1, 'CUNGQR', ' ', N, 1, N, 0 ) ) $ N*ILAENV( 1, 'CUNGQR', ' ', N, 1, N, 0 ) )
END IF END IF
END IF END IF
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
* *
IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN
INFO = -25 INFO = -25
@ -545,7 +545,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) SMLNUM = SLAMCH( 'S' )
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
SMLNUM = SQRT( SMLNUM ) / EPS SMLNUM = SQRT( SMLNUM ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
* *
@ -793,7 +792,7 @@
IF( ILBSCL ) IF( ILBSCL )
$ CALL CLASCL( 'G', 0, 0, BNRMTO, BNRM, N, 1, BETA, N, IERR ) $ CALL CLASCL( 'G', 0, 0, BNRMTO, BNRM, N, 1, BETA, N, IERR )
* *
WORK( 1 ) = MAXWRK WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)
RETURN RETURN
* *
* End of CGGEVX * End of CGGEVX

View File

@ -177,7 +177,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHEReigen *> \ingroup ggglm
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGGGLM( N, M, P, A, LDA, B, LDB, D, X, Y, WORK, LWORK, SUBROUTINE CGGGLM( N, M, P, A, LDA, B, LDB, D, X, Y, WORK, LWORK,
@ -213,7 +213,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC INT, MAX, MIN INTRINSIC INT, MAX, MIN
@ -252,7 +253,7 @@
LWKMIN = M + N + P LWKMIN = M + N + P
LWKOPT = M + NP + MAX( N, P )*NB LWKOPT = M + NP + MAX( N, P )*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) THEN
INFO = -12 INFO = -12

View File

@ -172,7 +172,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERsolve *> \ingroup gglse
* *
* ===================================================================== * =====================================================================
SUBROUTINE CGGLSE( M, N, P, A, LDA, B, LDB, C, D, X, WORK, LWORK, SUBROUTINE CGGLSE( M, N, P, A, LDA, B, LDB, C, D, X, WORK, LWORK,
@ -207,7 +207,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC INT, MAX, MIN INTRINSIC INT, MAX, MIN
@ -246,7 +247,7 @@
LWKMIN = M + N + P LWKMIN = M + N + P
LWKOPT = P + MN + MAX( M, N )*NB LWKOPT = P + MN + MAX( M, N )*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) THEN
INFO = -12 INFO = -12

View File

@ -173,7 +173,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup ggqrf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -236,7 +236,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC INT, MAX, MIN INTRINSIC INT, MAX, MIN
@ -251,7 +252,7 @@
NB3 = ILAENV( 1, 'CUNMQR', ' ', N, M, P, -1 ) NB3 = ILAENV( 1, 'CUNMQR', ' ', N, M, P, -1 )
NB = MAX( NB1, NB2, NB3 ) NB = MAX( NB1, NB2, NB3 )
LWKOPT = MAX( N, M, P)*NB LWKOPT = MAX( N, M, P)*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
LQUERY = ( LWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 )
IF( N.LT.0 ) THEN IF( N.LT.0 ) THEN
INFO = -1 INFO = -1

View File

@ -172,7 +172,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup ggrqf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -235,7 +235,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC INT, MAX, MIN INTRINSIC INT, MAX, MIN
@ -250,7 +251,7 @@
NB3 = ILAENV( 1, 'CUNMRQ', ' ', M, N, P, -1 ) NB3 = ILAENV( 1, 'CUNMRQ', ' ', M, N, P, -1 )
NB = MAX( NB1, NB2, NB3 ) NB = MAX( NB1, NB2, NB3 )
LWKOPT = MAX( N, M, P)*NB LWKOPT = MAX( N, M, P)*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
LQUERY = ( LWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 )
IF( M.LT.0 ) THEN IF( M.LT.0 ) THEN
INFO = -1 INFO = -1

View File

@ -171,7 +171,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHEReigen *> \ingroup hbev_2stage
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -240,8 +240,9 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV2STAGE INTEGER ILAENV2STAGE
REAL SLAMCH, CLANHB REAL SLAMCH, CLANHB, SROUNDUP_LWORK
EXTERNAL LSAME, SLAMCH, CLANHB, ILAENV2STAGE EXTERNAL LSAME, SLAMCH, CLANHB, ILAENV2STAGE,
$ SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SSCAL, SSTERF, XERBLA, CLASCL, CSTEQR, EXTERNAL SSCAL, SSTERF, XERBLA, CLASCL, CSTEQR,
@ -276,7 +277,7 @@
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
IF( N.LE.1 ) THEN IF( N.LE.1 ) THEN
LWMIN = 1 LWMIN = 1
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
ELSE ELSE
IB = ILAENV2STAGE( 2, 'CHETRD_HB2ST', JOBZ, IB = ILAENV2STAGE( 2, 'CHETRD_HB2ST', JOBZ,
$ N, KD, -1, -1 ) $ N, KD, -1, -1 )
@ -285,7 +286,7 @@
LWTRD = ILAENV2STAGE( 4, 'CHETRD_HB2ST', JOBZ, LWTRD = ILAENV2STAGE( 4, 'CHETRD_HB2ST', JOBZ,
$ N, KD, IB, -1 ) $ N, KD, IB, -1 )
LWMIN = LHTRD + LWTRD LWMIN = LHTRD + LWTRD
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
ENDIF ENDIF
* *
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY )
@ -377,7 +378,7 @@
* *
* Set WORK(1) to optimal workspace size. * Set WORK(1) to optimal workspace size.
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
RETURN RETURN
* *

View File

@ -201,7 +201,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHEReigen *> \ingroup hbevd
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHBEVD( JOBZ, UPLO, N, KD, AB, LDAB, W, Z, LDZ, WORK, SUBROUTINE CHBEVD( JOBZ, UPLO, N, KD, AB, LDAB, W, Z, LDZ, WORK,
@ -239,8 +239,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
REAL CLANHB, SLAMCH REAL CLANHB, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, CLANHB, SLAMCH EXTERNAL LSAME, CLANHB, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEMM, CHBTRD, CLACPY, CLASCL, CSTEDC, SSCAL, EXTERNAL CGEMM, CHBTRD, CLACPY, CLASCL, CSTEDC, SSCAL,
@ -288,7 +288,7 @@
END IF END IF
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
@ -382,7 +382,7 @@
CALL SSCAL( IMAX, ONE / SIGMA, W, 1 ) CALL SSCAL( IMAX, ONE / SIGMA, W, 1 )
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
RETURN RETURN

View File

@ -285,7 +285,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHEReigen *> \ingroup hbevx_2stage
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -367,8 +367,9 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV2STAGE INTEGER ILAENV2STAGE
REAL SLAMCH, CLANHB REAL SLAMCH, CLANHB, SROUNDUP_LWORK
EXTERNAL LSAME, SLAMCH, CLANHB, ILAENV2STAGE EXTERNAL LSAME, SLAMCH, CLANHB, ILAENV2STAGE,
$ SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SCOPY, SSCAL, SSTEBZ, SSTERF, XERBLA, CCOPY, EXTERNAL SCOPY, SSCAL, SSTEBZ, SSTERF, XERBLA, CCOPY,
@ -424,7 +425,7 @@
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
IF( N.LE.1 ) THEN IF( N.LE.1 ) THEN
LWMIN = 1 LWMIN = 1
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
ELSE ELSE
IB = ILAENV2STAGE( 2, 'CHETRD_HB2ST', JOBZ, IB = ILAENV2STAGE( 2, 'CHETRD_HB2ST', JOBZ,
$ N, KD, -1, -1 ) $ N, KD, -1, -1 )
@ -433,7 +434,7 @@
LWTRD = ILAENV2STAGE( 4, 'CHETRD_HB2ST', JOBZ, LWTRD = ILAENV2STAGE( 4, 'CHETRD_HB2ST', JOBZ,
$ N, KD, IB, -1 ) $ N, KD, IB, -1 )
LWMIN = LHTRD + LWTRD LWMIN = LHTRD + LWTRD
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
ENDIF ENDIF
* *
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY )
@ -637,7 +638,7 @@
* *
* Set WORK(1) to optimal workspace size. * Set WORK(1) to optimal workspace size.
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
RETURN RETURN
* *

View File

@ -232,7 +232,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHEReigen *> \ingroup hbgvd
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -275,7 +275,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SSTERF, XERBLA, CGEMM, CHBGST, CHBTRD, CLACPY, EXTERNAL SSTERF, XERBLA, CGEMM, CHBGST, CHBTRD, CLACPY,
@ -322,7 +323,7 @@
END IF END IF
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
@ -388,7 +389,7 @@
CALL CLACPY( 'A', N, N, WORK( INDWK2 ), N, Z, LDZ ) CALL CLACPY( 'A', N, N, WORK( INDWK2 ), N, Z, LDZ )
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
RETURN RETURN

View File

@ -132,7 +132,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup heev
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHEEV( JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, RWORK, SUBROUTINE CHEEV( JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, RWORK,
@ -169,8 +169,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANHE, SLAMCH REAL CLANHE, SLAMCH, SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, CLANHE, SLAMCH EXTERNAL ILAENV, LSAME, CLANHE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHETRD, CLASCL, CSTEQR, CUNGTR, SSCAL, SSTERF, EXTERNAL CHETRD, CLASCL, CSTEQR, CUNGTR, SSCAL, SSTERF,
@ -201,7 +201,7 @@
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( 1, ( NB+1 )*N ) LWKOPT = MAX( 1, ( NB+1 )*N )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.MAX( 1, 2*N-1 ) .AND. .NOT.LQUERY ) IF( LWORK.LT.MAX( 1, 2*N-1 ) .AND. .NOT.LQUERY )
$ INFO = -8 $ INFO = -8
@ -286,7 +286,7 @@
* *
* Set WORK(1) to optimal complex workspace size. * Set WORK(1) to optimal complex workspace size.
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -149,7 +149,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup heev_2stage
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -220,8 +220,9 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV2STAGE INTEGER ILAENV2STAGE
REAL SLAMCH, CLANHE REAL SLAMCH, CLANHE, SROUNDUP_LWORK
EXTERNAL LSAME, SLAMCH, CLANHE, ILAENV2STAGE EXTERNAL LSAME, SLAMCH, CLANHE, ILAENV2STAGE,
$ SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SSCAL, SSTERF, XERBLA, CLASCL, CSTEQR, EXTERNAL SSCAL, SSTERF, XERBLA, CLASCL, CSTEQR,
@ -255,7 +256,7 @@
LHTRD = ILAENV2STAGE( 3, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 ) LHTRD = ILAENV2STAGE( 3, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 )
LWTRD = ILAENV2STAGE( 4, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 ) LWTRD = ILAENV2STAGE( 4, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 )
LWMIN = N + LHTRD + LWTRD LWMIN = N + LHTRD + LWTRD
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY )
$ INFO = -8 $ INFO = -8
@ -343,7 +344,7 @@
* *
* Set WORK(1) to optimal complex workspace size. * Set WORK(1) to optimal complex workspace size.
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
RETURN RETURN
* *

View File

@ -180,7 +180,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup heevd
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -230,8 +230,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANHE, SLAMCH REAL CLANHE, SLAMCH, SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, CLANHE, SLAMCH EXTERNAL ILAENV, LSAME, CLANHE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHETRD, CLACPY, CLASCL, CSTEDC, CUNMTR, SSCAL, EXTERNAL CHETRD, CLACPY, CLASCL, CSTEDC, CUNMTR, SSCAL,
@ -282,7 +282,7 @@
LROPT = LRWMIN LROPT = LRWMIN
LIOPT = LIWMIN LIOPT = LIWMIN
END IF END IF
WORK( 1 ) = LOPT WORK( 1 ) = SROUNDUP_LWORK(LOPT)
RWORK( 1 ) = LROPT RWORK( 1 ) = LROPT
IWORK( 1 ) = LIOPT IWORK( 1 ) = LIOPT
* *
@ -378,7 +378,7 @@
CALL SSCAL( IMAX, ONE / SIGMA, W, 1 ) CALL SSCAL( IMAX, ONE / SIGMA, W, 1 )
END IF END IF
* *
WORK( 1 ) = LOPT WORK( 1 ) = SROUNDUP_LWORK(LOPT)
RWORK( 1 ) = LROPT RWORK( 1 ) = LROPT
IWORK( 1 ) = LIOPT IWORK( 1 ) = LIOPT
* *

View File

@ -338,7 +338,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup heevr
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -392,8 +392,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANSY, SLAMCH REAL CLANSY, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, CLANSY, SLAMCH EXTERNAL LSAME, ILAENV, CLANSY, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHETRD, CSSCAL, CSTEMR, CSTEIN, CSWAP, CUNMTR, EXTERNAL CHETRD, CSSCAL, CSTEMR, CSTEIN, CSWAP, CUNMTR,
@ -454,7 +454,7 @@
NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 )
NB = MAX( NB, ILAENV( 1, 'CUNMTR', UPLO, N, -1, -1, -1 ) ) NB = MAX( NB, ILAENV( 1, 'CUNMTR', UPLO, N, -1, -1, -1 ) )
LWKOPT = MAX( ( NB+1 )*N, LWMIN ) LWKOPT = MAX( ( NB+1 )*N, LWMIN )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
@ -710,7 +710,7 @@
* *
* Set WORK(1) to optimal workspace size. * Set WORK(1) to optimal workspace size.
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *

View File

@ -250,7 +250,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup heevx
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHEEVX( JOBZ, RANGE, UPLO, N, A, LDA, VL, VU, IL, IU, SUBROUTINE CHEEVX( JOBZ, RANGE, UPLO, N, A, LDA, VL, VU, IL, IU,
@ -294,8 +294,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL SLAMCH, CLANHE REAL SLAMCH, CLANHE, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SLAMCH, CLANHE EXTERNAL LSAME, ILAENV, SLAMCH, CLANHE, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SCOPY, SSCAL, SSTEBZ, SSTERF, XERBLA, CSSCAL, EXTERNAL SCOPY, SSCAL, SSTEBZ, SSTERF, XERBLA, CSSCAL,
@ -354,7 +354,7 @@
NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 )
NB = MAX( NB, ILAENV( 1, 'CUNMTR', UPLO, N, -1, -1, -1 ) ) NB = MAX( NB, ILAENV( 1, 'CUNMTR', UPLO, N, -1, -1, -1 ) )
LWKOPT = MAX( 1, ( NB + 1 )*N ) LWKOPT = MAX( 1, ( NB + 1 )*N )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY )
@ -552,7 +552,7 @@
* *
* Set WORK(1) to optimal complex workspace size. * Set WORK(1) to optimal complex workspace size.
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -265,7 +265,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup heevx_2stage
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -343,8 +343,9 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV2STAGE INTEGER ILAENV2STAGE
REAL SLAMCH, CLANHE REAL SLAMCH, CLANHE, SROUNDUP_LWORK
EXTERNAL LSAME, SLAMCH, CLANHE, ILAENV2STAGE EXTERNAL LSAME, SLAMCH, CLANHE, ILAENV2STAGE,
$ SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL SCOPY, SSCAL, SSTEBZ, SSTERF, XERBLA, CSSCAL, EXTERNAL SCOPY, SSCAL, SSTEBZ, SSTERF, XERBLA, CSSCAL,
@ -397,7 +398,7 @@
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
IF( N.LE.1 ) THEN IF( N.LE.1 ) THEN
LWMIN = 1 LWMIN = 1
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
ELSE ELSE
KD = ILAENV2STAGE( 1, 'CHETRD_2STAGE', JOBZ, KD = ILAENV2STAGE( 1, 'CHETRD_2STAGE', JOBZ,
$ N, -1, -1, -1 ) $ N, -1, -1, -1 )
@ -408,7 +409,7 @@
LWTRD = ILAENV2STAGE( 4, 'CHETRD_2STAGE', JOBZ, LWTRD = ILAENV2STAGE( 4, 'CHETRD_2STAGE', JOBZ,
$ N, KD, IB, -1 ) $ N, KD, IB, -1 )
LWMIN = N + LHTRD + LWTRD LWMIN = N + LHTRD + LWTRD
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
END IF END IF
* *
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY )
@ -610,7 +611,7 @@
* *
* Set WORK(1) to optimal complex workspace size. * Set WORK(1) to optimal complex workspace size.
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
RETURN RETURN
* *

View File

@ -173,7 +173,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup hegv
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHEGV( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK, SUBROUTINE CHEGV( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK,
@ -206,7 +206,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV, LSAME REAL SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHEEV, CHEGST, CPOTRF, CTRMM, CTRSM, XERBLA EXTERNAL CHEEV, CHEGST, CPOTRF, CTRMM, CTRSM, XERBLA
@ -240,7 +241,7 @@
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( 1, ( NB + 1 )*N ) LWKOPT = MAX( 1, ( NB + 1 )*N )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.MAX( 1, 2*N-1 ) .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MAX( 1, 2*N-1 ) .AND. .NOT.LQUERY ) THEN
INFO = -11 INFO = -11
@ -309,7 +310,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -192,7 +192,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup hegv_2stage
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -259,7 +259,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV2STAGE INTEGER ILAENV2STAGE
EXTERNAL LSAME, ILAENV2STAGE REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV2STAGE, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CHEGST, CPOTRF, CTRMM, CTRSM, EXTERNAL XERBLA, CHEGST, CPOTRF, CTRMM, CTRSM,
@ -297,7 +298,7 @@
LHTRD = ILAENV2STAGE( 3, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 ) LHTRD = ILAENV2STAGE( 3, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 )
LWTRD = ILAENV2STAGE( 4, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 ) LWTRD = ILAENV2STAGE( 4, 'CHETRD_2STAGE', JOBZ, N, KD, IB, -1 )
LWMIN = N + LHTRD + LWTRD LWMIN = N + LHTRD + LWTRD
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
INFO = -11 INFO = -11
@ -367,7 +368,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
RETURN RETURN
* *

View File

@ -219,7 +219,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup hegvd
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -268,7 +268,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHEEVD, CHEGST, CPOTRF, CTRMM, CTRSM, XERBLA EXTERNAL CHEEVD, CHEGST, CPOTRF, CTRMM, CTRSM, XERBLA
@ -316,7 +317,7 @@
END IF END IF
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
WORK( 1 ) = LOPT WORK( 1 ) = SROUNDUP_LWORK(LOPT)
RWORK( 1 ) = LROPT RWORK( 1 ) = LROPT
IWORK( 1 ) = LIOPT IWORK( 1 ) = LIOPT
* *
@ -392,7 +393,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = LOPT WORK( 1 ) = SROUNDUP_LWORK(LOPT)
RWORK( 1 ) = LROPT RWORK( 1 ) = LROPT
IWORK( 1 ) = LIOPT IWORK( 1 ) = LIOPT
* *

View File

@ -293,7 +293,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEeigen *> \ingroup hegvx
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -335,7 +335,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV, LSAME REAL SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHEEVX, CHEGST, CPOTRF, CTRMM, CTRSM, XERBLA EXTERNAL CHEEVX, CHEGST, CPOTRF, CTRMM, CTRSM, XERBLA
@ -390,7 +391,7 @@
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRD', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( 1, ( NB + 1 )*N ) LWKOPT = MAX( 1, ( NB + 1 )*N )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.MAX( 1, 2*N ) .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MAX( 1, 2*N ) .AND. .NOT.LQUERY ) THEN
INFO = -20 INFO = -20
@ -464,7 +465,7 @@
* *
* Set WORK(1) to optimal complex workspace size. * Set WORK(1) to optimal complex workspace size.
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -163,7 +163,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEsolve *> \ingroup hesv
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHESV( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, SUBROUTINE CHESV( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
@ -191,7 +191,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CHETRF, CHETRS, CHETRS2 EXTERNAL XERBLA, CHETRF, CHETRS, CHETRS2
@ -226,7 +227,7 @@
NB = ILAENV( 1, 'CHETRF', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRF', UPLO, N, -1, -1, -1 )
LWKOPT = N*NB LWKOPT = N*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -259,7 +260,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -154,7 +154,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEsolve *> \ingroup hesv_aa
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHESV_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, SUBROUTINE CHESV_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
@ -182,7 +182,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CHETRF_AA, CHETRS_AA EXTERNAL XERBLA, CHETRF_AA, CHETRS_AA
@ -217,7 +218,7 @@
$ -1, INFO ) $ -1, INFO )
LWKOPT_HETRS = INT( WORK(1) ) LWKOPT_HETRS = INT( WORK(1) )
LWKOPT = MAX( LWKOPT_HETRF, LWKOPT_HETRS ) LWKOPT = MAX( LWKOPT_HETRF, LWKOPT_HETRS )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -239,7 +240,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -177,7 +177,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hesv_aa_2stage
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHESV_AA_2STAGE( UPLO, N, NRHS, A, LDA, TB, LTB, SUBROUTINE CHESV_AA_2STAGE( UPLO, N, NRHS, A, LDA, TB, LTB,
@ -207,7 +207,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHETRF_AA_2STAGE, CHETRS_AA_2STAGE, EXTERNAL CHETRF_AA_2STAGE, CHETRS_AA_2STAGE,
@ -267,7 +268,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -205,7 +205,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEsolve *> \ingroup hesv_rk
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -247,7 +247,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CHETRF_RK, CHETRS_3 EXTERNAL XERBLA, CHETRF_RK, CHETRS_3
@ -282,7 +283,7 @@
CALL CHETRF_RK( UPLO, N, A, LDA, E, IPIV, WORK, -1, INFO ) CALL CHETRF_RK( UPLO, N, A, LDA, E, IPIV, WORK, -1, INFO )
LWKOPT = INT( WORK( 1 ) ) LWKOPT = INT( WORK( 1 ) )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -304,7 +305,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -184,7 +184,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEsolve *> \ingroup hesv_rook
*> *>
*> \verbatim *> \verbatim
*> *>
@ -225,7 +225,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CHETRF_ROOK, CHETRS_ROOK EXTERNAL XERBLA, CHETRF_ROOK, CHETRS_ROOK
@ -260,7 +261,7 @@
NB = ILAENV( 1, 'CHETRF_ROOK', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRF_ROOK', UPLO, N, -1, -1, -1 )
LWKOPT = N*NB LWKOPT = N*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -283,7 +284,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -276,7 +276,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEsolve *> \ingroup hesvx
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHESVX( FACT, UPLO, N, NRHS, A, LDA, AF, LDAF, IPIV, B, SUBROUTINE CHESVX( FACT, UPLO, N, NRHS, A, LDA, AF, LDAF, IPIV, B,
@ -313,8 +313,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANHE, SLAMCH REAL CLANHE, SLAMCH, SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, CLANHE, SLAMCH EXTERNAL ILAENV, LSAME, CLANHE, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHECON, CHERFS, CHETRF, CHETRS, CLACPY, XERBLA EXTERNAL CHECON, CHERFS, CHETRF, CHETRS, CLACPY, XERBLA
@ -356,7 +356,7 @@
NB = ILAENV( 1, 'CHETRF', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRF', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( LWKOPT, N*NB ) LWKOPT = MAX( LWKOPT, N*NB )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -405,7 +405,7 @@
IF( RCOND.LT.SLAMCH( 'Epsilon' ) ) IF( RCOND.LT.SLAMCH( 'Epsilon' ) )
$ INFO = N + 1 $ INFO = N + 1
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -188,7 +188,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup hetrd_hb2st
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -278,7 +278,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV2STAGE INTEGER ILAENV2STAGE
EXTERNAL LSAME, ILAENV2STAGE REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV2STAGE, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -318,7 +319,7 @@
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
HOUS( 1 ) = LHMIN HOUS( 1 ) = LHMIN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -575,7 +576,7 @@ C END IF
ENDIF ENDIF
* *
HOUS( 1 ) = LHMIN HOUS( 1 ) = LHMIN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RETURN RETURN
* *
* End of CHETRD_HB2ST * End of CHETRD_HB2ST

View File

@ -158,7 +158,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEcomputational *> \ingroup hetrd_he2hb
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -283,7 +283,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV2STAGE INTEGER ILAENV2STAGE
EXTERNAL LSAME, ILAENV2STAGE REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV2STAGE, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -313,7 +314,7 @@
CALL XERBLA( 'CHETRD_HE2HB', -INFO ) CALL XERBLA( 'CHETRD_HE2HB', -INFO )
RETURN RETURN
ELSE IF( LQUERY ) THEN ELSE IF( LQUERY ) THEN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RETURN RETURN
END IF END IF
* *
@ -506,7 +507,7 @@
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RETURN RETURN
* *
* End of CHETRD_HE2HB * End of CHETRD_HE2HB

View File

@ -130,7 +130,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEcomputational *> \ingroup hetrf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -197,7 +197,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHETF2, CLAHEF, XERBLA EXTERNAL CHETF2, CLAHEF, XERBLA
@ -228,7 +229,7 @@
* *
NB = ILAENV( 1, 'CHETRF', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRF', UPLO, N, -1, -1, -1 )
LWKOPT = N*NB LWKOPT = N*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -346,7 +347,7 @@
END IF END IF
* *
40 CONTINUE 40 CONTINUE
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CHETRF * End of CHETRF

View File

@ -125,7 +125,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEcomputational *> \ingroup hetrf_aa
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHETRF_AA( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO) SUBROUTINE CHETRF_AA( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
@ -159,7 +159,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLAHEF_AA, CGEMM, CCOPY, CSWAP, CSCAL, XERBLA EXTERNAL CLAHEF_AA, CGEMM, CCOPY, CSWAP, CSCAL, XERBLA
@ -190,7 +191,7 @@
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
LWKOPT = (NB+1)*N LWKOPT = (NB+1)*N
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -459,7 +460,7 @@
END IF END IF
* *
20 CONTINUE 20 CONTINUE
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CHETRF_AA * End of CHETRF_AA

View File

@ -229,7 +229,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEcomputational *> \ingroup hetrf_rk
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -280,7 +280,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLAHEF_RK, CHETF2_RK, CSWAP, XERBLA EXTERNAL CLAHEF_RK, CHETF2_RK, CSWAP, XERBLA
@ -311,7 +312,7 @@
* *
NB = ILAENV( 1, 'CHETRF_RK', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRF_RK', UPLO, N, -1, -1, -1 )
LWKOPT = N*NB LWKOPT = N*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -487,7 +488,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CHETRF_RK * End of CHETRF_RK

View File

@ -150,7 +150,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEcomputational *> \ingroup hetrf_rook
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -232,7 +232,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLAHEF_ROOK, CHETF2_ROOK, XERBLA EXTERNAL CLAHEF_ROOK, CHETF2_ROOK, XERBLA
@ -263,7 +264,7 @@
* *
NB = ILAENV( 1, 'CHETRF_ROOK', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CHETRF_ROOK', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( 1, N*NB ) LWKOPT = MAX( 1, N*NB )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -386,7 +387,7 @@
END IF END IF
* *
40 CONTINUE 40 CONTINUE
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CHETRF_ROOK * End of CHETRF_ROOK

View File

@ -152,7 +152,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEcomputational *> \ingroup hetri_3
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -190,7 +190,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHETRI_3X, XERBLA EXTERNAL CHETRI_3X, XERBLA
@ -225,7 +226,7 @@
CALL XERBLA( 'CHETRI_3', -INFO ) CALL XERBLA( 'CHETRI_3', -INFO )
RETURN RETURN
ELSE IF( LQUERY ) THEN ELSE IF( LQUERY ) THEN
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
END IF END IF
* *
@ -236,7 +237,7 @@
* *
CALL CHETRI_3X( UPLO, N, A, LDA, E, IPIV, WORK, NB, INFO ) CALL CHETRI_3X( UPLO, N, A, LDA, E, IPIV, WORK, NB, INFO )
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -123,7 +123,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexHEcomputational *> \ingroup hetrs_aa
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHETRS_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, SUBROUTINE CHETRS_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB,
@ -155,7 +155,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME,SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLACPY, CLACGV, CGTSV, CSWAP, CTRSM, XERBLA EXTERNAL CLACPY, CLACGV, CGTSV, CSWAP, CTRSM, XERBLA
@ -186,7 +187,7 @@
RETURN RETURN
ELSE IF( LQUERY ) THEN ELSE IF( LQUERY ) THEN
LWKOPT = (3*N-2) LWKOPT = (3*N-2)
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
END IF END IF
* *

View File

@ -186,7 +186,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHEReigen *> \ingroup hpevd
* *
* ===================================================================== * =====================================================================
SUBROUTINE CHPEVD( JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, LWORK, SUBROUTINE CHPEVD( JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, LWORK,
@ -223,8 +223,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
REAL CLANHP, SLAMCH REAL CLANHP, SLAMCH, SROUNDUP_LWORK
EXTERNAL LSAME, CLANHP, SLAMCH EXTERNAL LSAME, CLANHP, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHPTRD, CSSCAL, CSTEDC, CUPMTR, SSCAL, SSTERF, EXTERNAL CHPTRD, CSSCAL, CSTEDC, CUPMTR, SSCAL, SSTERF,
@ -268,7 +268,7 @@
LIWMIN = 1 LIWMIN = 1
END IF END IF
END IF END IF
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
@ -359,7 +359,7 @@
CALL SSCAL( IMAX, ONE / SIGMA, W, 1 ) CALL SSCAL( IMAX, ONE / SIGMA, W, 1 )
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
RETURN RETURN

View File

@ -212,7 +212,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHEReigen *> \ingroup hpgvd
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -246,7 +246,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHPEVD, CHPGST, CPPTRF, CTPMV, CTPSV, XERBLA EXTERNAL CHPEVD, CHPGST, CPPTRF, CTPMV, CTPSV, XERBLA
@ -292,7 +293,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
@ -374,7 +375,7 @@
END IF END IF
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
RETURN RETURN

View File

@ -216,7 +216,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup hseqr
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -343,7 +343,8 @@
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
LOGICAL LSAME LOGICAL LSAME
EXTERNAL ILAENV, LSAME REAL SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CCOPY, CLACPY, CLAHQR, CLAQR0, CLASET, XERBLA EXTERNAL CCOPY, CLACPY, CLAHQR, CLAQR0, CLASET, XERBLA

View File

@ -189,6 +189,8 @@
*> SIAM J. Sci. Comput, vol. 34, no. 1, 2012 *> SIAM J. Sci. Comput, vol. 34, no. 1, 2012
*> \endverbatim *> \endverbatim
*> *>
*> \ingroup lamswlq
*>
* ===================================================================== * =====================================================================
SUBROUTINE CLAMSWLQ( SIDE, TRANS, M, N, K, MB, NB, A, LDA, T, SUBROUTINE CLAMSWLQ( SIDE, TRANS, M, N, K, MB, NB, A, LDA, T,
$ LDT, C, LDC, WORK, LWORK, INFO ) $ LDT, C, LDC, WORK, LWORK, INFO )
@ -215,7 +217,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CTPMLQT, CGEMLQT, XERBLA EXTERNAL CTPMLQT, CGEMLQT, XERBLA
* .. * ..
@ -259,10 +262,10 @@
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
CALL XERBLA( 'CLAMSWLQ', -INFO ) CALL XERBLA( 'CLAMSWLQ', -INFO )
WORK(1) = LW WORK(1) = SROUNDUP_LWORK(LW)
RETURN RETURN
ELSE IF (LQUERY) THEN ELSE IF (LQUERY) THEN
WORK(1) = LW WORK(1) = SROUNDUP_LWORK(LW)
RETURN RETURN
END IF END IF
* *
@ -401,7 +404,7 @@
* *
END IF END IF
* *
WORK(1) = LW WORK(1) = SROUNDUP_LWORK(LW)
RETURN RETURN
* *
* End of CLAMSWLQ * End of CLAMSWLQ

View File

@ -191,6 +191,8 @@
*> SIAM J. Sci. Comput, vol. 34, no. 1, 2012 *> SIAM J. Sci. Comput, vol. 34, no. 1, 2012
*> \endverbatim *> \endverbatim
*> *>
*> \ingroup lamtsqr
*>
* ===================================================================== * =====================================================================
SUBROUTINE CLAMTSQR( SIDE, TRANS, M, N, K, MB, NB, A, LDA, T, SUBROUTINE CLAMTSQR( SIDE, TRANS, M, N, K, MB, NB, A, LDA, T,
$ LDT, C, LDC, WORK, LWORK, INFO ) $ LDT, C, LDC, WORK, LWORK, INFO )
@ -217,7 +219,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEMQRT, CTPMQRT, XERBLA EXTERNAL CGEMQRT, CTPMQRT, XERBLA
* .. * ..
@ -264,7 +267,7 @@
* Determine the block size if it is tall skinny or short and wide * Determine the block size if it is tall skinny or short and wide
* *
IF( INFO.EQ.0) THEN IF( INFO.EQ.0) THEN
WORK(1) = LW WORK(1) = SROUNDUP_LWORK(LW)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -409,7 +412,7 @@
* *
END IF END IF
* *
WORK(1) = LW WORK(1) = SROUNDUP_LWORK(LW)
RETURN RETURN
* *
* End of CLAMTSQR * End of CLAMTSQR

View File

@ -159,6 +159,8 @@
*> SIAM J. Sci. Comput, vol. 34, no. 1, 2012 *> SIAM J. Sci. Comput, vol. 34, no. 1, 2012
*> \endverbatim *> \endverbatim
*> *>
*> \ingroup laswlq
*>
* ===================================================================== * =====================================================================
SUBROUTINE CLASWLQ( M, N, MB, NB, A, LDA, T, LDT, WORK, LWORK, SUBROUTINE CLASWLQ( M, N, MB, NB, A, LDA, T, LDT, WORK, LWORK,
$ INFO) $ INFO)
@ -183,16 +185,14 @@
* .. * ..
* .. EXTERNAL FUNCTIONS .. * .. EXTERNAL FUNCTIONS ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME INTEGER ILAENV
REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. EXTERNAL SUBROUTINES .. * .. EXTERNAL SUBROUTINES ..
EXTERNAL CGELQT, CTPLQT, XERBLA EXTERNAL CGELQT, CTPLQT, XERBLA
* .. INTRINSIC FUNCTIONS .. * .. INTRINSIC FUNCTIONS ..
INTRINSIC MAX, MIN, MOD INTRINSIC MAX, MIN, MOD
* .. * ..
* .. EXTERNAL FUNCTIONS ..
INTEGER ILAENV
EXTERNAL ILAENV
* ..
* .. EXECUTABLE STATEMENTS .. * .. EXECUTABLE STATEMENTS ..
* *
* TEST THE INPUT ARGUMENTS * TEST THE INPUT ARGUMENTS
@ -217,7 +217,7 @@
INFO = -10 INFO = -10
END IF END IF
IF( INFO.EQ.0) THEN IF( INFO.EQ.0) THEN
WORK(1) = MB*M WORK(1) = SROUNDUP_LWORK(MB*M)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -266,7 +266,7 @@
$ WORK, INFO ) $ WORK, INFO )
END IF END IF
* *
WORK( 1 ) = M * MB WORK( 1 ) = SROUNDUP_LWORK(M * MB)
RETURN RETURN
* *
* End of CLASWLQ * End of CLASWLQ

View File

@ -161,6 +161,8 @@
*> SIAM J. Sci. Comput, vol. 34, no. 1, 2012 *> SIAM J. Sci. Comput, vol. 34, no. 1, 2012
*> \endverbatim *> \endverbatim
*> *>
*> \ingroup latsqr
*>
* ===================================================================== * =====================================================================
SUBROUTINE CLATSQR( M, N, MB, NB, A, LDA, T, LDT, WORK, SUBROUTINE CLATSQR( M, N, MB, NB, A, LDA, T, LDT, WORK,
$ LWORK, INFO) $ LWORK, INFO)
@ -185,7 +187,8 @@
* .. * ..
* .. EXTERNAL FUNCTIONS .. * .. EXTERNAL FUNCTIONS ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. EXTERNAL SUBROUTINES .. * .. EXTERNAL SUBROUTINES ..
EXTERNAL CGEQRT, CTPQRT, XERBLA EXTERNAL CGEQRT, CTPQRT, XERBLA
* .. INTRINSIC FUNCTIONS .. * .. INTRINSIC FUNCTIONS ..
@ -215,7 +218,7 @@
INFO = -10 INFO = -10
END IF END IF
IF( INFO.EQ.0) THEN IF( INFO.EQ.0) THEN
WORK(1) = NB*N WORK(1) = SROUNDUP_LWORK(NB*N)
END IF END IF
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
CALL XERBLA( 'CLATSQR', -INFO ) CALL XERBLA( 'CLATSQR', -INFO )
@ -262,7 +265,7 @@
$ WORK, INFO ) $ WORK, INFO )
END IF END IF
* *
work( 1 ) = N*NB WORK( 1 ) = SROUNDUP_LWORK(N*NB)
RETURN RETURN
* *
* End of CLATSQR * End of CLATSQR

View File

@ -192,7 +192,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup stedc
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -233,8 +233,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL SLAMCH, SLANST REAL SLAMCH, SLANST, SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, SLAMCH, SLANST EXTERNAL ILAENV, LSAME, SLAMCH, SLANST, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CLACPY, CLACRM, CLAED0, CSTEQR, CSWAP, EXTERNAL XERBLA, CLACPY, CLACRM, CLAED0, CSTEQR, CSWAP,
@ -295,7 +295,7 @@
LRWMIN = 1 + 4*N + 2*N**2 LRWMIN = 1 + 4*N + 2*N**2
LIWMIN = 3 + 5*N LIWMIN = 3 + 5*N
END IF END IF
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
@ -466,7 +466,7 @@
END IF END IF
* *
70 CONTINUE 70 CONTINUE
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RWORK( 1 ) = LRWMIN RWORK( 1 ) = LRWMIN
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *

View File

@ -376,8 +376,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
REAL SLAMCH, SLANST REAL SLAMCH, SLANST, SROUNDUP_LWORK
EXTERNAL LSAME, SLAMCH, SLANST EXTERNAL LSAME, SLAMCH, SLANST, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLARRV, CSWAP, SCOPY, SLAE2, SLAEV2, SLARRC, EXTERNAL CLARRV, CSWAP, SCOPY, SLAE2, SLAEV2, SLARRC,
@ -462,7 +462,7 @@
RMAX = MIN( SQRT( BIGNUM ), ONE / SQRT( SQRT( SAFMIN ) ) ) RMAX = MIN( SQRT( BIGNUM ), ONE / SQRT( SQRT( SAFMIN ) ) )
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
IF( WANTZ .AND. ALLEIG ) THEN IF( WANTZ .AND. ALLEIG ) THEN
@ -801,7 +801,7 @@
ENDIF ENDIF
* *
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
RETURN RETURN
* *

View File

@ -163,7 +163,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYsolve *> \ingroup hesv
* *
* ===================================================================== * =====================================================================
SUBROUTINE CSYSV( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, SUBROUTINE CSYSV( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
@ -190,7 +190,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CSYTRF, CSYTRS, CSYTRS2 EXTERNAL XERBLA, CSYTRF, CSYTRS, CSYTRS2
@ -225,7 +226,7 @@
CALL CSYTRF( UPLO, N, A, LDA, IPIV, WORK, -1, INFO ) CALL CSYTRF( UPLO, N, A, LDA, IPIV, WORK, -1, INFO )
LWKOPT = INT( WORK( 1 ) ) LWKOPT = INT( WORK( 1 ) )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -258,7 +259,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -154,7 +154,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYsolve *> \ingroup hesv_aa
* *
* ===================================================================== * =====================================================================
SUBROUTINE CSYSV_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, SUBROUTINE CSYSV_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
@ -182,7 +182,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV, LSAME REAL SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CSYTRF_AA, CSYTRS_AA EXTERNAL XERBLA, CSYTRF_AA, CSYTRS_AA
@ -217,7 +218,7 @@
$ -1, INFO ) $ -1, INFO )
LWKOPT_SYTRS = INT( WORK(1) ) LWKOPT_SYTRS = INT( WORK(1) )
LWKOPT = MAX( LWKOPT_SYTRF, LWKOPT_SYTRS ) LWKOPT = MAX( LWKOPT_SYTRF, LWKOPT_SYTRS )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -239,7 +240,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -177,7 +177,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hesv_aa_2stage
* *
* ===================================================================== * =====================================================================
SUBROUTINE CSYSV_AA_2STAGE( UPLO, N, NRHS, A, LDA, TB, LTB, SUBROUTINE CSYSV_AA_2STAGE( UPLO, N, NRHS, A, LDA, TB, LTB,
@ -207,7 +207,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CSYTRF_AA_2STAGE, EXTERNAL CSYTRF_AA_2STAGE,
@ -267,7 +268,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -205,7 +205,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYsolve *> \ingroup hesv_rk
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -247,7 +247,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CSYTRF_RK, CSYTRS_3 EXTERNAL XERBLA, CSYTRF_RK, CSYTRS_3
@ -282,7 +283,7 @@
CALL CSYTRF_RK( UPLO, N, A, LDA, E, IPIV, WORK, -1, INFO ) CALL CSYTRF_RK( UPLO, N, A, LDA, E, IPIV, WORK, -1, INFO )
LWKOPT = INT( WORK( 1 ) ) LWKOPT = INT( WORK( 1 ) )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -304,7 +305,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -181,7 +181,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYsolve *> \ingroup hesv_rook
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -223,7 +223,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CSYTRF_ROOK, CSYTRS_ROOK EXTERNAL XERBLA, CSYTRF_ROOK, CSYTRS_ROOK
@ -258,7 +259,7 @@
CALL CSYTRF_ROOK( UPLO, N, A, LDA, IPIV, WORK, -1, INFO ) CALL CSYTRF_ROOK( UPLO, N, A, LDA, IPIV, WORK, -1, INFO )
LWKOPT = INT( WORK( 1 ) ) LWKOPT = INT( WORK( 1 ) )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -281,7 +282,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -276,7 +276,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYsolve *> \ingroup hesvx
* *
* ===================================================================== * =====================================================================
SUBROUTINE CSYSVX( FACT, UPLO, N, NRHS, A, LDA, AF, LDAF, IPIV, B, SUBROUTINE CSYSVX( FACT, UPLO, N, NRHS, A, LDA, AF, LDAF, IPIV, B,
@ -313,8 +313,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
REAL CLANSY, SLAMCH REAL CLANSY, SLAMCH, SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, CLANSY, SLAMCH EXTERNAL ILAENV, LSAME, CLANSY, SLAMCH, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLACPY, CSYCON, CSYRFS, CSYTRF, CSYTRS, XERBLA EXTERNAL CLACPY, CSYCON, CSYRFS, CSYTRF, CSYTRS, XERBLA
@ -356,7 +356,7 @@
NB = ILAENV( 1, 'CSYTRF', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CSYTRF', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( LWKOPT, N*NB ) LWKOPT = MAX( LWKOPT, N*NB )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -405,7 +405,7 @@
IF( RCOND.LT.SLAMCH( 'Epsilon' ) ) IF( RCOND.LT.SLAMCH( 'Epsilon' ) )
$ INFO = N + 1 $ INFO = N + 1
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -135,7 +135,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hetrf
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -202,7 +202,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLASYF, CSYTF2, XERBLA EXTERNAL CLASYF, CSYTF2, XERBLA
@ -233,7 +234,7 @@
* *
NB = ILAENV( 1, 'CSYTRF', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CSYTRF', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( 1, N*NB ) LWKOPT = MAX( 1, N*NB )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -351,7 +352,7 @@
END IF END IF
* *
40 CONTINUE 40 CONTINUE
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CSYTRF * End of CSYTRF

View File

@ -125,7 +125,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hetrf_aa
* *
* ===================================================================== * =====================================================================
SUBROUTINE CSYTRF_AA( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO) SUBROUTINE CSYTRF_AA( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
@ -159,7 +159,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLASYF_AA, CGEMM, CGEMV, CSCAL, CSWAP, CCOPY, EXTERNAL CLASYF_AA, CGEMM, CGEMV, CSCAL, CSWAP, CCOPY,
@ -191,7 +192,7 @@
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
LWKOPT = (NB+1)*N LWKOPT = (NB+1)*N
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -457,7 +458,7 @@
END IF END IF
* *
20 CONTINUE 20 CONTINUE
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CSYTRF_AA * End of CSYTRF_AA

View File

@ -152,7 +152,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hetrf_aa_2stage
* *
* ===================================================================== * =====================================================================
SUBROUTINE CSYTRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV, SUBROUTINE CSYTRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
@ -188,7 +188,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CCOPY, CGBTRF, CGEMM, CGETRF, CLACPY, EXTERNAL CCOPY, CGBTRF, CGEMM, CGETRF, CLACPY,
@ -230,7 +231,7 @@
TB( 1 ) = (3*NB+1)*N TB( 1 ) = (3*NB+1)*N
END IF END IF
IF( WQUERY ) THEN IF( WQUERY ) THEN
WORK( 1 ) = N*NB WORK( 1 ) = SROUNDUP_LWORK(N*NB)
END IF END IF
END IF END IF
IF( TQUERY .OR. WQUERY ) THEN IF( TQUERY .OR. WQUERY ) THEN

View File

@ -229,7 +229,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hetrf_rk
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -280,7 +280,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLASYF_RK, CSYTF2_RK, CSWAP, XERBLA EXTERNAL CLASYF_RK, CSYTF2_RK, CSWAP, XERBLA
@ -311,7 +312,7 @@
* *
NB = ILAENV( 1, 'CSYTRF_RK', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CSYTRF_RK', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( 1, N*NB ) LWKOPT = MAX( 1, N*NB )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -487,7 +488,7 @@
* *
END IF END IF
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CSYTRF_RK * End of CSYTRF_RK

View File

@ -146,7 +146,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hetrf_rook
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -228,7 +228,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLASYF_ROOK, CSYTF2_ROOK, XERBLA EXTERNAL CLASYF_ROOK, CSYTF2_ROOK, XERBLA
@ -259,7 +260,7 @@
* *
NB = ILAENV( 1, 'CSYTRF_ROOK', UPLO, N, -1, -1, -1 ) NB = ILAENV( 1, 'CSYTRF_ROOK', UPLO, N, -1, -1, -1 )
LWKOPT = MAX( 1, N*NB ) LWKOPT = MAX( 1, N*NB )
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -382,7 +383,7 @@
END IF END IF
* *
40 CONTINUE 40 CONTINUE
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CSYTRF_ROOK * End of CSYTRF_ROOK

View File

@ -152,7 +152,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hetri_3
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -190,7 +190,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CSYTRI_3X, XERBLA EXTERNAL CSYTRI_3X, XERBLA
@ -225,7 +226,7 @@
CALL XERBLA( 'CSYTRI_3', -INFO ) CALL XERBLA( 'CSYTRI_3', -INFO )
RETURN RETURN
ELSE IF( LQUERY ) THEN ELSE IF( LQUERY ) THEN
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
END IF END IF
* *
@ -236,7 +237,7 @@
* *
CALL CSYTRI_3X( UPLO, N, A, LDA, E, IPIV, WORK, NB, INFO ) CALL CSYTRI_3X( UPLO, N, A, LDA, E, IPIV, WORK, NB, INFO )
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -123,7 +123,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup hetrs_aa
* *
* ===================================================================== * =====================================================================
SUBROUTINE CSYTRS_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, SUBROUTINE CSYTRS_AA( UPLO, N, NRHS, A, LDA, IPIV, B, LDB,
@ -155,7 +155,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLACPY, CGTSV, CSWAP, CTRSM, XERBLA EXTERNAL CLACPY, CGTSV, CSWAP, CTRSM, XERBLA
@ -186,7 +187,7 @@
RETURN RETURN
ELSE IF( LQUERY ) THEN ELSE IF( LQUERY ) THEN
LWKOPT = (3*N-2) LWKOPT = (3*N-2)
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
END IF END IF
* *

View File

@ -290,7 +290,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup tgsen
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -467,6 +467,10 @@
* .. Local Arrays .. * .. Local Arrays ..
INTEGER ISAVE( 3 ) INTEGER ISAVE( 3 )
* .. * ..
* .. External Functions ..
REAL SROUNDUP_LWORK
EXTERNAL SROUNDUP_LWORK
* ..
* .. External Subroutines .. * .. External Subroutines ..
REAL SLAMCH REAL SLAMCH
EXTERNAL CLACN2, CLACPY, CLASSQ, CSCAL, CTGEXC, CTGSYL, EXTERNAL CLACN2, CLACPY, CLASSQ, CSCAL, CTGEXC, CTGSYL,
@ -537,7 +541,7 @@
LIWMIN = 1 LIWMIN = 1
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
@ -771,7 +775,7 @@
* *
70 CONTINUE 70 CONTINUE
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
IWORK( 1 ) = LIWMIN IWORK( 1 ) = LIWMIN
* *
RETURN RETURN

View File

@ -213,7 +213,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup tgsna
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -343,12 +343,13 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
REAL SCNRM2, SLAMCH, SLAPY2 REAL SCNRM2, SLAMCH, SLAPY2, SROUNDUP_LWORK
COMPLEX CDOTC COMPLEX CDOTC
EXTERNAL LSAME, SCNRM2, SLAMCH, SLAPY2, CDOTC EXTERNAL LSAME, SCNRM2, SLAMCH, SLAPY2, SROUNDUP_LWORK,
$ CDOTC
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEMV, CLACPY, CTGEXC, CTGSYL, SLABAD, XERBLA EXTERNAL CGEMV, CLACPY, CTGEXC, CTGSYL, XERBLA
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC ABS, CMPLX, MAX INTRINSIC ABS, CMPLX, MAX
@ -402,7 +403,7 @@
ELSE ELSE
LWMIN = N LWMIN = N
END IF END IF
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
IF( MM.LT.M ) THEN IF( MM.LT.M ) THEN
INFO = -15 INFO = -15
@ -428,7 +429,6 @@
EPS = SLAMCH( 'P' ) EPS = SLAMCH( 'P' )
SMLNUM = SLAMCH( 'S' ) / EPS SMLNUM = SLAMCH( 'S' ) / EPS
BIGNUM = ONE / SMLNUM BIGNUM = ONE / SMLNUM
CALL SLABAD( SMLNUM, BIGNUM )
KS = 0 KS = 0
DO 20 K = 1, N DO 20 K = 1, N
* *
@ -508,7 +508,7 @@
END IF END IF
* *
20 CONTINUE 20 CONTINUE
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
RETURN RETURN
* *
* End of CTGSNA * End of CTGSNA

View File

@ -260,7 +260,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexSYcomputational *> \ingroup tgsyl
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -329,7 +329,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL LSAME, ILAENV REAL SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CGEMM, CLACPY, CLASET, CSCAL, CTGSY2, XERBLA EXTERNAL CGEMM, CLACPY, CLASET, CSCAL, CTGSY2, XERBLA
@ -382,7 +383,7 @@
ELSE ELSE
LWMIN = 1 LWMIN = 1
END IF END IF
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.LWMIN .AND. .NOT.LQUERY ) THEN
INFO = -20 INFO = -20
@ -683,7 +684,7 @@
210 CONTINUE 210 CONTINUE
END IF END IF
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
RETURN RETURN
* *

View File

@ -222,7 +222,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup trevc3
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -278,12 +278,13 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV, ICAMAX INTEGER ILAENV, ICAMAX
REAL SLAMCH, SCASUM REAL SLAMCH, SCASUM, SROUNDUP_LWORK
EXTERNAL LSAME, ILAENV, ICAMAX, SLAMCH, SCASUM EXTERNAL LSAME, ILAENV, ICAMAX, SLAMCH, SCASUM,
$ SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL XERBLA, CCOPY, CLASET, CSSCAL, CGEMM, CGEMV, EXTERNAL XERBLA, CCOPY, CLASET, CSSCAL, CGEMM, CGEMV,
$ CLATRS, CLACPY, SLABAD $ CLATRS, CLACPY
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC ABS, REAL, CMPLX, CONJG, AIMAG, MAX INTRINSIC ABS, REAL, CMPLX, CONJG, AIMAG, MAX
@ -322,7 +323,7 @@
INFO = 0 INFO = 0
NB = ILAENV( 1, 'CTREVC', SIDE // HOWMNY, N, -1, -1, -1 ) NB = ILAENV( 1, 'CTREVC', SIDE // HOWMNY, N, -1, -1, -1 )
MAXWRK = MAX( 1, N + 2*N*NB ) MAXWRK = MAX( 1, N + 2*N*NB )
WORK(1) = MAXWRK WORK(1) = SROUNDUP_LWORK(MAXWRK)
RWORK(1) = MAX( 1, N ) RWORK(1) = MAX( 1, N )
LQUERY = ( LWORK.EQ.-1 .OR. LRWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 .OR. LRWORK.EQ.-1 )
IF( .NOT.RIGHTV .AND. .NOT.LEFTV ) THEN IF( .NOT.RIGHTV .AND. .NOT.LEFTV ) THEN
@ -371,7 +372,6 @@
* *
UNFL = SLAMCH( 'Safe minimum' ) UNFL = SLAMCH( 'Safe minimum' )
OVFL = ONE / UNFL OVFL = ONE / UNFL
CALL SLABAD( UNFL, OVFL )
ULP = SLAMCH( 'Precision' ) ULP = SLAMCH( 'Precision' )
SMLNUM = UNFL*( N / ULP ) SMLNUM = UNFL*( N / ULP )
* *

View File

@ -182,7 +182,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup trsen
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -293,8 +293,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
REAL CLANGE REAL CLANGE, SROUNDUP_LWORK
EXTERNAL LSAME, CLANGE EXTERNAL LSAME, CLANGE, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CLACN2, CLACPY, CTREXC, CTRSYL, XERBLA EXTERNAL CLACN2, CLACPY, CTREXC, CTRSYL, XERBLA
@ -350,7 +350,7 @@
END IF END IF
* *
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -444,7 +444,7 @@
W( K ) = T( K, K ) W( K ) = T( K, K )
50 CONTINUE 50 CONTINUE
* *
WORK( 1 ) = LWMIN WORK( 1 ) = SROUNDUP_LWORK(LWMIN)
* *
RETURN RETURN
* *

View File

@ -116,7 +116,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup tzrzf
* *
*> \par Contributors: *> \par Contributors:
* ================== * ==================
@ -179,7 +179,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -207,7 +208,7 @@
LWKOPT = M*NB LWKOPT = M*NB
LWKMIN = MAX( 1, M ) LWKMIN = MAX( 1, M )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.LWKMIN .AND. .NOT.LQUERY ) THEN
INFO = -7 INFO = -7
@ -301,7 +302,7 @@
IF( MU.GT.0 ) IF( MU.GT.0 )
$ CALL CLATRZ( MU, N, N-M, A, LDA, TAU, WORK ) $ CALL CLATRZ( MU, N, N-M, A, LDA, TAU, WORK )
* *
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
RETURN RETURN
* *

View File

@ -255,7 +255,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unbdb
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -320,9 +320,9 @@
* *
* .. * ..
* .. External Functions .. * .. External Functions ..
REAL SCNRM2 REAL SCNRM2, SROUNDUP_LWORK
LOGICAL LSAME LOGICAL LSAME
EXTERNAL SCNRM2, LSAME EXTERNAL SCNRM2, SROUNDUP_LWORK, LSAME
* .. * ..
* .. Intrinsic Functions * .. Intrinsic Functions
INTRINSIC ATAN2, COS, MAX, MIN, SIN INTRINSIC ATAN2, COS, MAX, MIN, SIN
@ -377,7 +377,7 @@
IF( INFO .EQ. 0 ) THEN IF( INFO .EQ. 0 ) THEN
LWORKOPT = M - Q LWORKOPT = M - Q
LWORKMIN = M - Q LWORKMIN = M - Q
WORK(1) = LWORKOPT WORK(1) = SROUNDUP_LWORK(LWORKOPT)
IF( LWORK .LT. LWORKMIN .AND. .NOT. LQUERY ) THEN IF( LWORK .LT. LWORKMIN .AND. .NOT. LQUERY ) THEN
INFO = -21 INFO = -21
END IF END IF

View File

@ -173,7 +173,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unbdb1
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -230,8 +230,8 @@
EXTERNAL CLACGV EXTERNAL CLACGV
* .. * ..
* .. External Functions .. * .. External Functions ..
REAL SCNRM2 REAL SCNRM2, SROUNDUP_LWORK
EXTERNAL SCNRM2 EXTERNAL SCNRM2, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Function .. * .. Intrinsic Function ..
INTRINSIC ATAN2, COS, MAX, SIN, SQRT INTRINSIC ATAN2, COS, MAX, SIN, SQRT
@ -264,7 +264,7 @@
LORBDB5 = Q-2 LORBDB5 = Q-2
LWORKOPT = MAX( ILARF+LLARF-1, IORBDB5+LORBDB5-1 ) LWORKOPT = MAX( ILARF+LLARF-1, IORBDB5+LORBDB5-1 )
LWORKMIN = LWORKOPT LWORKMIN = LWORKOPT
WORK(1) = LWORKOPT WORK(1) = SROUNDUP_LWORK(LWORKOPT)
IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN
INFO = -14 INFO = -14
END IF END IF

View File

@ -173,7 +173,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unbdb2
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -231,8 +231,8 @@
$ XERBLA $ XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
REAL SCNRM2 REAL SCNRM2, SROUNDUP_LWORK
EXTERNAL SCNRM2 EXTERNAL SCNRM2, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Function .. * .. Intrinsic Function ..
INTRINSIC ATAN2, COS, MAX, SIN, SQRT INTRINSIC ATAN2, COS, MAX, SIN, SQRT
@ -265,7 +265,7 @@
LORBDB5 = Q-1 LORBDB5 = Q-1
LWORKOPT = MAX( ILARF+LLARF-1, IORBDB5+LORBDB5-1 ) LWORKOPT = MAX( ILARF+LLARF-1, IORBDB5+LORBDB5-1 )
LWORKMIN = LWORKOPT LWORKMIN = LWORKOPT
WORK(1) = LWORKOPT WORK(1) = SROUNDUP_LWORK(LWORKOPT)
IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN
INFO = -14 INFO = -14
END IF END IF

View File

@ -173,7 +173,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unbdb3
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -229,8 +229,8 @@
EXTERNAL CLARF, CLARFGP, CUNBDB5, CSROT, CLACGV, XERBLA EXTERNAL CLARF, CLARFGP, CUNBDB5, CSROT, CLACGV, XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
REAL SCNRM2 REAL SCNRM2, SROUNDUP_LWORK
EXTERNAL SCNRM2 EXTERNAL SCNRM2, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Function .. * .. Intrinsic Function ..
INTRINSIC ATAN2, COS, MAX, SIN, SQRT INTRINSIC ATAN2, COS, MAX, SIN, SQRT
@ -263,7 +263,7 @@
LORBDB5 = Q-1 LORBDB5 = Q-1
LWORKOPT = MAX( ILARF+LLARF-1, IORBDB5+LORBDB5-1 ) LWORKOPT = MAX( ILARF+LLARF-1, IORBDB5+LORBDB5-1 )
LWORKMIN = LWORKOPT LWORKMIN = LWORKOPT
WORK(1) = LWORKOPT WORK(1) = SROUNDUP_LWORK(LWORKOPT)
IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN
INFO = -14 INFO = -14
END IF END IF

View File

@ -183,7 +183,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unbdb4
* *
*> \par Further Details: *> \par Further Details:
* ===================== * =====================
@ -242,8 +242,8 @@
$ XERBLA $ XERBLA
* .. * ..
* .. External Functions .. * .. External Functions ..
REAL SCNRM2 REAL SCNRM2, SROUNDUP_LWORK
EXTERNAL SCNRM2 EXTERNAL SCNRM2, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Function .. * .. Intrinsic Function ..
INTRINSIC ATAN2, COS, MAX, SIN, SQRT INTRINSIC ATAN2, COS, MAX, SIN, SQRT
@ -277,7 +277,7 @@
LWORKOPT = ILARF + LLARF - 1 LWORKOPT = ILARF + LLARF - 1
LWORKOPT = MAX( LWORKOPT, IORBDB5 + LORBDB5 - 1 ) LWORKOPT = MAX( LWORKOPT, IORBDB5 + LORBDB5 - 1 )
LWORKMIN = LWORKOPT LWORKMIN = LWORKOPT
WORK(1) = LWORKOPT WORK(1) = SROUNDUP_LWORK(LWORKOPT)
IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN
INFO = -14 INFO = -14
END IF END IF

View File

@ -308,7 +308,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup uncsd
* *
* ===================================================================== * =====================================================================
RECURSIVE SUBROUTINE CUNCSD( JOBU1, JOBU2, JOBV1T, JOBV2T, TRANS, RECURSIVE SUBROUTINE CUNCSD( JOBU1, JOBU2, JOBV1T, JOBV2T, TRANS,
@ -365,7 +365,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions * .. Intrinsic Functions
INTRINSIC INT, MAX, MIN INTRINSIC INT, MAX, MIN
@ -504,7 +505,8 @@
$ IORBDB + LORBDBWORKOPT ) - 1 $ IORBDB + LORBDBWORKOPT ) - 1
LWORKMIN = MAX( IORGQR + LORGQRWORKMIN, IORGLQ + LORGLQWORKMIN, LWORKMIN = MAX( IORGQR + LORGQRWORKMIN, IORGLQ + LORGLQWORKMIN,
$ IORBDB + LORBDBWORKMIN ) - 1 $ IORBDB + LORBDBWORKMIN ) - 1
WORK(1) = MAX(LWORKOPT,LWORKMIN) LWORKOPT = MAX(LWORKOPT,LWORKMIN)
WORK(1) = SROUNDUP_LWORK(LWORKOPT)
* *
IF( LWORK .LT. LWORKMIN IF( LWORK .LT. LWORKMIN
$ .AND. .NOT. ( LQUERY .OR. LRQUERY ) ) THEN $ .AND. .NOT. ( LQUERY .OR. LRQUERY ) ) THEN

View File

@ -247,7 +247,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup uncsd2by1
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNCSD2BY1( JOBU1, JOBU2, JOBV1T, M, P, Q, X11, LDX11, SUBROUTINE CUNCSD2BY1( JOBU1, JOBU2, JOBV1T, M, P, Q, X11, LDX11,
@ -299,7 +299,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Function .. * .. Intrinsic Function ..
INTRINSIC INT, MAX, MIN INTRINSIC INT, MAX, MIN
@ -508,7 +509,7 @@
LWORKOPT = MAX( IORBDB+LORBDB-1, LWORKOPT = MAX( IORBDB+LORBDB-1,
$ IORGQR+LORGQROPT-1, $ IORGQR+LORGQROPT-1,
$ IORGLQ+LORGLQOPT-1 ) $ IORGLQ+LORGLQOPT-1 )
WORK(1) = LWORKOPT WORK(1) = SROUNDUP_LWORK(LWORKOPT)
IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN IF( LWORK .LT. LWORKMIN .AND. .NOT.LQUERY ) THEN
INFO = -19 INFO = -19
END IF END IF

View File

@ -150,7 +150,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexGBcomputational *> \ingroup ungbr
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNGBR( VECT, M, N, K, A, LDA, TAU, WORK, LWORK, INFO ) SUBROUTINE CUNGBR( VECT, M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
@ -180,7 +180,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
EXTERNAL LSAME REAL SROUNDUP_LWORK
EXTERNAL LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CUNGLQ, CUNGQR, XERBLA EXTERNAL CUNGLQ, CUNGQR, XERBLA
@ -241,7 +242,7 @@
CALL XERBLA( 'CUNGBR', -INFO ) CALL XERBLA( 'CUNGBR', -INFO )
RETURN RETURN
ELSE IF( LQUERY ) THEN ELSE IF( LQUERY ) THEN
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
END IF END IF
* *
@ -327,7 +328,7 @@
END IF END IF
END IF END IF
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CUNGBR * End of CUNGBR

View File

@ -119,7 +119,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unghr
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNGHR( N, ILO, IHI, A, LDA, TAU, WORK, LWORK, INFO ) SUBROUTINE CUNGHR( N, ILO, IHI, A, LDA, TAU, WORK, LWORK, INFO )
@ -151,7 +151,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC MAX, MIN INTRINSIC MAX, MIN
@ -178,7 +179,7 @@
IF( INFO.EQ.0 ) THEN IF( INFO.EQ.0 ) THEN
NB = ILAENV( 1, 'CUNGQR', ' ', NH, NH, NH, -1 ) NB = ILAENV( 1, 'CUNGQR', ' ', NH, NH, NH, -1 )
LWKOPT = MAX( 1, NH )*NB LWKOPT = MAX( 1, NH )*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -230,7 +231,7 @@
CALL CUNGQR( NH, NH, NH, A( ILO+1, ILO+1 ), LDA, TAU( ILO ), CALL CUNGQR( NH, NH, NH, A( ILO+1, ILO+1 ), LDA, TAU( ILO ),
$ WORK, LWORK, IINFO ) $ WORK, LWORK, IINFO )
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CUNGHR * End of CUNGHR

View File

@ -120,7 +120,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unglq
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNGLQ( M, N, K, A, LDA, TAU, WORK, LWORK, INFO ) SUBROUTINE CUNGLQ( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
@ -155,7 +155,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -164,7 +165,7 @@
INFO = 0 INFO = 0
NB = ILAENV( 1, 'CUNGLQ', ' ', M, N, K, -1 ) NB = ILAENV( 1, 'CUNGLQ', ' ', M, N, K, -1 )
LWKOPT = MAX( 1, M )*NB LWKOPT = MAX( 1, M )*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
LQUERY = ( LWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 )
IF( M.LT.0 ) THEN IF( M.LT.0 ) THEN
INFO = -1 INFO = -1
@ -278,7 +279,7 @@
50 CONTINUE 50 CONTINUE
END IF END IF
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CUNGLQ * End of CUNGLQ

View File

@ -121,7 +121,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup ungql
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNGQL( M, N, K, A, LDA, TAU, WORK, LWORK, INFO ) SUBROUTINE CUNGQL( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
@ -156,7 +156,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -181,7 +182,7 @@
NB = ILAENV( 1, 'CUNGQL', ' ', M, N, K, -1 ) NB = ILAENV( 1, 'CUNGQL', ' ', M, N, K, -1 )
LWKOPT = N*NB LWKOPT = N*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.MAX( 1, N ) .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MAX( 1, N ) .AND. .NOT.LQUERY ) THEN
INFO = -8 INFO = -8

View File

@ -121,7 +121,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup ungqr
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNGQR( M, N, K, A, LDA, TAU, WORK, LWORK, INFO ) SUBROUTINE CUNGQR( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
@ -156,7 +156,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -165,7 +166,7 @@
INFO = 0 INFO = 0
NB = ILAENV( 1, 'CUNGQR', ' ', M, N, K, -1 ) NB = ILAENV( 1, 'CUNGQR', ' ', M, N, K, -1 )
LWKOPT = MAX( 1, N )*NB LWKOPT = MAX( 1, N )*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
LQUERY = ( LWORK.EQ.-1 ) LQUERY = ( LWORK.EQ.-1 )
IF( M.LT.0 ) THEN IF( M.LT.0 ) THEN
INFO = -1 INFO = -1
@ -279,7 +280,7 @@
50 CONTINUE 50 CONTINUE
END IF END IF
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CUNGQR * End of CUNGQR

View File

@ -121,7 +121,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup ungrq
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNGRQ( M, N, K, A, LDA, TAU, WORK, LWORK, INFO ) SUBROUTINE CUNGRQ( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
@ -156,7 +156,8 @@
* .. * ..
* .. External Functions .. * .. External Functions ..
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV REAL SROUNDUP_LWORK
EXTERNAL ILAENV, SROUNDUP_LWORK
* .. * ..
* .. Executable Statements .. * .. Executable Statements ..
* *
@ -181,7 +182,7 @@
NB = ILAENV( 1, 'CUNGRQ', ' ', M, N, K, -1 ) NB = ILAENV( 1, 'CUNGRQ', ' ', M, N, K, -1 )
LWKOPT = M*NB LWKOPT = M*NB
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
* *
IF( LWORK.LT.MAX( 1, M ) .AND. .NOT.LQUERY ) THEN IF( LWORK.LT.MAX( 1, M ) .AND. .NOT.LQUERY ) THEN
INFO = -8 INFO = -8
@ -286,7 +287,7 @@
50 CONTINUE 50 CONTINUE
END IF END IF
* *
WORK( 1 ) = IWS WORK( 1 ) = SROUNDUP_LWORK(IWS)
RETURN RETURN
* *
* End of CUNGRQ * End of CUNGRQ

View File

@ -116,7 +116,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup ungtr
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNGTR( UPLO, N, A, LDA, TAU, WORK, LWORK, INFO ) SUBROUTINE CUNGTR( UPLO, N, A, LDA, TAU, WORK, LWORK, INFO )
@ -147,7 +147,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV, LSAME REAL SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CUNGQL, CUNGQR, XERBLA EXTERNAL CUNGQL, CUNGQR, XERBLA
@ -179,7 +180,7 @@
NB = ILAENV( 1, 'CUNGQR', ' ', N-1, N-1, N-1, -1 ) NB = ILAENV( 1, 'CUNGQR', ' ', N-1, N-1, N-1, -1 )
END IF END IF
LWKOPT = MAX( 1, N-1 )*NB LWKOPT = MAX( 1, N-1 )*NB
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -245,7 +246,7 @@
$ LWORK, IINFO ) $ LWORK, IINFO )
END IF END IF
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CUNGTR * End of CUNGTR

View File

@ -189,7 +189,7 @@
*> \author Univ. of Colorado Denver *> \author Univ. of Colorado Denver
*> \author NAG Ltd. *> \author NAG Ltd.
* *
*> \ingroup complexOTHERcomputational *> \ingroup unmbr
* *
* ===================================================================== * =====================================================================
SUBROUTINE CUNMBR( VECT, SIDE, TRANS, M, N, K, A, LDA, TAU, C, SUBROUTINE CUNMBR( VECT, SIDE, TRANS, M, N, K, A, LDA, TAU, C,
@ -218,7 +218,8 @@
* .. External Functions .. * .. External Functions ..
LOGICAL LSAME LOGICAL LSAME
INTEGER ILAENV INTEGER ILAENV
EXTERNAL ILAENV, LSAME REAL SROUNDUP_LWORK
EXTERNAL ILAENV, LSAME, SROUNDUP_LWORK
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CUNMLQ, CUNMQR, XERBLA EXTERNAL CUNMLQ, CUNMQR, XERBLA
@ -290,7 +291,7 @@
ELSE ELSE
LWKOPT = 1 LWKOPT = 1
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
END IF END IF
* *
IF( INFO.NE.0 ) THEN IF( INFO.NE.0 ) THEN
@ -367,7 +368,7 @@
$ TAU, C( I1, I2 ), LDC, WORK, LWORK, IINFO ) $ TAU, C( I1, I2 ), LDC, WORK, LWORK, IINFO )
END IF END IF
END IF END IF
WORK( 1 ) = LWKOPT WORK( 1 ) = SROUNDUP_LWORK(LWKOPT)
RETURN RETURN
* *
* End of CUNMBR * End of CUNMBR

Some files were not shown because too many files have changed in this diff Show More