📜  Python| Numpy np.chebvander() 方法(1)

📅  最后修改于: 2023-12-03 15:34:15.316000             🧑  作者: Mango

Python | Numpy np.chebvander() 方法

Numpy 是 Python 中处理数组的库。它提供了一个高性能的多维数组对象以及用于处理这些数组的工具。

Numpy 中的 np.chebvander() 方法用于计算从阶为0到给定阶的Chebyshev 1类多项式的值。Chebyshev 1类多项式是由以下公式定义的:

$T_n(x) = cos(n * acos(x)), -1 \le x \le 1$

np.chebvander() 方法的语法如下:

numpy.chebvander(x, deg)

其中,

  • x:数组,表示要进行多项式计算的值。
  • deg:整数,表示要计算的多项式的最高阶数。

np.chebvander() 方法返回一个2-D数组,其大小为(len(x), deg+1),其中每一行包含 按从小到大排序的给定阶数的Chebyshev 1类多项式的值。

下面是一个示例程序,演示如何使用 np.chebvander() 方法:

import numpy as np

a = np.array([-1, 0, 1])
print("Input array:")
print(a)

# computing the chebyshev 1st class polynomial of degrees 0 and 1
b = np.chebvander(a, 1)
print("Chebyshev 1st class polynomial of degrees 0 and 1:")
print(b)

# computing the chebyshev 1st class polynomial of degrees 0, 1, and 2
c = np.chebvander(a, 2)
print("Chebyshev 1st class polynomial of degrees 0, 1, and 2:")
print(c)

输出为:

Input array:
[-1  0  1]
Chebyshev 1st class polynomial of degrees 0 and 1:
[[ 1.       -1.      ]
 [ 1.        0.      ]
 [ 1.        1.      ]]
Chebyshev 1st class polynomial of degrees 0, 1, and 2:
[[ 1.       -1.        1.      ]
 [ 1.        0.       -0.      ]
 [ 1.        1.        1.      ]]

在这个例子中,我们首先定义了一个输入数组 a,它包含 [-1, 0, 1]。然后我们计算了阶数为0和1的Chebyshev 1类多项式的值,并将结果存储在变量 b 中。最后,我们计算了阶数为0、1和2的Chebyshev 1类多项式的值,并将结果存储在变量 c 中。我们可以看到,np.chebvander() 方法返回一个包含多个行的2-D数组,每个行都包含按从小到大排序的给定阶数的Chebyshev 1类多项式的值。