summaryrefslogtreecommitdiff
path: root/gsl-1.9/doc/examples/blas.c
diff options
context:
space:
mode:
Diffstat (limited to 'gsl-1.9/doc/examples/blas.c')
-rw-r--r--gsl-1.9/doc/examples/blas.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/gsl-1.9/doc/examples/blas.c b/gsl-1.9/doc/examples/blas.c
new file mode 100644
index 0000000..ab4b39b
--- /dev/null
+++ b/gsl-1.9/doc/examples/blas.c
@@ -0,0 +1,31 @@
+#include <stdio.h>
+#include <gsl/gsl_blas.h>
+
+int
+main (void)
+{
+ double a[] = { 0.11, 0.12, 0.13,
+ 0.21, 0.22, 0.23 };
+
+ double b[] = { 1011, 1012,
+ 1021, 1022,
+ 1031, 1032 };
+
+ double c[] = { 0.00, 0.00,
+ 0.00, 0.00 };
+
+ gsl_matrix_view A = gsl_matrix_view_array(a, 2, 3);
+ gsl_matrix_view B = gsl_matrix_view_array(b, 3, 2);
+ gsl_matrix_view C = gsl_matrix_view_array(c, 2, 2);
+
+ /* Compute C = A B */
+
+ gsl_blas_dgemm (CblasNoTrans, CblasNoTrans,
+ 1.0, &A.matrix, &B.matrix,
+ 0.0, &C.matrix);
+
+ printf ("[ %g, %g\n", c[0], c[1]);
+ printf (" %g, %g ]\n", c[2], c[3]);
+
+ return 0;
+}