428428* > \verbatim
429429* > LWORK is INTEGER
430430* > The dimension of the array WORK.
431- * > LWORK >= 1, if MIN(M,N) = 0,
431+ * > LWORK >= 1, if MIN(M,N) = 0, and
432432* > LWORK >= N+NRHS-1, otherwise.
433433* > For optimal performance LWORK >= NB*( N+NRHS+1 ),
434434* > where NB is the optimal block size for CGEQP3RK returned
@@ -628,8 +628,9 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
628628* .. External Functions ..
629629 LOGICAL SISNAN
630630 INTEGER ISAMAX, ILAENV
631- REAL SLAMCH, SCNRM2
632- EXTERNAL SISNAN, SLAMCH, SCNRM2, ISAMAX, ILAENV
631+ REAL SLAMCH, SCNRM2, SROUNDUP_LWORK
632+ EXTERNAL SISNAN, SLAMCH, SCNRM2, ISAMAX, ILAENV,
633+ $ SROUNDUP_LWORK
633634* ..
634635* .. Intrinsic Functions ..
635636 INTRINSIC CMPLX, MAX, MIN
@@ -704,7 +705,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
704705*
705706 LWKOPT = 2 * N + NB* ( N+ NRHS+1 )
706707 END IF
707- WORK( 1 ) = CMPLX ( LWKOPT )
708+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
708709*
709710 IF ( ( LWORK.LT. IWS ) .AND. .NOT. LQUERY ) THEN
710711 INFO = - 15
@@ -727,7 +728,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
727728 K = 0
728729 MAXC2NRMK = ZERO
729730 RELMAXC2NRMK = ZERO
730- WORK( 1 ) = CMPLX ( LWKOPT )
731+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
731732 RETURN
732733 END IF
733734*
@@ -779,7 +780,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
779780*
780781* Array TAU is not set and contains undefined elements.
781782*
782- WORK( 1 ) = CMPLX ( LWKOPT )
783+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
783784 RETURN
784785 END IF
785786*
@@ -798,7 +799,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
798799 TAU( J ) = CZERO
799800 END DO
800801*
801- WORK( 1 ) = CMPLX ( LWKOPT )
802+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
802803 RETURN
803804*
804805 END IF
@@ -829,7 +830,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
829830 DO J = 1 , MINMN
830831 TAU( J ) = CZERO
831832 END DO
832- WORK( 1 ) = CMPLX ( LWKOPT )
833+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
833834 RETURN
834835 END IF
835836*
@@ -874,7 +875,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
874875 TAU( J ) = CZERO
875876 END DO
876877*
877- WORK( 1 ) = CMPLX ( LWKOPT )
878+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
878879 RETURN
879880 END IF
880881*
@@ -992,7 +993,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
992993*
993994* Return from the routine.
994995*
995- WORK( 1 ) = CMPLX ( LWKOPT )
996+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
996997*
997998 RETURN
998999*
@@ -1083,7 +1084,7 @@ SUBROUTINE CGEQP3RK( M, N, NRHS, KMAX, ABSTOL, RELTOL, A, LDA,
10831084*
10841085 END IF
10851086*
1086- WORK( 1 ) = CMPLX ( LWKOPT )
1087+ WORK( 1 ) = SROUNDUP_LWORK ( LWKOPT )
10871088*
10881089 RETURN
10891090*
0 commit comments