Since the Weyl algebra has commutation rules, this routine attaches to the Weyl algebra two keys to organize the variables. The first key 'dpairVars' contains 3 lists: a list of the coordinate variables, a list of the derivative variables, and a list of the central variables. The second key 'dpairInds' also contains 3 lists of the corresponding indices to 'dpairVars'.
i1 : W = QQ[x,y,Dx,Dy, WeylAlgebra => {x=>Dx,y=>Dy}]
o1 = W
o1 : PolynomialRing
|
i2 : createDpairs W
|
i3 : W.dpairVars
o3 = {{x, y}, {Dx, Dy}, {}}
o3 : List
|
i4 : W.dpairInds
o4 = {{0, 1}, {2, 3}, {}}
o4 : List
|