numpy.polynomial.hermite.hermvander#

polynomial.hermite.hermvander(x, deg)[源代码]#

给定次数的伪 Vandermonde 矩阵.

返回次数为 deg 和采样点为 x 的伪 Vandermonde 矩阵.伪 Vandermonde 矩阵定义为

\[V[..., i] = H_i(x),\]

其中 0 <= i <= deg . V 的前导索引索引 x 的元素,最后一个索引是埃尔米特多项式的阶数.

如果 c 是长度为 n + 1 的系数的一维数组,并且 V 是数组 V = hermvander(x, n) ,则 np.dot(V, c)hermval(x, c) 在舍入误差范围内是相同的.这种等价性对于最小二乘拟合以及对相同阶数和采样点的 Hermite 级数进行大量求值都很有用.

参数:
xarray_like

点数组.dtype 根据任何元素是否为复数转换为 float64 或 complex128.如果 x 是标量,则将其转换为一维数组.

degint

结果矩阵的次数.

返回:
vanderndarray

伪 Vandermonde 矩阵.返回的矩阵的形状为 x.shape + (deg + 1,) ,其中最后一个索引是相应埃尔米特多项式的阶数.dtype 将与转换后的 x 相同.

示例

>>> import numpy as np
>>> from numpy.polynomial.hermite import hermvander
>>> x = np.array([-1, 0, 1])
>>> hermvander(x, 3)
array([[ 1., -2.,  2.,  4.],
       [ 1.,  0., -2., -0.],
       [ 1.,  2.,  2., -4.]])