我对 Python 知之甚少,我正在尝试使用它来进行一些简单的多项式插值,但对于其中一个内置函数,我有一些不了解的地方。
我正在尝试使用 polyval(p,x) 计算 x 处的多项式 p。
我做了一个示例多项式 p(x) = 1 + 2x + x^3,我创建了一个数组 p = [1,2,0,1] 来定义它,我想知道 x = 0,1,2 处的值,所以我创建了另一个数组 x = [0,1,2]。
执行 polyval(p,x) 得到了 [1, 4, 17] 的输出。 p(0) 和 p(1) 是正确的,但是 p(2) 应该是 13,而不是 17。为什么它给我17?
请您参考如下方法:
您正在以相反的顺序输入系数。
According to the documentation , 方程
p(x) = 1*x^3 + 0*x^2 + 2*x + 1
有系数
p = [1, 0, 2, 1]
