我对Mathematica很新,但我很确定有一种简单的方法可以做到,但我无法弄清楚:如果我使用InterpolatingPolynomial或类似函数创建多项式并将其赋值给变量(我们称之为Poly),如何在可通过
调用的函数中对其进行转换Poly[5]
获得x = 5时多项式的值?我知道我可以使用
Poly /. x->5
为此,但是对于我接下来要做的事情,我真的需要Poly作为一个可调用函数。
答案 0 :(得分:1)
这是另一种方式:
fPoly = Function[x, Evaluate[Poly]]
由于函数[...]“保持”其参数,因此需要评估[...]。或者,您可以使用
fPoly = Function @@ {x, Poly}
在后一种方法中,在Poly评估之后才会应用head函数。
答案 1 :(得分:0)
发现,实际上非常简单:
fPoly = Function[k, Poly /. x -> k];
答案 2 :(得分:0)
如果你有:
k = InterpolatingPolynomial[{{-1, 4}, {0, 2}, {1, 6}}, u]
然后
poly[x_] := k /. u -> x