Polyval(p,x)用于评估多项式

时间:2015-03-23 14:08:27

标签: python numpy

我对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?

2 个答案:

答案 0 :(得分:3)

您以相反的顺序输入系数。

According to the documentation,等式

p(x) = 1*x^3 + 0*x^2 + 2*x + 1

有系数

p = [1, 0, 2, 1]

答案 1 :(得分:1)

你的p数组顺序错误。你应该从最高指数的系数开始。 尝试使用p = [1,0,2,1]。