Matrix multiplication when working over the Weyl algebra Macaulay2 I am running the code below in Macaulay2.
load "Dmodules.m2"
R = QQ[x_11,x_12,x_21,x_22]
D = makeWeylAlgebra R
a = x_11*dx_21 + x_12*dx_22
b = x_22*dx_22 + 2
a*b
matrix{{a}} * matrix{{b}}

The code is very straightforward of course. I am multiplying two elements of the Weyl algebra. The output when I do a*b is $$x_{11}x_{22}\partial x_{21}\partial x_{22} + x_{12}x_{22}\partial x_{22}^2 + 2x_{11}\partial x_{21} + 3x_{12}\partial x_{22},$$ whereas matrix{{a}} * matrix{{b}} gives $$x_{11}x_{22}\partial x_{21}\partial x_{22} + x_{12}x_{22}\partial x_{22}^2 + 2x_{11}\partial x_{21} + 2x_{12}\partial x_{22}.$$
Clearly, I am misunderstanding something because I expect the output of a*b when I do matrix{{a}}*matrix{{b}}, because that is what I get when I do it by hand. Should I be using some different syntax here? Any insight most appreciated.
EDIT:
matrix{{b}} * matrix{{a}}

gives $$x_{11}x_{22}\partial x_{21}\partial x_{22} + x_{12}x_{22}\partial x_{22}^2 + 2x_{11}\partial x_{21} + 3x_{12}\partial x_{22}.$$ This is consistent with other things I have observed. For instance, if I take a ideal with elements in the weyl algebra, and compute a free resolution, say x, and I do
x.dd_1 * x.dd_2,

then I get 0. But when I do
transpose(x.dd_2) * transpose(x.dd_1),

I don't get 0. So somehow, when multiplying matrices with elements from a Weyl algebra, the order is reversed?

I am not familiar with Macaulay2 but took a guess.
The operator $**$ works.
$matrix(\{\{a\}\}) \,**\, matrix(\{\{b\}\})$
$x_{11}​x_{22}​dx_{21}​dx_{22}​+x_{12}​x_{22}​dx_{22}^2​+2x_{11}​dx_{21}​+3x_{12}​dx_{22}​​$
a*b
$x_{11}​x_{22}​dx_{21}​dx_{22}​+x_{12}​x_{22}​dx_{22}^2​+2x_{11}​dx_{21}​+3x_{12}​dx_{22}​​$
It turns out this is the tensor product.
It is not clear why the $*$ matrix multiplier is not using the Weyl group multiplication operator as the matrix tensor product operator seems to be using even when it is told that the matrices are over the Weyl group $matrix(D,\{\{a\}\})*matrix(D,\{\{b\}\})$.
It looks like a bug report is called for.
