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