在Python中使用NumPy对(x,y)点的二维拉盖尔数列进行评估
在这篇文章中,我们将讨论如何使用Python中的NumPy在(x,y)点上评估一个二维拉盖尔数列。
示例
输入 :
[[[ 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]]]
输出 :
[[[1920. 522.]
[ 414. 108.]]
[[2020. 552.]
[ 444. 117.]]
[[2120. 582.]
[ 474. 126.]]]
解释 : 二维Laguerre数列。
NumPy.polynomial.laguerre.lagval2d 方法
为了进行Laguerre微分,NumPy提供了一个名为laguerre.lagval2d的函数,可以用来评估二维Laguerre数列的笛卡尔积。这个函数只有在参数x和y是图元或列表且形状相同的情况下才会将其转换为数组,否则就不做任何改变,如果不是数组,则被当作标量处理。如果c的维数大于2,则其余的指数列举出多组系数。
语法 : laguerre.lagval2d(x,y, c)
参数 :
- x,y:输入数组。
- c:系数数组的排序
返回:在x和y的笛卡尔乘积中的点的二维拉盖尔数列。
示例 1:
在第一个例子中,让我们考虑一个大小为27的三维数组c和一系列的[2,2],[2,2]来对二维数组进行评估。
import numpy as np
from numpy.polynomial import laguerre
# 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 coeff array with a laguerre series
res = laguerre.lagval2d([2, 2], [2, 2], c)
# resultant array
print(f'Resultant series ---> {res}')
输出:
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 int64
Resultant series ---> [[36. 36.]
[37. 37.]
[38. 38.]]
示例 2:
在第二个例子中,让我们考虑一个大小为10的二维数组c和一系列的[2,2],[2,2]来对二维数组进行评估。
import numpy as np
from numpy.polynomial import laguerre
# co.efficient array
c = np.array([[1,2,3,4,5],[45,56,65,55,55]])
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 coeff array with a laguerre series
res = laguerre.lagval2d([2, 2], [2, 2], c)
# resultant array
print(f'Resultant series ---> {res}')
输出:
The co.efficient array is [[ 1 2 3 4 5]
[45 56 65 55 55]]
The shape of the array is (2, 5)
The dimension of the array is 2D
The datatype of the array is int64
Resultant series ---> [72.33333333 72.33333333]