20181005 122527.564 BLAS3_D_PRB FORTRAN77 version Test the BLAS library. DGEMM_TEST DGEMM carries out matrix multiplications for double precision real matrices. 1: C = alpha * A * B + beta * C; 2: C = alpha * A' * B + beta * C; 3: C = alpha * A * B' + beta * C; 4: C = alpha * A' * B' + beta * C; We carry out all four calculations, but in each case, we choose our input matrices so that we get the same result. C = alpha * A * B + beta * C: Col 1 2 3 4 5 Row 1: 1585.00 1660.00 1735.00 1810.00 1885.00 2: 2875.00 3010.00 3145.00 3280.00 3415.00 3: 4165.00 4360.00 4555.00 4750.00 4945.00 4: 5455.00 5710.00 5965.00 6220.00 6475.00 C = alpha * A' * B + beta * C: Col 1 2 3 4 5 Row 1: 1585.00 1660.00 1735.00 1810.00 1885.00 2: 2875.00 3010.00 3145.00 3280.00 3415.00 3: 4165.00 4360.00 4555.00 4750.00 4945.00 4: 5455.00 5710.00 5965.00 6220.00 6475.00 C = alpha * A * B' + beta * C: Col 1 2 3 4 5 Row 1: 1585.00 1660.00 1735.00 1810.00 1885.00 2: 2875.00 3010.00 3145.00 3280.00 3415.00 3: 4165.00 4360.00 4555.00 4750.00 4945.00 4: 5455.00 5710.00 5965.00 6220.00 6475.00 C = alpha * A' * B' + beta * C: Col 1 2 3 4 5 Row 1: 1585.00 1660.00 1735.00 1810.00 1885.00 2: 2875.00 3010.00 3145.00 3280.00 3415.00 3: 4165.00 4360.00 4555.00 4750.00 4945.00 4: 5455.00 5710.00 5965.00 6220.00 6475.00 DTRMM_TEST DTRMM multiplies a triangular matrix A and a rectangular matrix B 1: B = alpha * A * B; 2: B = alpha * A' * B; B = alpha * A * B: Col 1 2 3 4 5 Row 1: 828.000 856.000 884.000 912.000 940.000 2: 970.000 1000.00 1030.00 1060.00 1090.00 3: 946.000 972.000 998.000 1024.00 1050.00 4: 656.000 672.000 688.000 704.000 720.000 B = alpha * A * B: Col 1 2 3 4 5 Row 1: 44.0000 48.0000 52.0000 56.0000 60.0000 2: 234.000 248.000 262.000 276.000 290.000 3: 670.000 700.000 730.000 760.000 790.000 4: 1452.00 1504.00 1556.00 1608.00 1660.00 DTRSM_TEST DTRSM solves a linear system involving a triangular matrix A and a rectangular matrix B. 1: Solve A * X = alpha * B; 2: Solve A' * X = alpha * B; 3: Solve X * A = alpha * B; 4: Solve X * A' = alpha * B; X = inv ( A ) * alpha * B: Col 1 2 3 4 5 Row 1: -7.10938 -6.92708 -6.74479 -6.56250 -6.38021 2: -2.84375 -2.77083 -2.69792 -2.62500 -2.55208 3: -1.62500 -1.58333 -1.54167 -1.50000 -1.45833 4: 10.2500 10.5000 10.7500 11.0000 11.2500 X = inv ( A' ) * alpha * B: Col 1 2 3 4 5 Row 1: 11.0000 12.0000 13.0000 14.0000 15.0000 2: 2.25000 2.00000 1.75000 1.50000 1.25000 3: 1.12500 1.00000 0.875000 0.750000 0.625000 4: 0.703125 0.625000 0.546875 0.468750 0.390625 X = alpha * B * inv ( A ): Col 1 2 3 4 5 Row 1: 11.0000 -2.25000 -1.12500 -0.703125 -0.492188 2: 21.0000 -4.75000 -2.37500 -1.48438 -1.03906 3: 31.0000 -7.25000 -3.62500 -2.26562 -1.58594 4: 41.0000 -9.75000 -4.87500 -3.04688 -2.13281 X = alpha * B * inv ( A' ): Col 1 2 3 4 5 Row 1: 0.820312 0.328125 0.187500 0.125000 3.00000 2: 2.46094 0.984375 0.562500 0.375000 5.00000 3: 4.10156 1.64062 0.937500 0.625000 7.00000 4: 5.74219 2.29688 1.31250 0.875000 9.00000 BLAS3_D_PRB Normal end of execution. 20181005 122527.564