Rescales a differential operator so that the leading term of the leading coefficient is 1.
i1 : S = diffOpRing (QQ[x,y,t]); |
i2 : D = diffOp(3*x^3*dx^2*dt + (x+y)*dt^2) o2 = | 3x3dx^2dt+(x+y)dt^2 | 1 o2 : DiffOp in S |
i3 : normalize D o3 = | x3dx^2dt+(1/3x+1/3y)dt^2 | 1 o3 : DiffOp in S |
This can be useful when computing "canonical" sets of Noetherian operators, as a valid set of Noetherian operators stays valid even after rescaling.
i4 : I = ideal(x^2,y^2 - x*t); o4 : Ideal of QQ[x..y, t] |
i5 : nops = noetherianOperators(I, Strategy => "MacaulayMatrix"); |
i6 : nops / normalize == {diffOp 1_S, diffOp dy, diffOp(t*dy^2 + 2*dx), diffOp(t*dy^3 + 6*dx*dy)} o6 = true |
The object normalize is a method function.