#include #include #include int main() { double A[] = { 1., 2., 3., 4. }; double B[] = { 2., 3., 4., 5. }; double alpha = 1., beta = 0.; gsl_matrix_view A_m = gsl_matrix_view_array(A, 2, 2); gsl_matrix_view B_m = gsl_matrix_view_array(B, 2, 2); gsl_matrix *C = gsl_matrix_alloc(2,2); gsl_blas_dgemm(CblasNoTrans, CblasNoTrans, alpha, &A_m.matrix, &B_m.matrix, beta, C); printf("[[\n%f\t%f\n%f\t%f]]\n", gsl_matrix_get(C, 0, 0), gsl_matrix_get(C, 0, 1), gsl_matrix_get(C, 1, 0), gsl_matrix_get(C, 1, 1)); gsl_matrix_free(C); return 0; }