2 subroutine mxmf2(A,N1,B,N2,C,N3)
5 real(DP) :: a(n1,n2),b(n2,n3),c(n1,n3)
11 call
mxf8(a,n1,b,n2,c,n3)
13 call
mxf1(a,n1,b,n2,c,n3)
15 call
mxf2(a,n1,b,n2,c,n3)
17 call
mxf3(a,n1,b,n2,c,n3)
19 call
mxf4(a,n1,b,n2,c,n3)
21 call
mxf5(a,n1,b,n2,c,n3)
23 call
mxf6(a,n1,b,n2,c,n3)
25 call
mxf7(a,n1,b,n2,c,n3)
30 call
mxf12(a,n1,b,n2,c,n3)
32 call
mxf9(a,n1,b,n2,c,n3)
34 call
mxf10(a,n1,b,n2,c,n3)
36 call
mxf11(a,n1,b,n2,c,n3)
38 call
mxf13(a,n1,b,n2,c,n3)
40 call
mxf14(a,n1,b,n2,c,n3)
42 call
mxf15(a,n1,b,n2,c,n3)
44 call
mxf16(a,n1,b,n2,c,n3)
49 call
mxf17(a,n1,b,n2,c,n3)
51 call
mxf18(a,n1,b,n2,c,n3)
53 call
mxf19(a,n1,b,n2,c,n3)
55 call
mxf20(a,n1,b,n2,c,n3)
57 call
mxf21(a,n1,b,n2,c,n3)
59 call
mxf22(a,n1,b,n2,c,n3)
61 call
mxf23(a,n1,b,n2,c,n3)
63 call
mxf24(a,n1,b,n2,c,n3)
73 subroutine mxf1(a,n1,b,n2,c,n3)
76 real(DP) :: a(n1,1),b(1,n3),c(n1,n3)
80 c(
i,j) = a(
i,1)*b(1,j)
86 subroutine mxf2(a,n1,b,n2,c,n3)
89 real(DP) :: a(n1,2),b(2,n3),c(n1,n3)
93 c(
i,j) = a(
i,1)*b(1,j) &
100 subroutine mxf3(a,n1,b,n2,c,n3)
103 real(DP) :: a(n1,3),b(3,n3),c(n1,n3)
107 c(
i,j) = a(
i,1)*b(1,j) &
115 subroutine mxf4(a,n1,b,n2,c,n3)
118 real(DP) :: a(n1,4),b(4,n3),c(n1,n3)
122 c(
i,j) = a(
i,1)*b(1,j) &
131 subroutine mxf5(a,n1,b,n2,c,n3)
134 real(DP) :: a(n1,5),b(5,n3),c(n1,n3)
138 c(
i,j) = a(
i,1)*b(1,j) &
148 subroutine mxf6(a,n1,b,n2,c,n3)
151 real(DP) :: a(n1,6),b(6,n3),c(n1,n3)
155 c(
i,j) = a(
i,1)*b(1,j) &
166 subroutine mxf7(a,n1,b,n2,c,n3)
169 real(DP) :: a(n1,7),b(7,n3),c(n1,n3)
173 c(
i,j) = a(
i,1)*b(1,j) &
185 subroutine mxf8(a,n1,b,n2,c,n3)
188 real(DP) :: a(n1,8),b(8,n3),c(n1,n3)
192 c(
i,j) = a(
i,1)*b(1,j) &
205 subroutine mxf9(a,n1,b,n2,c,n3)
208 real(DP) :: a(n1,9),b(9,n3),c(n1,n3)
212 c(
i,j) = a(
i,1)*b(1,j) &
229 real(DP) :: a(n1,10),b(10,n3),c(n1,n3)
233 c(
i,j) = a(
i,1)*b(1,j) &
251 real(DP) :: a(n1,11),b(11,n3),c(n1,n3)
255 c(
i,j) = a(
i,1)*b(1,j) &
274 real(DP) :: a(n1,12),b(12,n3),c(n1,n3)
278 c(
i,j) = a(
i,1)*b(1,j) &
298 real(DP) :: a(n1,13),b(13,n3),c(n1,n3)
302 c(
i,j) = a(
i,1)*b(1,j) &
323 real(DP) :: a(n1,14),b(14,n3),c(n1,n3)
327 c(
i,j) = a(
i,1)*b(1,j) &
349 real(DP) :: a(n1,15),b(15,n3),c(n1,n3)
353 c(
i,j) = a(
i,1)*b(1,j) &
376 real(DP) :: a(n1,16),b(16,n3),c(n1,n3)
383 c(
i,j) = c(
i,j) + a(
i,k)*b(k,j)
386 c(
i,j) = a(
i,1)*b(1,j) &
411 real(DP) :: a(n1,17),b(17,n3),c(n1,n3)
415 c(
i,j) = a(
i,1)*b(1,j) &
440 real(DP) :: a(n1,18),b(18,n3),c(n1,n3)
444 c(
i,j) = a(
i,1)*b(1,j) &
470 real(DP) :: a(n1,19),b(19,n3),c(n1,n3)
474 c(
i,j) = a(
i,1)*b(1,j) &
501 real(DP) :: a(n1,20),b(20,n3),c(n1,n3)
505 c(
i,j) = a(
i,1)*b(1,j) &
533 real(DP) :: a(n1,21),b(21,n3),c(n1,n3)
537 c(
i,j) = a(
i,1)*b(1,j) &
566 real(DP) :: a(n1,22),b(22,n3),c(n1,n3)
570 c(
i,j) = a(
i,1)*b(1,j) &
600 real(DP) :: a(n1,23),b(23,n3),c(n1,n3)
604 c(
i,j) = a(
i,1)*b(1,j) &
635 real(DP) :: a(n1,24),b(24,n3),c(n1,n3)
639 c(
i,j) = a(
i,1)*b(1,j) &
673 real(DP) :: a(m,k), b(k,
n), c(m,
n)
674 real(DP) :: s11, s12, s13, s14, s21, s22, s23, s24
675 real(DP) :: s31, s32, s33, s34, s41, s42, s43, s44
701 s11 = s11 + a(
i,l)*b(l,j)
702 s12 = s12 + a(
i,l)*b(l,j+1)
703 s13 = s13 + a(
i,l)*b(l,j+2)
704 s14 = s14 + a(
i,l)*b(l,j+3)
706 s21 = s21 + a(
i+1,l)*b(l,j)
707 s22 = s22 + a(
i+1,l)*b(l,j+1)
708 s23 = s23 + a(
i+1,l)*b(l,j+2)
709 s24 = s24 + a(
i+1,l)*b(l,j+3)
711 s31 = s31 + a(
i+2,l)*b(l,j)
712 s32 = s32 + a(
i+2,l)*b(l,j+1)
713 s33 = s33 + a(
i+2,l)*b(l,j+2)
714 s34 = s34 + a(
i+2,l)*b(l,j+3)
716 s41 = s41 + a(
i+3,l)*b(l,j)
717 s42 = s42 + a(
i+3,l)*b(l,j+1)
718 s43 = s43 + a(
i+3,l)*b(l,j+2)
719 s44 = s44 + a(
i+3,l)*b(l,j+3)
743 if (nresid /= 0)
then
744 if (nresid == 1)
then
750 s11 = s11 + a(
i,l)*b(l,
n)
751 s21 = s21 + a(
i+1,l)*b(l,
n)
752 s31 = s31 + a(
i+2,l)*b(l,
n)
753 s41 = s41 + a(
i+3,l)*b(l,
n)
759 elseif (nresid == 2)
then
769 s11 = s11 + a(
i,l)*b(l,j)
770 s12 = s12 + a(
i,l)*b(l,j+1)
772 s21 = s21 + a(
i+1,l)*b(l,j)
773 s22 = s22 + a(
i+1,l)*b(l,j+1)
775 s31 = s31 + a(
i+2,l)*b(l,j)
776 s32 = s32 + a(
i+2,l)*b(l,j+1)
778 s41 = s41 + a(
i+3,l)*b(l,j)
779 s42 = s42 + a(
i+3,l)*b(l,j+1)
805 s11 = s11 + a(
i,l)*b(l,j)
806 s12 = s12 + a(
i,l)*b(l,j+1)
807 s13 = s13 + a(
i,l)*b(l,j+2)
809 s21 = s21 + a(
i+1,l)*b(l,j)
810 s22 = s22 + a(
i+1,l)*b(l,j+1)
811 s23 = s23 + a(
i+1,l)*b(l,j+2)
813 s31 = s31 + a(
i+2,l)*b(l,j)
814 s32 = s32 + a(
i+2,l)*b(l,j+1)
815 s33 = s33 + a(
i+2,l)*b(l,j+2)
817 s41 = s41 + a(
i+3,l)*b(l,j)
818 s42 = s42 + a(
i+3,l)*b(l,j+1)
819 s43 = s43 + a(
i+3,l)*b(l,j+2)
838 if (mresid == 0)
then
840 elseif (mresid == 1)
then
847 s11 = s11 + a(m,l)*b(l,j)
848 s12 = s12 + a(m,l)*b(l,j+1)
849 s13 = s13 + a(m,l)*b(l,j+2)
850 s14 = s14 + a(m,l)*b(l,j+3)
858 if (nresid == 0)
then
860 elseif (nresid == 1)
then
863 s11 = s11 + a(m,l)*b(l,
n)
867 elseif (nresid == 2)
then
871 s11 = s11 + a(m,l)*b(l,
n-1)
872 s12 = s12 + a(m,l)*b(l,
n)
882 s11 = s11 + a(m,l)*b(l,
n-2)
883 s12 = s12 + a(m,l)*b(l,
n-1)
884 s13 = s13 + a(m,l)*b(l,
n)
891 elseif (mresid == 2)
then
902 s11 = s11 + a(m-1,l)*b(l,j)
903 s12 = s12 + a(m-1,l)*b(l,j+1)
904 s13 = s13 + a(m-1,l)*b(l,j+2)
905 s14 = s14 + a(m-1,l)*b(l,j+3)
907 s21 = s21 + a(m,l)*b(l,j)
908 s22 = s22 + a(m,l)*b(l,j+1)
909 s23 = s23 + a(m,l)*b(l,j+2)
910 s24 = s24 + a(m,l)*b(l,j+3)
922 if (nresid == 0)
then
924 elseif (nresid == 1)
then
928 s11 = s11 + a(m-1,l)*b(l,
n)
929 s21 = s21 + a(m,l)*b(l,
n)
934 elseif (nresid == 2)
then
940 s11 = s11 + a(m-1,l)*b(l,
n-1)
941 s12 = s12 + a(m-1,l)*b(l,
n)
942 s21 = s21 + a(m,l)*b(l,
n-1)
943 s22 = s22 + a(m,l)*b(l,
n)
958 s11 = s11 + a(m-1,l)*b(l,
n-2)
959 s12 = s12 + a(m-1,l)*b(l,
n-1)
960 s13 = s13 + a(m-1,l)*b(l,
n)
961 s21 = s21 + a(m,l)*b(l,
n-2)
962 s22 = s22 + a(m,l)*b(l,
n-1)
963 s23 = s23 + a(m,l)*b(l,
n)
993 s11 = s11 + a(m-2,l)*b(l,j)
994 s12 = s12 + a(m-2,l)*b(l,j+1)
995 s13 = s13 + a(m-2,l)*b(l,j+2)
996 s14 = s14 + a(m-2,l)*b(l,j+3)
998 s21 = s21 + a(m-1,l)*b(l,j)
999 s22 = s22 + a(m-1,l)*b(l,j+1)
1000 s23 = s23 + a(m-1,l)*b(l,j+2)
1001 s24 = s24 + a(m-1,l)*b(l,j+3)
1003 s31 = s31 + a(m,l)*b(l,j)
1004 s32 = s32 + a(m,l)*b(l,j+1)
1005 s33 = s33 + a(m,l)*b(l,j+2)
1006 s34 = s34 + a(m,l)*b(l,j+3)
1024 if (nresid == 0)
then
1026 elseif (nresid == 1)
then
1031 s11 = s11 + a(m-2,l)*b(l,
n)
1032 s21 = s21 + a(m-1,l)*b(l,
n)
1033 s31 = s31 + a(m,l)*b(l,
n)
1039 elseif (nresid == 2)
then
1047 s11 = s11 + a(m-2,l)*b(l,
n-1)
1048 s12 = s12 + a(m-2,l)*b(l,
n)
1049 s21 = s21 + a(m-1,l)*b(l,
n-1)
1050 s22 = s22 + a(m-1,l)*b(l,
n)
1051 s31 = s31 + a(m,l)*b(l,
n-1)
1052 s32 = s32 + a(m,l)*b(l,
n)
1072 s11 = s11 + a(m-2,l)*b(l,
n-2)
1073 s12 = s12 + a(m-2,l)*b(l,
n-1)
1074 s13 = s13 + a(m-2,l)*b(l,
n)
1075 s21 = s21 + a(m-1,l)*b(l,
n-2)
1076 s22 = s22 + a(m-1,l)*b(l,
n-1)
1077 s23 = s23 + a(m-1,l)*b(l,
n)
1078 s31 = s31 + a(m,l)*b(l,
n-2)
1079 s32 = s32 + a(m,l)*b(l,
n-1)
1080 s33 = s33 + a(m,l)*b(l,
n)
1099 use kinds, only : dp
1100 real(DP) :: a(m,2), b(2,
n), c(m,
n)
1107 c(
i,j) = a(
i,1)*b(1,j) &
1109 c(
i,j+1) = a(
i,1)*b(1,j+1) &
1111 c(
i,j+2) = a(
i,1)*b(1,j+2) &
1113 c(
i,j+3) = a(
i,1)*b(1,j+3) &
1117 if (nresid == 0)
then
1119 elseif (nresid == 1)
then
1121 c(
i,
n) = a(
i,1)*b(1,
n) &
1124 elseif (nresid == 2)
then
1126 c(
i,
n-1) = a(
i,1)*b(1,
n-1) &
1128 c(
i,
n) = a(
i,1)*b(1,
n) &
1133 c(
i,
n-2) = a(
i,1)*b(1,
n-2) &
1135 c(
i,
n-1) = a(
i,1)*b(1,
n-1) &
1137 c(
i,
n) = a(
i,1)*b(1,
n) &
1146 use kinds, only : dp
1147 real(DP) :: a(1),b(1)
1153 a(
i) = -.25*(a(
i)+a(
i+1)) + (x*x + k + l)/(x*x+m)
1154 b(
i) = -.25*(b(
i)+b(
i+1)) + (x*x + k + m)/(x*x+l)
1156 a(
n) = -.25*(a(
n)+a(
n)) + (x*x + k + l)/(x*x+m)
1157 b(
n) = -.25*(b(
n)+b(
n)) + (x*x + k + m)/(x*x+l)
1168 use kinds, only : dp
1169 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
1179 c(
i,j)=c(
i,j)+a(
i,k)*bb
1191 use kinds, only : dp
1192 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
1198 i1 = n1 - mod(n1,4) + 1
1203 c(
i ,j)=c(
i ,j)+a(
i ,k)*bb
1204 c(
i+1,j)=c(
i+1,j)+a(
i+1,k)*bb
1205 c(
i+2,j)=c(
i+2,j)+a(
i+2,k)*bb
1206 c(
i+3,j)=c(
i+3,j)+a(
i+3,k)*bb
1209 c(
i ,j)=c(
i ,j)+a(
i ,k)*bb
1213 end subroutine mxmu4
1217 use kinds, only : dp
1218 real(DP) :: a(n1,n2),b(n2,n3),c(n1,n3)
1222 c(
i,j) = a(
i,j)+b(
i,j)
1236 use kinds, only : dp
1237 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
1242 elseif (n2 == 2)
then
1244 elseif (n2 == 3)
then
1246 elseif (n2 == 4)
then
1248 elseif (n2 == 5)
then
1250 elseif (n2 == 6)
then
1252 elseif (n2 == 7)
then
1257 elseif (n2 <= 16)
then
1260 elseif (n2 == 10)
then
1262 elseif (n2 == 11)
then
1264 elseif (n2 == 12)
then
1266 elseif (n2 == 13)
then
1268 elseif (n2 == 14)
then
1270 elseif (n2 == 15)
then
1284 c(
i,j)=c(
i,j)+a(
i,k)*bb
1292 use kinds, only : dp
1293 real(DP) :: a(n1,1),b(1,n3),c(n1,n3)
1297 c(
i,j) = a(
i,1)*b(1,j)
1304 use kinds, only : dp
1305 real(DP) :: a(n1,2),b(2,n3),c(n1,n3)
1309 c(
i,j) = a(
i,1)*b(1,j) &
1317 use kinds, only : dp
1318 real(DP) :: a(n1,3),b(3,n3),c(n1,n3)
1322 c(
i,j) = a(
i,1)*b(1,j) &
1331 use kinds, only : dp
1332 real(DP) :: a(n1,4),b(4,n3),c(n1,n3)
1336 c(
i,j) = a(
i,1)*b(1,j) &
1346 use kinds, only : dp
1347 real(DP) :: a(n1,5),b(5,n3),c(n1,n3)
1351 c(
i,j) = a(
i,1)*b(1,j) &
1362 use kinds, only : dp
1363 real(DP) :: a(n1,6),b(6,n3),c(n1,n3)
1367 c(
i,j) = a(
i,1)*b(1,j) &
1379 use kinds, only : dp
1380 real(DP) :: a(n1,7),b(7,n3),c(n1,n3)
1384 c(
i,j) = a(
i,1)*b(1,j) &
1397 use kinds, only : dp
1398 real(DP) :: a(n1,8),b(8,n3),c(n1,n3)
1402 c(
i,j) = a(
i,1)*b(1,j) &
1416 use kinds, only : dp
1417 real(DP) :: a(n1,9),b(9,n3),c(n1,n3)
1421 c(
i,j) = a(
i,1)*b(1,j) &
1436 use kinds, only : dp
1437 real(DP) :: a(n1,10),b(10,n3),c(n1,n3)
1441 c(
i,j) = a(
i,1)*b(1,j) &
1457 use kinds, only : dp
1458 real(DP) :: a(n1,11),b(11,n3),c(n1,n3)
1462 c(
i,j) = a(
i,1)*b(1,j) &
1479 use kinds, only : dp
1480 real(DP) :: a(n1,12),b(12,n3),c(n1,n3)
1484 c(
i,j) = a(
i,1)*b(1,j) &
1502 use kinds, only : dp
1503 real(DP) :: a(n1,13),b(13,n3),c(n1,n3)
1507 c(
i,j) = a(
i,1)*b(1,j) &
1526 use kinds, only : dp
1527 real(DP) :: a(n1,14),b(14,n3),c(n1,n3)
1531 c(
i,j) = a(
i,1)*b(1,j) &
1551 use kinds, only : dp
1552 real(DP) :: a(n1,15),b(15,n3),c(n1,n3)
1556 c(
i,j) = a(
i,1)*b(1,j) &
1577 use kinds, only : dp
1578 real(DP) :: a(n1,16),b(16,n3),c(n1,n3)
1582 c(
i,j) = a(
i,1)*b(1,j) &
1610 use kinds, only : dp
1611 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
1620 elseif (n3 == 2)
then
1622 elseif (n3 == 3)
then
1624 elseif (n3 == 4)
then
1626 elseif (n3 == 5)
then
1628 elseif (n3 == 6)
then
1630 elseif (n3 == 7)
then
1635 elseif (n3 <= 16)
then
1638 elseif (n3 == 10)
then
1640 elseif (n3 == 11)
then
1642 elseif (n3 == 12)
then
1644 elseif (n3 == 13)
then
1646 elseif (n3 == 14)
then
1648 elseif (n3 == 15)
then
1658 c(
i,j)=c(
i,j)+a(
i,k)*bb
1665 use kinds, only : dp
1666 real(DP) :: a(n1,n2),b(n2,16),c(n1,16)
1686 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1687 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1688 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1689 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1690 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1691 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1692 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1693 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1694 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1695 c(
i,10) = c(
i,10) + a(
i,k) * tmp10
1696 c(
i,11) = c(
i,11) + a(
i,k) * tmp11
1697 c(
i,12) = c(
i,12) + a(
i,k) * tmp12
1698 c(
i,13) = c(
i,13) + a(
i,k) * tmp13
1699 c(
i,14) = c(
i,14) + a(
i,k) * tmp14
1700 c(
i,15) = c(
i,15) + a(
i,k) * tmp15
1701 c(
i,16) = c(
i,16) + a(
i,k) * tmp16
1709 use kinds, only : dp
1710 real(DP) :: a(n1,n2),b(n2,15),c(n1,15)
1729 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1730 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1731 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1732 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1733 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1734 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1735 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1736 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1737 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1738 c(
i,10) = c(
i,10) + a(
i,k) * tmp10
1739 c(
i,11) = c(
i,11) + a(
i,k) * tmp11
1740 c(
i,12) = c(
i,12) + a(
i,k) * tmp12
1741 c(
i,13) = c(
i,13) + a(
i,k) * tmp13
1742 c(
i,14) = c(
i,14) + a(
i,k) * tmp14
1743 c(
i,15) = c(
i,15) + a(
i,k) * tmp15
1751 use kinds, only : dp
1752 real(DP) :: a(n1,n2),b(n2,14),c(n1,14)
1770 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1771 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1772 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1773 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1774 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1775 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1776 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1777 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1778 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1779 c(
i,10) = c(
i,10) + a(
i,k) * tmp10
1780 c(
i,11) = c(
i,11) + a(
i,k) * tmp11
1781 c(
i,12) = c(
i,12) + a(
i,k) * tmp12
1782 c(
i,13) = c(
i,13) + a(
i,k) * tmp13
1783 c(
i,14) = c(
i,14) + a(
i,k) * tmp14
1791 use kinds, only : dp
1792 real(DP) :: a(n1,n2),b(n2,13),c(n1,13)
1809 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1810 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1811 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1812 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1813 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1814 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1815 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1816 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1817 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1818 c(
i,10) = c(
i,10) + a(
i,k) * tmp10
1819 c(
i,11) = c(
i,11) + a(
i,k) * tmp11
1820 c(
i,12) = c(
i,12) + a(
i,k) * tmp12
1821 c(
i,13) = c(
i,13) + a(
i,k) * tmp13
1829 use kinds, only : dp
1830 real(DP) :: a(n1,n2),b(n2,12),c(n1,12)
1846 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1847 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1848 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1849 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1850 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1851 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1852 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1853 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1854 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1855 c(
i,10) = c(
i,10) + a(
i,k) * tmp10
1856 c(
i,11) = c(
i,11) + a(
i,k) * tmp11
1857 c(
i,12) = c(
i,12) + a(
i,k) * tmp12
1865 use kinds, only : dp
1866 real(DP) :: a(n1,n2),b(n2,11),c(n1,11)
1881 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1882 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1883 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1884 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1885 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1886 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1887 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1888 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1889 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1890 c(
i,10) = c(
i,10) + a(
i,k) * tmp10
1891 c(
i,11) = c(
i,11) + a(
i,k) * tmp11
1899 use kinds, only : dp
1900 real(DP) :: a(n1,n2),b(n2,10),c(n1,10)
1914 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1915 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1916 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1917 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1918 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1919 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1920 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1921 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1922 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1923 c(
i,10) = c(
i,10) + a(
i,k) * tmp10
1931 use kinds, only : dp
1932 real(DP) :: a(n1,n2),b(n2,9),c(n1,9)
1945 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1946 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1947 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1948 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1949 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1950 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1951 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1952 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1953 c(
i, 9) = c(
i, 9) + a(
i,k) * tmp9
1961 use kinds, only : dp
1962 real(DP) :: a(n1,n2),b(n2,8),c(n1,8)
1974 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
1975 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
1976 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
1977 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
1978 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
1979 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
1980 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
1981 c(
i, 8) = c(
i, 8) + a(
i,k) * tmp8
1989 use kinds, only : dp
1990 real(DP) :: a(n1,n2),b(n2,7),c(n1,7)
2001 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
2002 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
2003 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
2004 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
2005 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
2006 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
2007 c(
i, 7) = c(
i, 7) + a(
i,k) * tmp7
2015 use kinds, only : dp
2016 real(DP) :: a(n1,n2),b(n2,6),c(n1,6)
2026 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
2027 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
2028 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
2029 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
2030 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
2031 c(
i, 6) = c(
i, 6) + a(
i,k) * tmp6
2039 use kinds, only : dp
2040 real(DP) :: a(n1,n2),b(n2,5),c(n1,5)
2049 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
2050 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
2051 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
2052 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
2053 c(
i, 5) = c(
i, 5) + a(
i,k) * tmp5
2061 use kinds, only : dp
2062 real(DP) :: a(n1,n2),b(n2,4),c(n1,4)
2070 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
2071 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
2072 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
2073 c(
i, 4) = c(
i, 4) + a(
i,k) * tmp4
2081 use kinds, only : dp
2082 real(DP) :: a(n1,n2),b(n2,3),c(n1,3)
2089 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
2090 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
2091 c(
i, 3) = c(
i, 3) + a(
i,k) * tmp3
2099 use kinds, only : dp
2100 real(DP) :: a(n1,n2),b(n2,2),c(n1,2)
2106 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
2107 c(
i, 2) = c(
i, 2) + a(
i,k) * tmp2
2115 use kinds, only : dp
2116 real(DP) :: a(n1,n2),b(n2,1),c(n1,1)
2121 c(
i, 1) = c(
i, 1) + a(
i,k) * tmp1
2134 use kinds, only : dp
2135 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
2136 REAL(DP) :: ONE,ZERO,EPS
2142 call dgemm(
'N',
'N',n1,n3,n2,one,a,n1,b,n2,zero,c,n1)
2153 use kinds, only : dp
2154 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
2162 if (wdsize == 0)
then
2166 if (one+eps == 1.0) wdsize = 4
2172 elseif (n2 == 2)
then
2174 elseif (n2 == 3)
then
2176 elseif (n2 == 4)
then
2178 elseif (n2 == 5)
then
2180 elseif (n2 == 6)
then
2182 elseif (n2 == 7)
then
2187 elseif (n2 <= 16)
then
2190 elseif (n2 == 10)
then
2192 elseif (n2 == 11)
then
2194 elseif (n2 == 12)
then
2196 elseif (n2 == 13)
then
2198 elseif (n2 == 14)
then
2200 elseif (n2 == 15)
then
2205 elseif (n2 <= 24)
then
2208 elseif (n2 == 18)
then
2210 elseif (n2 == 19)
then
2212 elseif (n2 == 20)
then
2214 elseif (n2 == 21)
then
2216 elseif (n2 == 22)
then
2218 elseif (n2 == 23)
then
2220 elseif (n2 == 24)
then
2227 if (wdsize == 4)
then
2228 call sgemm(
'N',
'N',n1,n3,n2,one,a,n1,b,n2,zero,c,n1)
2230 call dgemm(
'N',
'N',n1,n3,n2,one,a,n1,b,n2,zero,c,n1)
2235 end subroutine mxmfb
2239 use kinds, only : dp
2240 real(DP) :: a(n1,1),b(1,n3),c(n1,n3)
2244 c(
i,j) = a(
i,1)*b(1,j)
2252 use kinds, only : dp
2253 real(DP) :: a(n1,2),b(2,n3),c(n1,n3)
2257 c(
i,j) = a(
i,1)*b(1,j) &
2266 use kinds, only : dp
2267 real(DP) :: a(n1,3),b(3,n3),c(n1,n3)
2271 c(
i,j) = a(
i,1)*b(1,j) &
2281 use kinds, only : dp
2282 real(DP) :: a(n1,4),b(4,n3),c(n1,n3)
2286 c(
i,j) = a(
i,1)*b(1,j) &
2297 use kinds, only : dp
2298 real(DP) :: a(n1,5),b(5,n3),c(n1,n3)
2302 c(
i,j) = a(
i,1)*b(1,j) &
2314 use kinds, only : dp
2315 real(DP) :: a(n1,6),b(6,n3),c(n1,n3)
2319 c(
i,j) = a(
i,1)*b(1,j) &
2332 use kinds, only : dp
2333 real(DP) :: a(n1,7),b(7,n3),c(n1,n3)
2337 c(
i,j) = a(
i,1)*b(1,j) &
2351 use kinds, only : dp
2352 real(DP) :: a(n1,8),b(8,n3),c(n1,n3)
2356 c(
i,j) = a(
i,1)*b(1,j) &
2371 use kinds, only : dp
2372 real(DP) :: a(n1,9),b(9,n3),c(n1,n3)
2376 c(
i,j) = a(
i,1)*b(1,j) &
2392 use kinds, only : dp
2393 real(DP) :: a(n1,10),b(10,n3),c(n1,n3)
2397 c(
i,j) = a(
i,1)*b(1,j) &
2414 use kinds, only : dp
2415 real(DP) :: a(n1,11),b(11,n3),c(n1,n3)
2419 c(
i,j) = a(
i,1)*b(1,j) &
2437 use kinds, only : dp
2438 real(DP) :: a(n1,12),b(12,n3),c(n1,n3)
2442 c(
i,j) = a(
i,1)*b(1,j) &
2461 use kinds, only : dp
2462 real(DP) :: a(n1,13),b(13,n3),c(n1,n3)
2466 c(
i,j) = a(
i,1)*b(1,j) &
2486 use kinds, only : dp
2487 real(DP) :: a(n1,14),b(14,n3),c(n1,n3)
2491 c(
i,j) = a(
i,1)*b(1,j) &
2512 use kinds, only : dp
2513 real(DP) :: a(n1,15),b(15,n3),c(n1,n3)
2517 c(
i,j) = a(
i,1)*b(1,j) &
2539 use kinds, only : dp
2540 real(DP) :: a(n1,16),b(16,n3),c(n1,n3)
2544 c(
i,j) = a(
i,1)*b(1,j) &
2567 use kinds, only : dp
2568 real(DP) :: a(n1,17),b(17,n3),c(n1,n3)
2572 c(
i,j) = a(
i,1)*b(1,j) &
2596 use kinds, only : dp
2597 real(DP) :: a(n1,18),b(18,n3),c(n1,n3)
2601 c(
i,j) = a(
i,1)*b(1,j) &
2626 use kinds, only : dp
2627 real(DP) :: a(n1,19),b(19,n3),c(n1,n3)
2631 c(
i,j) = a(
i,1)*b(1,j) &
2657 use kinds, only : dp
2658 real(DP) :: a(n1,20),b(20,n3),c(n1,n3)
2662 c(
i,j) = a(
i,1)*b(1,j) &
2689 use kinds, only : dp
2690 real(DP) :: a(n1,21),b(21,n3),c(n1,n3)
2694 c(
i,j) = a(
i,1)*b(1,j) &
2722 use kinds, only : dp
2723 real(DP) :: a(n1,22),b(22,n3),c(n1,n3)
2727 c(
i,j) = a(
i,1)*b(1,j) &
2756 use kinds, only : dp
2757 real(DP) :: a(n1,23),b(23,n3),c(n1,n3)
2761 c(
i,j) = a(
i,1)*b(1,j) &
2791 use kinds, only : dp
2792 real(DP) :: a(n1,24),b(24,n3),c(n1,n3)
2796 c(
i,j) = a(
i,1)*b(1,j) &
2832 use kinds, only : dp
2833 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
2841 if (wdsize == 0)
then
2845 if (one+eps == 1.0) wdsize = 4
2851 elseif (n2 == 2)
then
2853 elseif (n2 == 3)
then
2855 elseif (n2 == 4)
then
2857 elseif (n2 == 5)
then
2859 elseif (n2 == 6)
then
2861 elseif (n2 == 7)
then
2866 elseif (n2 <= 16)
then
2869 elseif (n2 == 10)
then
2871 elseif (n2 == 11)
then
2873 elseif (n2 == 12)
then
2875 elseif (n2 == 13)
then
2877 elseif (n2 == 14)
then
2879 elseif (n2 == 15)
then
2884 elseif (n2 <= 24)
then
2887 elseif (n2 == 18)
then
2889 elseif (n2 == 19)
then
2891 elseif (n2 == 20)
then
2893 elseif (n2 == 21)
then
2895 elseif (n2 == 22)
then
2897 elseif (n2 == 23)
then
2899 elseif (n2 == 24)
then
2906 if (wdsize == 4)
then
2907 call sgemm(
'N',
'N',n1,n3,n2,one,a,n1,b,n2,zero,c,n1)
2909 call dgemm(
'N',
'N',n1,n3,n2,one,a,n1,b,n2,zero,c,n1)
2925 end subroutine mxmf3
2929 use kinds, only : dp
2930 real(DP) :: a(n1,1),b(1,n3),c(n1,n3)
2934 c(
i,j) = a(
i,1)*b(1,j)
2942 use kinds, only : dp
2943 real(DP) :: a(n1,2),b(2,n3),c(n1,n3)
2947 c(
i,j) = a(
i,1)*b(1,j) &
2956 use kinds, only : dp
2957 real(DP) :: a(n1,3),b(3,n3),c(n1,n3)
2961 c(
i,j) = a(
i,1)*b(1,j) &
2971 use kinds, only : dp
2972 real(DP) :: a(n1,4),b(4,n3),c(n1,n3)
2976 c(
i,j) = a(
i,1)*b(1,j) &
2987 use kinds, only : dp
2988 real(DP) :: a(n1,5),b(5,n3),c(n1,n3)
2992 c(
i,j) = a(
i,1)*b(1,j) &
3004 use kinds, only : dp
3005 real(DP) :: a(n1,6),b(6,n3),c(n1,n3)
3009 c(
i,j) = a(
i,1)*b(1,j) &
3022 use kinds, only : dp
3023 real(DP) :: a(n1,7),b(7,n3),c(n1,n3)
3027 c(
i,j) = a(
i,1)*b(1,j) &
3041 use kinds, only : dp
3042 real(DP) :: a(n1,8),b(8,n3),c(n1,n3)
3046 c(
i,j) = a(
i,1)*b(1,j) &
3061 use kinds, only : dp
3062 real(DP) :: a(n1,9),b(9,n3),c(n1,n3)
3066 c(
i,j) = a(
i,1)*b(1,j) &
3082 use kinds, only : dp
3083 real(DP) :: a(n1,10),b(10,n3),c(n1,n3)
3087 c(
i,j) = a(
i,1)*b(1,j) &
3104 use kinds, only : dp
3105 real(DP) :: a(n1,11),b(11,n3),c(n1,n3)
3109 c(
i,j) = a(
i,1)*b(1,j) &
3127 use kinds, only : dp
3128 real(DP) :: a(n1,12),b(12,n3),c(n1,n3)
3132 c(
i,j) = a(
i,1)*b(1,j) &
3151 use kinds, only : dp
3152 real(DP) :: a(n1,13),b(13,n3),c(n1,n3)
3156 c(
i,j) = a(
i,1)*b(1,j) &
3176 use kinds, only : dp
3177 real(DP) :: a(n1,14),b(14,n3),c(n1,n3)
3181 c(
i,j) = a(
i,1)*b(1,j) &
3202 use kinds, only : dp
3203 real(DP) :: a(n1,15),b(15,n3),c(n1,n3)
3207 c(
i,j) = a(
i,1)*b(1,j) &
3229 use kinds, only : dp
3230 real(DP) :: a(n1,16),b(16,n3),c(n1,n3)
3234 c(
i,j) = a(
i,1)*b(1,j) &
3257 use kinds, only : dp
3258 real(DP) :: a(n1,17),b(17,n3),c(n1,n3)
3262 c(
i,j) = a(
i,1)*b(1,j) &
3286 use kinds, only : dp
3287 real(DP) :: a(n1,18),b(18,n3),c(n1,n3)
3291 c(
i,j) = a(
i,1)*b(1,j) &
3316 use kinds, only : dp
3317 real(DP) :: a(n1,19),b(19,n3),c(n1,n3)
3321 c(
i,j) = a(
i,1)*b(1,j) &
3347 use kinds, only : dp
3348 real(DP) :: a(n1,20),b(20,n3),c(n1,n3)
3352 c(
i,j) = a(
i,1)*b(1,j) &
3379 use kinds, only : dp
3380 real(DP) :: a(n1,21),b(21,n3),c(n1,n3)
3384 c(
i,j) = a(
i,1)*b(1,j) &
3412 use kinds, only : dp
3413 real(DP) :: a(n1,22),b(22,n3),c(n1,n3)
3417 c(
i,j) = a(
i,1)*b(1,j) &
3446 use kinds, only : dp
3447 real(DP) :: a(n1,23),b(23,n3),c(n1,n3)
3451 c(
i,j) = a(
i,1)*b(1,j) &
3481 use kinds, only : dp
3482 real(DP) :: a(n1,24),b(24,n3),c(n1,n3)
3486 c(
i,j) = a(
i,1)*b(1,j) &
3529 use kinds, only : dp
3530 REAL(DP) :: A(n1,n2),B(n2,n3),C(n1,n3)
3534 elseif (n2 == 2)
then
3541 end subroutine mxm44
3546 use kinds, only : dp
3548 real(DP) :: a(m,k), b(k,
n), c(m,
n)
3549 real(DP) :: s11, s12, s13, s14, s21, s22, s23, s24
3550 real(DP) :: s31, s32, s33, s34, s41, s42, s43, s44
3579 s11 = s11 + a(
i,l)*b(l,j)
3580 s12 = s12 + a(
i,l)*b(l,j+1)
3581 s13 = s13 + a(
i,l)*b(l,j+2)
3582 s14 = s14 + a(
i,l)*b(l,j+3)
3584 s21 = s21 + a(
i+1,l)*b(l,j)
3585 s22 = s22 + a(
i+1,l)*b(l,j+1)
3586 s23 = s23 + a(
i+1,l)*b(l,j+2)
3587 s24 = s24 + a(
i+1,l)*b(l,j+3)
3589 s31 = s31 + a(
i+2,l)*b(l,j)
3590 s32 = s32 + a(
i+2,l)*b(l,j+1)
3591 s33 = s33 + a(
i+2,l)*b(l,j+2)
3592 s34 = s34 + a(
i+2,l)*b(l,j+3)
3594 s41 = s41 + a(
i+3,l)*b(l,j)
3595 s42 = s42 + a(
i+3,l)*b(l,j+1)
3596 s43 = s43 + a(
i+3,l)*b(l,j+2)
3597 s44 = s44 + a(
i+3,l)*b(l,j+3)
3621 if (nresid /= 0)
then
3622 if (nresid == 1)
then
3628 s11 = s11 + a(
i,l)*b(l,
n)
3629 s21 = s21 + a(
i+1,l)*b(l,
n)
3630 s31 = s31 + a(
i+2,l)*b(l,
n)
3631 s41 = s41 + a(
i+3,l)*b(l,
n)
3637 elseif (nresid == 2)
then
3647 s11 = s11 + a(
i,l)*b(l,j)
3648 s12 = s12 + a(
i,l)*b(l,j+1)
3650 s21 = s21 + a(
i+1,l)*b(l,j)
3651 s22 = s22 + a(
i+1,l)*b(l,j+1)
3653 s31 = s31 + a(
i+2,l)*b(l,j)
3654 s32 = s32 + a(
i+2,l)*b(l,j+1)
3656 s41 = s41 + a(
i+3,l)*b(l,j)
3657 s42 = s42 + a(
i+3,l)*b(l,j+1)
3683 s11 = s11 + a(
i,l)*b(l,j)
3684 s12 = s12 + a(
i,l)*b(l,j+1)
3685 s13 = s13 + a(
i,l)*b(l,j+2)
3687 s21 = s21 + a(
i+1,l)*b(l,j)
3688 s22 = s22 + a(
i+1,l)*b(l,j+1)
3689 s23 = s23 + a(
i+1,l)*b(l,j+2)
3691 s31 = s31 + a(
i+2,l)*b(l,j)
3692 s32 = s32 + a(
i+2,l)*b(l,j+1)
3693 s33 = s33 + a(
i+2,l)*b(l,j+2)
3695 s41 = s41 + a(
i+3,l)*b(l,j)
3696 s42 = s42 + a(
i+3,l)*b(l,j+1)
3697 s43 = s43 + a(
i+3,l)*b(l,j+2)
3716 if (mresid == 0)
then
3718 elseif (mresid == 1)
then
3725 s11 = s11 + a(m,l)*b(l,j)
3726 s12 = s12 + a(m,l)*b(l,j+1)
3727 s13 = s13 + a(m,l)*b(l,j+2)
3728 s14 = s14 + a(m,l)*b(l,j+3)
3736 if (nresid == 0)
then
3738 elseif (nresid == 1)
then
3741 s11 = s11 + a(m,l)*b(l,
n)
3745 elseif (nresid == 2)
then
3749 s11 = s11 + a(m,l)*b(l,
n-1)
3750 s12 = s12 + a(m,l)*b(l,
n)
3760 s11 = s11 + a(m,l)*b(l,
n-2)
3761 s12 = s12 + a(m,l)*b(l,
n-1)
3762 s13 = s13 + a(m,l)*b(l,
n)
3769 elseif (mresid == 2)
then
3780 s11 = s11 + a(m-1,l)*b(l,j)
3781 s12 = s12 + a(m-1,l)*b(l,j+1)
3782 s13 = s13 + a(m-1,l)*b(l,j+2)
3783 s14 = s14 + a(m-1,l)*b(l,j+3)
3785 s21 = s21 + a(m,l)*b(l,j)
3786 s22 = s22 + a(m,l)*b(l,j+1)
3787 s23 = s23 + a(m,l)*b(l,j+2)
3788 s24 = s24 + a(m,l)*b(l,j+3)
3800 if (nresid == 0)
then
3802 elseif (nresid == 1)
then
3806 s11 = s11 + a(m-1,l)*b(l,
n)
3807 s21 = s21 + a(m,l)*b(l,
n)
3812 elseif (nresid == 2)
then
3818 s11 = s11 + a(m-1,l)*b(l,
n-1)
3819 s12 = s12 + a(m-1,l)*b(l,
n)
3820 s21 = s21 + a(m,l)*b(l,
n-1)
3821 s22 = s22 + a(m,l)*b(l,
n)
3836 s11 = s11 + a(m-1,l)*b(l,
n-2)
3837 s12 = s12 + a(m-1,l)*b(l,
n-1)
3838 s13 = s13 + a(m-1,l)*b(l,
n)
3839 s21 = s21 + a(m,l)*b(l,
n-2)
3840 s22 = s22 + a(m,l)*b(l,
n-1)
3841 s23 = s23 + a(m,l)*b(l,
n)
3871 s11 = s11 + a(m-2,l)*b(l,j)
3872 s12 = s12 + a(m-2,l)*b(l,j+1)
3873 s13 = s13 + a(m-2,l)*b(l,j+2)
3874 s14 = s14 + a(m-2,l)*b(l,j+3)
3876 s21 = s21 + a(m-1,l)*b(l,j)
3877 s22 = s22 + a(m-1,l)*b(l,j+1)
3878 s23 = s23 + a(m-1,l)*b(l,j+2)
3879 s24 = s24 + a(m-1,l)*b(l,j+3)
3881 s31 = s31 + a(m,l)*b(l,j)
3882 s32 = s32 + a(m,l)*b(l,j+1)
3883 s33 = s33 + a(m,l)*b(l,j+2)
3884 s34 = s34 + a(m,l)*b(l,j+3)
3902 if (nresid == 0)
then
3904 elseif (nresid == 1)
then
3909 s11 = s11 + a(m-2,l)*b(l,
n)
3910 s21 = s21 + a(m-1,l)*b(l,
n)
3911 s31 = s31 + a(m,l)*b(l,
n)
3917 elseif (nresid == 2)
then
3925 s11 = s11 + a(m-2,l)*b(l,
n-1)
3926 s12 = s12 + a(m-2,l)*b(l,
n)
3927 s21 = s21 + a(m-1,l)*b(l,
n-1)
3928 s22 = s22 + a(m-1,l)*b(l,
n)
3929 s31 = s31 + a(m,l)*b(l,
n-1)
3930 s32 = s32 + a(m,l)*b(l,
n)
3950 s11 = s11 + a(m-2,l)*b(l,
n-2)
3951 s12 = s12 + a(m-2,l)*b(l,
n-1)
3952 s13 = s13 + a(m-2,l)*b(l,
n)
3953 s21 = s21 + a(m-1,l)*b(l,
n-2)
3954 s22 = s22 + a(m-1,l)*b(l,
n-1)
3955 s23 = s23 + a(m-1,l)*b(l,
n)
3956 s31 = s31 + a(m,l)*b(l,
n-2)
3957 s32 = s32 + a(m,l)*b(l,
n-1)
3958 s33 = s33 + a(m,l)*b(l,
n)
3977 use kinds, only : dp
3978 real(DP) :: a(m,2), b(2,
n), c(m,
n)
3985 c(
i,j) = a(
i,1)*b(1,j) &
3987 c(
i,j+1) = a(
i,1)*b(1,j+1) &
3989 c(
i,j+2) = a(
i,1)*b(1,j+2) &
3991 c(
i,j+3) = a(
i,1)*b(1,j+3) &
3995 if (nresid == 0)
then
3997 elseif (nresid == 1)
then
3999 c(
i,
n) = a(
i,1)*b(1,
n) &
4002 elseif (nresid == 2)
then
4004 c(
i,
n-1) = a(
i,1)*b(1,
n-1) &
4006 c(
i,
n) = a(
i,1)*b(1,
n) &
4011 c(
i,
n-2) = a(
i,1)*b(1,
n-2) &
4013 c(
i,
n-1) = a(
i,1)*b(1,
n-1) &
4015 c(
i,
n) = a(
i,1)*b(1,
n) &
subroutine mxmur2_11(a, n1, b, n2, c, n3)
subroutine mxmf3_11(a, n1, b, n2, c, n3)
subroutine mxmur2_1(a, n1, b, n2, c, n3)
subroutine mxmf2(A, N1, B, N2, C, N3)
unrolled loop version
subroutine mxf7(a, n1, b, n2, c, n3)
subroutine mxmfb_12(a, n1, b, n2, c, n3)
subroutine mxmur2_3(a, n1, b, n2, c, n3)
subroutine mxmfb_6(a, n1, b, n2, c, n3)
subroutine mxmur2_9(a, n1, b, n2, c, n3)
subroutine mxmf3_23(a, n1, b, n2, c, n3)
subroutine mxf14(a, n1, b, n2, c, n3)
subroutine mxmf3_24(a, n1, b, n2, c, n3)
subroutine mxf9(a, n1, b, n2, c, n3)
subroutine madd(a, n1, b, n2, c, n3)
subroutine initab(a, b, n)
subroutine mxmur3_2(a, n1, b, n2, c, n3)
subroutine mxmur3_16(a, n1, b, n2, c, n3)
subroutine mxmf3_6(a, n1, b, n2, c, n3)
subroutine mxmur2_16(a, n1, b, n2, c, n3)
subroutine mxmur2_13(a, n1, b, n2, c, n3)
subroutine mxmfb_16(a, n1, b, n2, c, n3)
subroutine mxm44_0(a, m, b, k, c, n)
subroutine mxmfb_11(a, n1, b, n2, c, n3)
subroutine mxmf3(a, n1, b, n2, c, n3)
subroutine mxmur2_8(a, n1, b, n2, c, n3)
subroutine mxmur3_4(a, n1, b, n2, c, n3)
subroutine mxmf3_15(a, n1, b, n2, c, n3)
subroutine mxf23(a, n1, b, n2, c, n3)
subroutine mxmfb_7(a, n1, b, n2, c, n3)
subroutine mxmfb_13(a, n1, b, n2, c, n3)
subroutine mxmfb(a, n1, b, n2, c, n3)
subroutine mxf11(a, n1, b, n2, c, n3)
subroutine mxm44_0_t(a, m, b, k, c, n)
subroutine mxms(a, n1, b, n2, c, n3)
subroutine mxmur3_6(a, n1, b, n2, c, n3)
subroutine mxmfb_24(a, n1, b, n2, c, n3)
subroutine mxmur3_14(a, n1, b, n2, c, n3)
subroutine mxmfb_1(a, n1, b, n2, c, n3)
subroutine mxmf3_7(a, n1, b, n2, c, n3)
subroutine mxmf3_20(a, n1, b, n2, c, n3)
subroutine mxf1(a, n1, b, n2, c, n3)
subroutine mxmur3_12(a, n1, b, n2, c, n3)
subroutine mxmf3_12(a, n1, b, n2, c, n3)
subroutine mxmd(a, n1, b, n2, c, n3)
subroutine mxmfb_18(a, n1, b, n2, c, n3)
subroutine mxmfb_23(a, n1, b, n2, c, n3)
subroutine mxf19(a, n1, b, n2, c, n3)
subroutine mxmfb_4(a, n1, b, n2, c, n3)
subroutine mxmur2_2(a, n1, b, n2, c, n3)
subroutine mxf21(a, n1, b, n2, c, n3)
subroutine mxmfb_8(a, n1, b, n2, c, n3)
subroutine mxmfb_22(a, n1, b, n2, c, n3)
subroutine mxf6(a, n1, b, n2, c, n3)
subroutine mxmf3_4(a, n1, b, n2, c, n3)
subroutine mxmfb_14(a, n1, b, n2, c, n3)
subroutine mxf20(a, n1, b, n2, c, n3)
subroutine mxmf3_19(a, n1, b, n2, c, n3)
subroutine mxmfb_20(a, n1, b, n2, c, n3)
subroutine mxf10(a, n1, b, n2, c, n3)
subroutine mxmur2(a, n1, b, n2, c, n3)
subroutine mxmf3_16(a, n1, b, n2, c, n3)
subroutine mxf15(a, n1, b, n2, c, n3)
subroutine mxmur2_6(a, n1, b, n2, c, n3)
subroutine mxmf3_5(a, n1, b, n2, c, n3)
subroutine mxmur2_4(a, n1, b, n2, c, n3)
subroutine mxf13(a, n1, b, n2, c, n3)
subroutine mxmfb_3(a, n1, b, n2, c, n3)
subroutine mxmf3_21(a, n1, b, n2, c, n3)
subroutine mxmur3(a, n1, b, n2, c, n3)
subroutine mxmu4(a, n1, b, n2, c, n3)
subroutine mxmfb_15(a, n1, b, n2, c, n3)
subroutine mxmur2_15(a, n1, b, n2, c, n3)
subroutine mxmur3_8(a, n1, b, n2, c, n3)
subroutine mxmf3_18(a, n1, b, n2, c, n3)
subroutine mxf12(a, n1, b, n2, c, n3)
subroutine mxmfb_10(a, n1, b, n2, c, n3)
subroutine mxf5(a, n1, b, n2, c, n3)
subroutine mxmfb_9(a, n1, b, n2, c, n3)
subroutine mxmur3_13(a, n1, b, n2, c, n3)
subroutine mxmfb_5(a, n1, b, n2, c, n3)
subroutine mxm44(a, n1, b, n2, c, n3)
subroutine mxmf3_2(a, n1, b, n2, c, n3)
subroutine mxf24(a, n1, b, n2, c, n3)
subroutine mxmur2_7(a, n1, b, n2, c, n3)
subroutine mxm44_2_t(a, m, b, k, c, n)
subroutine mxmf3_10(a, n1, b, n2, c, n3)
subroutine mxmur3_7(a, n1, b, n2, c, n3)
subroutine mxf8(a, n1, b, n2, c, n3)
subroutine mxmf3_3(a, n1, b, n2, c, n3)
subroutine mxmur3_1(a, n1, b, n2, c, n3)
subroutine mxmf3_14(a, n1, b, n2, c, n3)
subroutine mxmur2_14(a, n1, b, n2, c, n3)
subroutine mxmfb_19(a, n1, b, n2, c, n3)
subroutine mxmf3_13(a, n1, b, n2, c, n3)
subroutine mxmf3_22(a, n1, b, n2, c, n3)
subroutine mxmf3_8(a, n1, b, n2, c, n3)
subroutine mxmfb_2(a, n1, b, n2, c, n3)
subroutine mxmfb_17(a, n1, b, n2, c, n3)
subroutine mxf22(a, n1, b, n2, c, n3)
subroutine mxmur3_5(a, n1, b, n2, c, n3)
subroutine mxmf3_1(a, n1, b, n2, c, n3)
subroutine mxm44_2(a, m, b, k, c, n)
subroutine mxmur2_10(a, n1, b, n2, c, n3)
subroutine mxmf3_9(a, n1, b, n2, c, n3)
subroutine mxmur3_3(a, n1, b, n2, c, n3)
subroutine mxf17(a, n1, b, n2, c, n3)
subroutine mxf4(a, n1, b, n2, c, n3)
subroutine mxf3(a, n1, b, n2, c, n3)
subroutine mxmfb_21(a, n1, b, n2, c, n3)
subroutine mxmur3_11(a, n1, b, n2, c, n3)
subroutine mxmf3_17(a, n1, b, n2, c, n3)
subroutine mxmur2_5(a, n1, b, n2, c, n3)
subroutine mxmur3_15(a, n1, b, n2, c, n3)
subroutine mxf2(a, n1, b, n2, c, n3)
subroutine mxmur3_9(a, n1, b, n2, c, n3)
subroutine mxmur3_10(a, n1, b, n2, c, n3)
subroutine mxf16(a, n1, b, n2, c, n3)
subroutine mxf18(a, n1, b, n2, c, n3)
subroutine mxmur2_12(a, n1, b, n2, c, n3)