умножение матриц в core.matrix
Это кажется глупым вопросом, но я не могу понять это после небольшого осмотра, поэтому я спрошу здесь.
Как я могу умножить матрицу 3x2 на матрицу 2x3 в core.matrix? Я, должно быть, неправильно понимаю что-то очень простое. Наивно, я ожидал, что это сработает, и думал, что core.matrix сделает для меня основную математику.
(* (matrix [[1 0 -2]
[0 3 -1]])
(matrix [[0 3]
[-2 -1]
[0 4]]))
Я нашел этот пример при первом попадании в поиск Googlehttp://www.purplemath.com/modules/mtrxmult.htm и ожидаемый результат
[[ 0 -5]
[-6 -7]]
Вместо этого я получаю:
RuntimeException Incompatible shapes, cannot broadcast [3 2] to [2 3]
clojure.core.matrix.impl.persistent-vector/eval5013/fn--5014
(persistent_vector.clj:152)
Заранее спасибо.
постскриптум мое пространство имен выглядит так же, как пример из core.matrix
(ns xyz
(:refer-clojure :exclude [* - + == /]) ; get from core.matrix
(:use clojure.core.matrix)
(:use clojure.core.matrix.operators)
(:gen-class))