En este artículo, discutiremos cómo evaluar una serie 2-D de Chebyshev en los puntos (x, y) con una array 3D de coeficientes en Python.
Ejemplo
Input: [[[ 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]]] Output: [[[1920. 522.] [ 414. 108.]] [[2020. 552.] [ 444. 117.]] [[2120. 582.] [ 474. 126.]]] Explanation: Two dimensional Chebyshev series.
Método NumPy.polynomial.Chebyshev.chebgrid2d
Para realizar la diferenciación de Chebyshev, NumPy proporciona una función llamada Chebyshev.chebgrid2d que se puede usar para evaluar el producto cartesiano de la serie 2D de Chebyshev. Esta función convierte los parámetros x e y en arreglos solo si son tuplas o una lista y de la misma forma, de lo contrario, se deja sin cambios y, si no es un arreglo, se trata como un escalar. Si c tiene una dimensión mayor que 2, los índices restantes enumeran varios conjuntos de coeficientes.
Sintaxis: chebyshev.chebgrid2d(x,y,c)
Parámetros:
- x,y: Array de entrada.
- c: Array de coeficientes ordenados
Devoluciones: Serie de Chebyshev bidimensional en puntos del producto cartesiano de x e y.
Ejemplo 1:
En el primer ejemplo. Consideremos un arreglo 3D c de tamaño 27 y una serie de [2,2],[2,2] para evaluar contra el arreglo 2D.
Python3
import numpy as np from numpy.polynomial import chebyshev # co.efficient array c = np.arange(27).reshape(3, 3, 3) print(f'The co.efficient 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 co.eff array with a chebyshev series res = chebyshev.chebgrid2d([2, 2], [2, 2], c) # resultant array print(f'Resultant series ---> {res}')
Producción:
The co.efficient 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]]] The shape of the array is (3, 3, 3) The dimension of the array is 3D The datatype of the array is int32 Resultant series ---> [[[1920. 1920.] [1920. 1920.]] [[2020. 2020.] [2020. 2020.]] [[2120. 2120.] [2120. 2120.]]]
Ejemplo 2:
En el primer ejemplo. Consideremos un arreglo 3D c de tamaño 27 y una serie de [2,1],[2,1], para evaluar contra el arreglo 2D.
Python3
import numpy as np from numpy.polynomial import chebyshev # co.efficient array c = np.arange(27).reshape(3, 3, 3) print(f'The co.efficient 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 co.eff array with a chebyshev series res = chebyshev.chebgrid2d([2, 1], [2, 1], c) # resultant array print(f'Resultant series ---> {res}')
Producción:
The co.efficient 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]]] The shape of the array is (3, 3, 3) The dimension of the array is 3D The datatype of the array is int32 Resultant series ---> [[[1920. 522.] [ 414. 108.]] [[2020. 552.] [ 444. 117.]] [[2120. 582.] [ 474. 126.]]]
Publicación traducida automáticamente
Artículo escrito por jssuriyakumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA