remove all (ALPHA.NE.ONE) in TRSM family

This commit is contained in:
Julien Langou
2026-07-12 09:09:04 -06:00
parent 552873f0a9
commit f0aaa58e14
4 changed files with 83 additions and 131 deletions
+18 -30
View File
@@ -278,11 +278,9 @@
*
IF (UPPER) THEN
DO 60 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
END IF
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
DO 50 K = M,1,-1
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 40 I = 1,K - 1
@@ -292,11 +290,9 @@
60 CONTINUE
ELSE
DO 100 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
END IF
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
DO 90 K = 1,M
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 80 I = K + 1,M
@@ -355,11 +351,9 @@
*
IF (UPPER) THEN
DO 230 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 190 I = 1,M
B(I,J) = ALPHA*B(I,J)
190 CONTINUE
END IF
DO 190 I = 1,M
B(I,J) = ALPHA*B(I,J)
190 CONTINUE
DO 210 K = 1,J - 1
IF (A(K,J).NE.ZERO) THEN
DO 200 I = 1,M
@@ -376,11 +370,9 @@
230 CONTINUE
ELSE
DO 280 J = N,1,-1
IF (ALPHA.NE.ONE) THEN
DO 240 I = 1,M
B(I,J) = ALPHA*B(I,J)
240 CONTINUE
END IF
DO 240 I = 1,M
B(I,J) = ALPHA*B(I,J)
240 CONTINUE
DO 260 K = J + 1,N
IF (A(K,J).NE.ZERO) THEN
DO 250 I = 1,M
@@ -425,11 +417,9 @@
300 CONTINUE
END IF
310 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 320 I = 1,M
B(I,K) = ALPHA*B(I,K)
320 CONTINUE
END IF
DO 320 I = 1,M
B(I,K) = ALPHA*B(I,K)
320 CONTINUE
330 CONTINUE
ELSE
DO 380 K = 1,N
@@ -455,11 +445,9 @@
350 CONTINUE
END IF
360 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 370 I = 1,M
B(I,K) = ALPHA*B(I,K)
370 CONTINUE
END IF
DO 370 I = 1,M
B(I,K) = ALPHA*B(I,K)
370 CONTINUE
380 CONTINUE
END IF
END IF
+18 -30
View File
@@ -276,11 +276,9 @@
*
IF (UPPER) THEN
DO 60 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
END IF
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
DO 50 K = M,1,-1
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 40 I = 1,K - 1
@@ -290,11 +288,9 @@
60 CONTINUE
ELSE
DO 100 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
END IF
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
DO 90 K = 1,M
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 80 I = K + 1,M
@@ -338,11 +334,9 @@
*
IF (UPPER) THEN
DO 210 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 170 I = 1,M
B(I,J) = ALPHA*B(I,J)
170 CONTINUE
END IF
DO 170 I = 1,M
B(I,J) = ALPHA*B(I,J)
170 CONTINUE
DO 190 K = 1,J - 1
IF (A(K,J).NE.ZERO) THEN
DO 180 I = 1,M
@@ -359,11 +353,9 @@
210 CONTINUE
ELSE
DO 260 J = N,1,-1
IF (ALPHA.NE.ONE) THEN
DO 220 I = 1,M
B(I,J) = ALPHA*B(I,J)
220 CONTINUE
END IF
DO 220 I = 1,M
B(I,J) = ALPHA*B(I,J)
220 CONTINUE
DO 240 K = J + 1,N
IF (A(K,J).NE.ZERO) THEN
DO 230 I = 1,M
@@ -399,11 +391,9 @@
280 CONTINUE
END IF
290 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 300 I = 1,M
B(I,K) = ALPHA*B(I,K)
300 CONTINUE
END IF
DO 300 I = 1,M
B(I,K) = ALPHA*B(I,K)
300 CONTINUE
310 CONTINUE
ELSE
DO 360 K = 1,N
@@ -421,11 +411,9 @@
330 CONTINUE
END IF
340 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 350 I = 1,M
B(I,K) = ALPHA*B(I,K)
350 CONTINUE
END IF
DO 350 I = 1,M
B(I,K) = ALPHA*B(I,K)
350 CONTINUE
360 CONTINUE
END IF
END IF
+29 -41
View File
@@ -276,31 +276,27 @@
*
IF (UPPER) THEN
DO 60 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
END IF
DO 50 K = M,1,-1
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 40 I = 1,K - 1
B(I,J) = B(I,J) - B(K,J)*A(I,K)
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
DO 50 K = M,1,-1
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 40 I = 1,K - 1
B(I,J) = B(I,J) - B(K,J)*A(I,K)
40 CONTINUE
50 CONTINUE
60 CONTINUE
ELSE
DO 100 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
END IF
DO 90 K = 1,M
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 80 I = K + 1,M
B(I,J) = B(I,J) - B(K,J)*A(I,K)
ELSE
DO 100 J = 1,N
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
DO 90 K = 1,M
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 80 I = K + 1,M
B(I,J) = B(I,J) - B(K,J)*A(I,K)
80 CONTINUE
90 CONTINUE
90 CONTINUE
100 CONTINUE
END IF
ELSE
@@ -338,11 +334,9 @@
*
IF (UPPER) THEN
DO 210 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 170 I = 1,M
B(I,J) = ALPHA*B(I,J)
170 CONTINUE
END IF
DO 170 I = 1,M
B(I,J) = ALPHA*B(I,J)
170 CONTINUE
DO 190 K = 1,J - 1
IF (A(K,J).NE.ZERO) THEN
DO 180 I = 1,M
@@ -359,11 +353,9 @@
210 CONTINUE
ELSE
DO 260 J = N,1,-1
IF (ALPHA.NE.ONE) THEN
DO 220 I = 1,M
B(I,J) = ALPHA*B(I,J)
220 CONTINUE
END IF
DO 220 I = 1,M
B(I,J) = ALPHA*B(I,J)
220 CONTINUE
DO 240 K = J + 1,N
IF (A(K,J).NE.ZERO) THEN
DO 230 I = 1,M
@@ -399,11 +391,9 @@
280 CONTINUE
END IF
290 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 300 I = 1,M
B(I,K) = ALPHA*B(I,K)
300 CONTINUE
END IF
DO 300 I = 1,M
B(I,K) = ALPHA*B(I,K)
300 CONTINUE
310 CONTINUE
ELSE
DO 360 K = 1,N
@@ -421,11 +411,9 @@
330 CONTINUE
END IF
340 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 350 I = 1,M
B(I,K) = ALPHA*B(I,K)
350 CONTINUE
END IF
DO 350 I = 1,M
B(I,K) = ALPHA*B(I,K)
350 CONTINUE
360 CONTINUE
END IF
END IF
+18 -30
View File
@@ -278,11 +278,9 @@
*
IF (UPPER) THEN
DO 60 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
END IF
DO 30 I = 1,M
B(I,J) = ALPHA*B(I,J)
30 CONTINUE
DO 50 K = M,1,-1
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 40 I = 1,K - 1
@@ -292,11 +290,9 @@
60 CONTINUE
ELSE
DO 100 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
END IF
DO 70 I = 1,M
B(I,J) = ALPHA*B(I,J)
70 CONTINUE
DO 90 K = 1,M
IF (NOUNIT) B(K,J) = B(K,J)/A(K,K)
DO 80 I = K + 1,M
@@ -355,11 +351,9 @@
*
IF (UPPER) THEN
DO 230 J = 1,N
IF (ALPHA.NE.ONE) THEN
DO 190 I = 1,M
B(I,J) = ALPHA*B(I,J)
190 CONTINUE
END IF
DO 190 I = 1,M
B(I,J) = ALPHA*B(I,J)
190 CONTINUE
DO 210 K = 1,J - 1
IF (A(K,J).NE.ZERO) THEN
DO 200 I = 1,M
@@ -376,11 +370,9 @@
230 CONTINUE
ELSE
DO 280 J = N,1,-1
IF (ALPHA.NE.ONE) THEN
DO 240 I = 1,M
B(I,J) = ALPHA*B(I,J)
240 CONTINUE
END IF
DO 240 I = 1,M
B(I,J) = ALPHA*B(I,J)
240 CONTINUE
DO 260 K = J + 1,N
IF (A(K,J).NE.ZERO) THEN
DO 250 I = 1,M
@@ -425,11 +417,9 @@
300 CONTINUE
END IF
310 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 320 I = 1,M
B(I,K) = ALPHA*B(I,K)
320 CONTINUE
END IF
DO 320 I = 1,M
B(I,K) = ALPHA*B(I,K)
320 CONTINUE
330 CONTINUE
ELSE
DO 380 K = 1,N
@@ -455,11 +445,9 @@
350 CONTINUE
END IF
360 CONTINUE
IF (ALPHA.NE.ONE) THEN
DO 370 I = 1,M
B(I,K) = ALPHA*B(I,K)
370 CONTINUE
END IF
DO 370 I = 1,M
B(I,K) = ALPHA*B(I,K)
370 CONTINUE
380 CONTINUE
END IF
END IF