diff options
author | julie <julielangou@users.noreply.github.com> | 2011-09-23 15:26:46 +0000 |
---|---|---|
committer | julie <julielangou@users.noreply.github.com> | 2011-09-23 15:26:46 +0000 |
commit | 46e1b19474b5150ce94f35cc0ec52e08c729985c (patch) | |
tree | ccd79fe74a19119405a263aac3a5a775d62999a0 /TESTING/EIG/zcsdts.f | |
parent | 839c47632cfc6e05e4dfca4c18ecfa093f53fbfc (diff) | |
download | lapack-46e1b19474b5150ce94f35cc0ec52e08c729985c.tar.gz lapack-46e1b19474b5150ce94f35cc0ec52e08c729985c.tar.bz2 lapack-46e1b19474b5150ce94f35cc0ec52e08c729985c.zip |
Commit patch sent by Sven.
Patch was based on 3.3.0, so required a little bit of merging.
Thank you Sven for the corrections.
Julie
JL
TESTING/EIG
zerrgg.f
Declare ILO, IHI
SRC
---
I have corrected all the following warnings and errors:
c/d/s/zsysv.f, Unused external reference ILAENV
>JL OK
c/d/s/zsysv.f, Unused local variable NB
>JL ALREADY CORRECTED
sgsvj0.f, Unused intrinsic AMIN1
> JL OK
d/sorbdb.f, Unused intrinsic MIN
> JL OK
sorcsd.f, Unused intrinsic SIN
sorcsd.f, Unused intrinsic COS
> JL OK MERGE
cpoequb.f, Unused intrinsic AIMAG
cpoequb.f, Unused intrinsic REAL
cpoequb.f, Unused local variable ZDUM
zgeequb.f, REAL --> DBLE
> JL OK
sorcsd.f, line 330: Inconsistent data type REAL (previously INTEGER) for argument 14 in reference to SORBDB
sorcsd.f, line 340: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 345: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 356: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 363: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 369: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 374: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 385: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 392: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 399: Inconsistent data type REAL (previously INTEGER) for argument 9 in reference to SBBCSD
> JL OK MERGE
ila(s/d/c/z)lr.f
In the WHILE loop, at about line 59 I inserted
IF (I.EQ.0) THEN
EXIT
END IF
since, otherwise when I = 0, A(0,J) is referenced.
> JL OK
TESTING/MATGEN
--------------
s/dlatm7.f
line 187: I replaced
IF( N.GT.1 ) THEN
by
IF( N.GT.1 .AND. RANK.GT.1 ) THEN
Otherwise I get a division by zero.
> JL OK
s/dlaror.f
I moved:
INFO = 0
from line 125 to line 121 in front of
IF( N.EQ.0 .OR. M.EQ.0 )
$ RETURN
otherwise INFO is not defined on return when N or M are zero.
Similar change for
c/zlaror.f
> JL OK
TESTING/LIN
-----------
s/derrsy.f
In calls to S/DSYTRI2: I replaced IW by IW(1) since the dummy argument
(LWORK) is a scalar.
> JL OK
c/zerrrfp.f
I made ALPHA and BETA REAL/DOUBLE and introduced COMPLEX/COMPLEX*16
CALPHA since calls to C/ZHFRK need real alpha and beta. In calls to
CTFSM, I then replaced ALPHA with CALPHA.
In cerrrfp.f, I replaced 1.0D0 with 1.0E0 (not strictly necessary, but
cleaner).
> JL OK
dpot06.f
Removed the unused declaration of LSAME
> JL OK
d/zdrvac.f
Removed the unused declaration of LSAME
> JL OK MERGE
s/d/c/z/ckcsd.f
Removed the unused declarations of S/D/C/ZLANGE, SIN and COS
> JL OK
c/zgennd.f
Removed the unused variable OUT
> JL already DONE
Corrected the following warnings and errors:
dchksy.f, Unused local variable MYWORK
> JL already DONE
ddrvgbx.f, line 792: Different number of arguments from the first call of DGBT02
> JL OK
cdrvgbx.f, line 726: Inconsistent data type REAL (previously COMPLEX) for argument 4 in reference to CLASET
cdrvgbx.f, line 728: Inconsistent data type REAL (previously COMPLEX) for argument 4 in reference to CLASET
cdrvgbx.f, line 780: Inconsistent data type REAL (previously COMPLEX) for argument 10 in reference to CGBT01
cdrvgbx.f, line 794: Different number of arguments from the first call of CGBT02
> JL OK
zdrvgbx.f, line 726: Inconsistent data type DOUBLE PRECISION (previously COMPLEX(KIND(0d0))) for argument 4 in reference to ZLASET
zdrvgbx.f, line 728: Inconsistent data type DOUBLE PRECISION (previously COMPLEX(KIND(0d0))) for argument 4 in reference to ZLASET
zdrvgbx.f, line 780: Inconsistent data type DOUBLE PRECISION (previously COMPLEX(KIND(0d0))) for argument 10 in reference to ZGBT01
zdrvgbx.f, line 794: Different number of arguments from the first call of ZGBT02
> JL OK
TESTING/EIG
-----------
s/d/c/zchkee.f
I inserted
CALL XLAENV( 12, 1 )
at line 1208, since IPARMS(ISPEC) with ISPEC = 12 needs to be set.
(I think I had to do this with them all, certainly with zchkee.f)
> JL OK zchkee.f cchkee.f
c/zchkee.f
In line 2316, the 15th argument of C/ZCKCSD should be real, not complex,
so I replaced A(1,7) by RWORK.
> JL OK
c/zcsdts.f
In calls to C/ZHERK I have replaced ONE by REALONE as arguments 5 and 8
should be real.
> JL OK
s/d/c/zcsdts.f
Division by zero occurs at line 155 in computing EPS when M = 0, so I
have modified
EPS2 = MAX( ULP, CLANGE( '1', M, M, WORK, LDX, RWORK ) / REAL( M ) )
to
IF (M.GT.0) THEN
EPS2 = MAX( ULP,
$ CLANGE( '1', M, M, WORK, LDX, RWORK ) / REAL( M ) )
ELSE
EPS2 = ULP
END IF
> JL OK
SRC/VARIANTS/lu/CR
------------------
s/d/c/zgetrf
Removed the unused intrinsic MOD
> JL OK
Diffstat (limited to 'TESTING/EIG/zcsdts.f')
-rw-r--r-- | TESTING/EIG/zcsdts.f | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/TESTING/EIG/zcsdts.f b/TESTING/EIG/zcsdts.f index 3436d9ef..2aa7c448 100644 --- a/TESTING/EIG/zcsdts.f +++ b/TESTING/EIG/zcsdts.f @@ -150,10 +150,14 @@ ULP = DLAMCH( 'Precision' ) ULPINV = REALONE / ULP CALL ZLASET( 'Full', M, M, ZERO, ONE, WORK, LDX ) - CALL ZHERK( 'Upper', 'Conjugate transpose', M, M, -ONE, X, LDX, - $ ONE, WORK, LDX ) - EPS2 = MAX( ULP, - $ ZLANGE( '1', M, M, WORK, LDX, RWORK ) / REAL( M ) ) + CALL ZHERK( 'Upper', 'Conjugate transpose', M, M, -REALONE, + $ X, LDX, REALONE, WORK, LDX ) + IF (M.GT.0) THEN + EPS2 = MAX( ULP, + $ ZLANGE( '1', M, M, WORK, LDX, RWORK ) / DBLE( M ) ) + ELSE + EPS2 = ULP + END IF R = MIN( P, M-P, Q, M-Q ) * * Copy the matrix X to the array XF. @@ -252,8 +256,8 @@ * Compute I - U1'*U1 * CALL ZLASET( 'Full', P, P, ZERO, ONE, WORK, LDU1 ) - CALL ZHERK( 'Upper', 'Conjugate transpose', P, P, -ONE, U1, LDU1, - $ ONE, WORK, LDU1 ) + CALL ZHERK( 'Upper', 'Conjugate transpose', P, P, -REALONE, + $ U1, LDU1, REALONE, WORK, LDU1 ) * * Compute norm( I - U'*U ) / ( MAX(1,P) * ULP ) . * @@ -263,8 +267,8 @@ * Compute I - U2'*U2 * CALL ZLASET( 'Full', M-P, M-P, ZERO, ONE, WORK, LDU2 ) - CALL ZHERK( 'Upper', 'Conjugate transpose', M-P, M-P, -ONE, U2, - $ LDU2, ONE, WORK, LDU2 ) + CALL ZHERK( 'Upper', 'Conjugate transpose', M-P, M-P, -REALONE, + $ U2, LDU2, REALONE, WORK, LDU2 ) * * Compute norm( I - U2'*U2 ) / ( MAX(1,M-P) * ULP ) . * @@ -274,8 +278,8 @@ * Compute I - V1T*V1T' * CALL ZLASET( 'Full', Q, Q, ZERO, ONE, WORK, LDV1T ) - CALL ZHERK( 'Upper', 'No transpose', Q, Q, -ONE, V1T, LDV1T, ONE, - $ WORK, LDV1T ) + CALL ZHERK( 'Upper', 'No transpose', Q, Q, -REALONE, + $ V1T, LDV1T, REALONE, WORK, LDV1T ) * * Compute norm( I - V1T*V1T' ) / ( MAX(1,Q) * ULP ) . * @@ -285,8 +289,8 @@ * Compute I - V2T*V2T' * CALL ZLASET( 'Full', M-Q, M-Q, ZERO, ONE, WORK, LDV2T ) - CALL ZHERK( 'Upper', 'No transpose', M-Q, M-Q, -ONE, V2T, LDV2T, - $ ONE, WORK, LDV2T ) + CALL ZHERK( 'Upper', 'No transpose', M-Q, M-Q, -REALONE, + $ V2T, LDV2T, REALONE, WORK, LDV2T ) * * Compute norm( I - V2T*V2T' ) / ( MAX(1,M-Q) * ULP ) . * |