numpy.polynomial.hermite_e.hermevander#

polynomial.hermite_e.hermevander(x, deg)[source]#

给定阶数的伪范德蒙德矩阵。

返回阶数为 deg 且采样点为 x 的伪范德蒙德矩阵。伪范德蒙德矩阵定义为

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

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

如果 c 是一个长度为 n + 1 的一维系数数组,V 是数组 V = hermevander(x, n),则 np.dot(V, c)hermeval(x, c) 在舍入误差范围内是相同的。这种等价关系对于最小二乘拟合和评估大量相同阶数和采样点的埃尔米特E级数都很有用。

参数::
x类数组

点的数组。数据类型将根据元素是否为复数转换为 float64 或 complex128。如果 x 是标量,则将其转换为一维数组。

degint

结果矩阵的阶数。

返回值::
vanderndarray

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

示例

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