numpy.polynomial.hermite.hermvander2d
- polynomial.hermite.hermvander2d(x, y, deg)[source]
-
Псевдо-матрица Вандермонда заданных степеней.
Возвращает псевдо-матрицу Вандермонда заданных степеней
degи точек выборки(x, y). Псевдо-матрица Вандермонда определяется как\[V[..., (deg[1] + 1)*i + j] = H_i(x) * H_j(y),\]где
0 <= i <= deg[0]и0 <= j <= deg[1]. Ведущие индексыVиндексируют точки(x, y), а последний индекс кодирует степени полиномов Эрмита.Если
V = hermvander2d(x, y, [xdeg, ydeg]), то столбцыVсоответствуют элементам двумерного массива коэффициентовcформы (xdeg + 1, ydeg + 1) в порядке\[c_{00}, c_{01}, c_{02} ... , c_{10}, c_{11}, c_{12} ...\]и
np.dot(V, c.flat)иhermval2d(x, y, c)будут совпадать с точностью до округления. Это соответствие полезно как для подгонки по методу наименьших квадратов, так и для вычисления большого числа 2-мерных рядов Эрмита с одинаковыми степенями и точками выборки.- Параметры:
-
- x, yarray_like
-
Массивы координат точек, все с одинаковой формой. Типы данных будут преобразованы в float64 или complex128 в зависимости от того, являются ли какие-либо элементы комплексными. Скаляры преобразуются в одномерные массивы.
- degсписок целых чисел
-
Список максимальных степеней вида [x_deg, y_deg].
- Возвращает:
-
- vander2dndarray
-
Форма возвращаемой матрицы
x.shape + (order,), где \(order = (deg[0]+1)*(deg[1]+1)\). Тип данных будет таким же, как преобразованныеxиy.
См. также
Примечания
Введено в версии 1.7.0.
Примеры
>>> from numpy.polynomial.hermite import hermvander2d >>> x = np.array([-1, 0, 1]) >>> y = np.array([-1, 0, 1]) >>> hermvander2d(x, y, [2, 2]) array([[ 1., -2., 2., -2., 4., -4., 2., -4., 4.], [ 1., 0., -2., 0., 0., -0., -2., -0., 4.], [ 1., 2., 2., 2., 4., 4., 2., 4., 4.]])
© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.polynomial.hermite.hermvander2d.html