version 1.3, 2012/12/14 14:22:42
|
version 1.4, 2014/01/27 09:24:35
|
Line 175
|
Line 175
|
*> \author Univ. of Colorado Denver |
*> \author Univ. of Colorado Denver |
*> \author NAG Ltd. |
*> \author NAG Ltd. |
* |
* |
*> \date April 2012 |
*> \date November 2013 |
* |
* |
*> \ingroup doubleOTHERcomputational |
*> \ingroup doubleOTHERcomputational |
* |
* |
Line 216
|
Line 216
|
SUBROUTINE DTPMQRT( SIDE, TRANS, M, N, K, L, NB, V, LDV, T, LDT, |
SUBROUTINE DTPMQRT( SIDE, TRANS, M, N, K, L, NB, V, LDV, T, LDT, |
$ A, LDA, B, LDB, WORK, INFO ) |
$ A, LDA, B, LDB, WORK, INFO ) |
* |
* |
* -- LAPACK computational routine (version 3.4.1) -- |
* -- LAPACK computational routine (version 3.5.0) -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* April 2012 |
* November 2013 |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
CHARACTER SIDE, TRANS |
CHARACTER SIDE, TRANS |
Line 235
|
Line 235
|
* .. |
* .. |
* .. Local Scalars .. |
* .. Local Scalars .. |
LOGICAL LEFT, RIGHT, TRAN, NOTRAN |
LOGICAL LEFT, RIGHT, TRAN, NOTRAN |
INTEGER I, IB, MB, LB, KF, Q |
INTEGER I, IB, MB, LB, KF, LDAQ, LDVQ |
* .. |
* .. |
* .. External Functions .. |
* .. External Functions .. |
LOGICAL LSAME |
LOGICAL LSAME |
Line 257
|
Line 257
|
TRAN = LSAME( TRANS, 'T' ) |
TRAN = LSAME( TRANS, 'T' ) |
NOTRAN = LSAME( TRANS, 'N' ) |
NOTRAN = LSAME( TRANS, 'N' ) |
* |
* |
IF( LEFT ) THEN |
IF ( LEFT ) THEN |
Q = M |
LDVQ = MAX( 1, M ) |
|
LDAQ = MAX( 1, K ) |
ELSE IF ( RIGHT ) THEN |
ELSE IF ( RIGHT ) THEN |
Q = N |
LDVQ = MAX( 1, N ) |
|
LDAQ = MAX( 1, M ) |
END IF |
END IF |
IF( .NOT.LEFT .AND. .NOT.RIGHT ) THEN |
IF( .NOT.LEFT .AND. .NOT.RIGHT ) THEN |
INFO = -1 |
INFO = -1 |
Line 274
|
Line 276
|
INFO = -5 |
INFO = -5 |
ELSE IF( L.LT.0 .OR. L.GT.K ) THEN |
ELSE IF( L.LT.0 .OR. L.GT.K ) THEN |
INFO = -6 |
INFO = -6 |
ELSE IF( NB.LT.1 .OR. NB.GT.K ) THEN |
ELSE IF( NB.LT.1 .OR. (NB.GT.K .AND. K.GT.0) ) THEN |
INFO = -7 |
INFO = -7 |
ELSE IF( LDV.LT.MAX( 1, Q ) ) THEN |
ELSE IF( LDV.LT.LDVQ ) THEN |
INFO = -9 |
INFO = -9 |
ELSE IF( LDT.LT.NB ) THEN |
ELSE IF( LDT.LT.NB ) THEN |
INFO = -11 |
INFO = -11 |
ELSE IF( LDA.LT.MAX( 1, M ) ) THEN |
ELSE IF( LDA.LT.LDAQ ) THEN |
INFO = -13 |
INFO = -13 |
ELSE IF( LDB.LT.MAX( 1, M ) ) THEN |
ELSE IF( LDB.LT.MAX( 1, M ) ) THEN |
INFO = -15 |
INFO = -15 |