remove all TEMP = ONE/A(J,J) and force explicit division like B(I,J)/A(J,J) instead of TEMP*B(I,J)
This commit is contained in:
+14
-16
@@ -210,8 +210,6 @@
|
||||
LOGICAL LSIDE,NOCONJ,NOUNIT,UPPER
|
||||
* ..
|
||||
* .. Parameters ..
|
||||
COMPLEX ONE
|
||||
PARAMETER (ONE= (1.0E+0,0.0E+0))
|
||||
COMPLEX ZERO
|
||||
PARAMETER (ZERO= (0.0E+0,0.0E+0))
|
||||
* ..
|
||||
@@ -360,9 +358,8 @@
|
||||
200 CONTINUE
|
||||
210 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 220 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
220 CONTINUE
|
||||
END IF
|
||||
230 CONTINUE
|
||||
@@ -377,9 +374,8 @@
|
||||
250 CONTINUE
|
||||
260 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 270 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
270 CONTINUE
|
||||
END IF
|
||||
280 CONTINUE
|
||||
@@ -393,13 +389,14 @@
|
||||
DO 330 K = N,1,-1
|
||||
IF (NOUNIT) THEN
|
||||
IF (NOCONJ) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 290 I = 1,M
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
290 CONTINUE
|
||||
ELSE
|
||||
TEMP = ONE/CONJG(A(K,K))
|
||||
DO 390 I = 1,M
|
||||
B(I,K) = B(I,K)/CONJG(A(K,K))
|
||||
390 CONTINUE
|
||||
END IF
|
||||
DO 290 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
290 CONTINUE
|
||||
END IF
|
||||
DO 310 J = 1,K - 1
|
||||
IF (NOCONJ) THEN
|
||||
@@ -419,13 +416,14 @@
|
||||
DO 380 K = 1,N
|
||||
IF (NOUNIT) THEN
|
||||
IF (NOCONJ) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 340 I = 1,M
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
340 CONTINUE
|
||||
ELSE
|
||||
TEMP = ONE/CONJG(A(K,K))
|
||||
DO 400 I = 1,M
|
||||
B(I,K) = B(I,K)/CONJG(A(K,K))
|
||||
400 CONTINUE
|
||||
END IF
|
||||
DO 340 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
340 CONTINUE
|
||||
END IF
|
||||
DO 360 J = K + 1,N
|
||||
IF (NOCONJ) THEN
|
||||
|
||||
+6
-10
@@ -211,8 +211,8 @@
|
||||
LOGICAL LSIDE,NOUNIT,UPPER
|
||||
* ..
|
||||
* .. Parameters ..
|
||||
DOUBLE PRECISION ONE,ZERO
|
||||
PARAMETER (ONE=1.0D+0,ZERO=0.0D+0)
|
||||
DOUBLE PRECISION ZERO
|
||||
PARAMETER (ZERO=0.0D+0)
|
||||
* ..
|
||||
*
|
||||
* Test the input parameters.
|
||||
@@ -343,9 +343,8 @@
|
||||
180 CONTINUE
|
||||
190 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 200 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
200 CONTINUE
|
||||
END IF
|
||||
210 CONTINUE
|
||||
@@ -360,9 +359,8 @@
|
||||
230 CONTINUE
|
||||
240 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 250 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
250 CONTINUE
|
||||
END IF
|
||||
260 CONTINUE
|
||||
@@ -374,9 +372,8 @@
|
||||
IF (UPPER) THEN
|
||||
DO 310 K = N,1,-1
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 270 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
270 CONTINUE
|
||||
END IF
|
||||
DO 290 J = 1,K - 1
|
||||
@@ -392,9 +389,8 @@
|
||||
ELSE
|
||||
DO 360 K = 1,N
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 320 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
320 CONTINUE
|
||||
END IF
|
||||
DO 340 J = K + 1,N
|
||||
|
||||
+6
-10
@@ -211,8 +211,8 @@
|
||||
LOGICAL LSIDE,NOUNIT,UPPER
|
||||
* ..
|
||||
* .. Parameters ..
|
||||
REAL ONE,ZERO
|
||||
PARAMETER (ONE=1.0E+0,ZERO=0.0E+0)
|
||||
REAL ZERO
|
||||
PARAMETER (ZERO=0.0E+0)
|
||||
* ..
|
||||
*
|
||||
* Test the input parameters.
|
||||
@@ -343,9 +343,8 @@
|
||||
180 CONTINUE
|
||||
190 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 200 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
200 CONTINUE
|
||||
END IF
|
||||
210 CONTINUE
|
||||
@@ -360,9 +359,8 @@
|
||||
230 CONTINUE
|
||||
240 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 250 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
250 CONTINUE
|
||||
END IF
|
||||
260 CONTINUE
|
||||
@@ -374,9 +372,8 @@
|
||||
IF (UPPER) THEN
|
||||
DO 310 K = N,1,-1
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 270 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
270 CONTINUE
|
||||
END IF
|
||||
DO 290 J = 1,K - 1
|
||||
@@ -392,9 +389,8 @@
|
||||
ELSE
|
||||
DO 360 K = 1,N
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 320 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
320 CONTINUE
|
||||
END IF
|
||||
DO 340 J = K + 1,N
|
||||
|
||||
+14
-16
@@ -210,8 +210,6 @@
|
||||
LOGICAL LSIDE,NOCONJ,NOUNIT,UPPER
|
||||
* ..
|
||||
* .. Parameters ..
|
||||
COMPLEX*16 ONE
|
||||
PARAMETER (ONE= (1.0D+0,0.0D+0))
|
||||
COMPLEX*16 ZERO
|
||||
PARAMETER (ZERO= (0.0D+0,0.0D+0))
|
||||
* ..
|
||||
@@ -360,9 +358,8 @@
|
||||
200 CONTINUE
|
||||
210 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 220 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
220 CONTINUE
|
||||
END IF
|
||||
230 CONTINUE
|
||||
@@ -377,9 +374,8 @@
|
||||
250 CONTINUE
|
||||
260 CONTINUE
|
||||
IF (NOUNIT) THEN
|
||||
TEMP = ONE/A(J,J)
|
||||
DO 270 I = 1,M
|
||||
B(I,J) = TEMP*B(I,J)
|
||||
B(I,J) = B(I,J)/A(J,J)
|
||||
270 CONTINUE
|
||||
END IF
|
||||
280 CONTINUE
|
||||
@@ -393,13 +389,14 @@
|
||||
DO 330 K = N,1,-1
|
||||
IF (NOUNIT) THEN
|
||||
IF (NOCONJ) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 290 I = 1,M
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
290 CONTINUE
|
||||
ELSE
|
||||
TEMP = ONE/DCONJG(A(K,K))
|
||||
DO 390 I = 1,M
|
||||
B(I,K) = B(I,K)/DCONJG(A(K,K))
|
||||
390 CONTINUE
|
||||
END IF
|
||||
DO 290 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
290 CONTINUE
|
||||
END IF
|
||||
DO 310 J = 1,K - 1
|
||||
IF (NOCONJ) THEN
|
||||
@@ -419,13 +416,14 @@
|
||||
DO 380 K = 1,N
|
||||
IF (NOUNIT) THEN
|
||||
IF (NOCONJ) THEN
|
||||
TEMP = ONE/A(K,K)
|
||||
DO 340 I = 1,M
|
||||
B(I,K) = B(I,K)/A(K,K)
|
||||
340 CONTINUE
|
||||
ELSE
|
||||
TEMP = ONE/DCONJG(A(K,K))
|
||||
DO 400 I = 1,M
|
||||
B(I,K) = B(I,K)/DCONJG(A(K,K))
|
||||
400 CONTINUE
|
||||
END IF
|
||||
DO 340 I = 1,M
|
||||
B(I,K) = TEMP*B(I,K)
|
||||
340 CONTINUE
|
||||
END IF
|
||||
DO 360 J = K + 1,N
|
||||
IF (NOCONJ) THEN
|
||||
|
||||
Reference in New Issue
Block a user