Evalúe la serie 2-D de Hermite en el producto cartesiano de x e y con una array 3d de coeficiente usando NumPy en Python

En este artículo, discutiremos cómo evaluar una serie 2-D de Hermite en el producto cartesiano de xey con una array 3d de coeficientes en Python y NumPy.

Método NumPy.polynomial.hermite.hermgrid2d

Los polinomios de Hermite son importantes en la teoría de la aproximación porque los Nodes de Hermite se utilizan como puntos de coincidencia para optimizar la interpolación de polinomios. 
Para realizar la diferenciación de Hermite, NumPy proporciona una función llamada Hermite.hermgrid2d que se puede utilizar para evaluar el producto cartesiano de la serie 3D de Hermite. Esta función convierte los parámetros x e y en array solo si son tuplas o una lista, de lo contrario, se deja sin cambios y, si no es una array, se trata como un escalar.

Sintaxis : polinomio.hermite.hermgrid2d(x, y, c)

Parámetros :

  • x,y: tipo_arreglo
  • c: array de coeficientes

Devuelve: Los valores del polinomio bidimensional en los puntos del producto cartesiano de xey.

Ejemplo 1:

En el primer ejemplo. Consideremos una array 3D c que tiene 24 elementos. Consideremos una serie 2D [2,1],[2,1] para evaluar contra la array 1D. Importe los paquetes necesarios como se muestra y pase los parámetros apropiados como se muestra a continuación.

Python3

import numpy as np
from numpy.polynomial import hermite
  
# coefficient array
c = np.arange(24).reshape(2,2,6)
  
print(f'The coefficient array is {c}')
print(f'The shape of the array is {c.shape}')
print(f'The dimension of the array is {c.ndim}D')
print(f'The datatype of the array is {c.dtype}')
  
# evaluating 3d coeff array with a 2d 
# hermite series
res = hermite.hermgrid2d([2,1], [2,1], c)
  
# resultant array
print(f'Resultant series ---> {res}')

Producción:

The coefficient array is [[[ 0  1  2  3  4  5]
  [ 6  7  8  9 10 11]]

 [[12 13 14 15 16 17]
  [18 19 20 21 22 23]]]
The shape of the array is (2, 2, 6)
The dimension of the array is 3D
The datatype of the array is int64
Resultant series ---> [[[360. 204.]
  [192. 108.]]

 [[385. 219.]
  [207. 117.]]

 [[410. 234.]
  [222. 126.]]

 [[435. 249.]
  [237. 135.]]

 [[460. 264.]
  [252. 144.]]

 [[485. 279.]
  [267. 153.]]]

Ejemplo 2:

En el primer ejemplo. Consideremos una array 3D c que tiene 48 elementos. Consideremos una serie 2D [1,2],[1,2] para evaluar contra la array 1D. Importe los paquetes necesarios como se muestra y pase los parámetros apropiados como se muestra a continuación.

Python3

import numpy as np
from numpy.polynomial import hermite
  
# coefficient array
c = np.arange(48).reshape(2,2,12)
  
print(f'The coefficient array is {c}')
print(f'The shape of the array is {c.shape}')
print(f'The dimension of the array is {c.ndim}D')
print(f'The datatype of the array is {c.dtype}')
  
# evaluating 3d coeff array with a 2d 
# hermite series
res = hermite.hermgrid2d([1,2], [1,2], c)
  
# resultant array
print(f'Resultant series ---> {res}')

Producción:

The coefficient array is [[[ 0  1  2  3  4  5  6  7  8  9 10 11]
  [12 13 14 15 16 17 18 19 20 21 22 23]]

 [[24 25 26 27 28 29 30 31 32 33 34 35]
  [36 37 38 39 40 41 42 43 44 45 46 47]]]
The shape of the array is (2, 2, 12)
The dimension of the array is 3D
The datatype of the array is int64
Resultant series ---> [[[216. 384.]
  [408. 720.]]

 [[225. 399.]
  [423. 745.]]

 [[234. 414.]
  [438. 770.]]

 [[243. 429.]
  [453. 795.]]

 [[252. 444.]
  [468. 820.]]

 [[261. 459.]
  [483. 845.]]

 [[270. 474.]
  [498. 870.]]

 [[279. 489.]
  [513. 895.]]

 [[288. 504.]
  [528. 920.]]

 [[297. 519.]
  [543. 945.]]

 [[306. 534.]
  [558. 970.]]

 [[315. 549.]
  [573. 995.]]]

Publicación traducida automáticamente

Artículo escrito por sravankumar8128 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *