math:matrix*

(math:matrix* v1 v2 joint-dimension [v3] ['transpose_a] ['transpose_b])


Description:

Matrix multiplcation


Arguments:

   'transpose_b -- if this symbol is provided transpose the second matrix before computing the result

             v1 -- first matrix represented as a flat vector

             v3 -- optional 3rd vector which if supplied will have the output written to it

   'transpose_a -- if this symbol is provided transpose the first matrix before computing the result

 join-dimension -- the dimension shared by the two matricies

             v2 -- second matrix represented as a flat vector


Returns: vector or boolean


Examples:

(math:matrix* (vector 1 2 3 4 5 6 7 8) (vector 1 2 3 4 5 6 7 8 9 10 11 12) 4)    => #(70 80 90 158 184 210)


(define v3 (make-vector 6))

(math:matrix* (vector 1 2 3 4 5 6 7 8) (vector 1 2 3 4 5 6 7 8 9 10 11 12) 4 v3)

(print v3)



Back to index