A type of DiffOp returned by interpolation based methods, such as numericalNoetherianOperators. Because of this, users are not expected to create instances of this type.
If the interpolation of any coefficient fails, the numerator and denominator will be replaced by the string "?".
Assuming the interpolation was successful, the method evaluate(InterpolatedDiffOp,Point) will convert an InterpolatedDiffOp to a specialized differential operators of type DiffOp by evaluating each numerator and denominator at a point.
i1 : R = CC[x,y] o1 = R o1 : PolynomialRing |
i2 : D = new InterpolatedDiffOp from {x => (x+y, pi*ii*x^2*y), y => (x, 1.3_R)} x + y x o2 = --------------*dx + ---*dy 2 1.3 3.14159*ii*x y o2 : InterpolatedDiffOp |
i3 : D' = evaluate(D, point{{1.2, 2+ii}}) o3 = (- .0530516 - .327152*ii)dx + .923077*dy o3 : DiffOp |
The object InterpolatedDiffOp is a type, with ancestor classes DiffOp < HashTable < Thing.