在Python中用4d数组的系数评估x、y和z的笛卡尔乘积上的3-D切比雪夫级数
在这篇文章中,我们将讨论如何在Python和NumPy中对x、y和z的笛卡尔乘积的3维切比雪夫级数进行评估,并有一个4维系数数组。
NumPy.polynomial.chebyshev.chebgrid3d方法。
切比雪夫多项式在近似理论中意义重大,因为切比雪夫节点被用作优化多项式插值的匹配点。
为了进行切比雪夫微分,NumPy提供了一个名为Chebyshev.chebgrid3d的函数,可以用来评估三维切比雪夫级数的笛卡尔积。这个函数只有在参数x、y和z是图元或列表的情况下才会将其转换为数组,否则就不做任何改变,如果不是数组,就被当作标量处理。
语法: polynomial.chebyshev.chebgrid3d(x, y, z, c)
参数:
- x,y,z: array_like
- c:系数数组
返回值:
- 在点上的二维多项式是x和y的笛卡尔乘积。
示例 1:
在第一个例子中,让我们考虑一个大小为32的4D数组c。让我们考虑一个三维数列[1,2],[1,2],[1,2]来对4D数组进行评估。如图所示,导入必要的包,并传递适当的参数,如下所示。
import numpy as np
from numpy.polynomial import chebyshev
# co.efficient array
c = np.arange(32).reshape(2, 2, 4, 2)
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 4d co.eff array with a 3d chebyshev series
res = chebyshev.chebgrid3d([1, 2], [1, 2], [1, 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 27]
[28 29]
[30 31]]]]
The shape of the array is (2, 2, 4, 2)
The dimension of the array is 4D
The datatype of the array is int32
Resultant series ---> [[[[ 240. 2480.]
[ 392. 4008.]]
[[ 424. 4296.]
[ 684. 6876.]]]
[[[ 256. 2624.]
[ 416. 4224.]]
[[ 448. 4512.]
[ 720. 7200.]]]]
示例 2:
在第二个例子中,让我们考虑一个大小为64的4D数组c。让我们考虑一个三维数列[2,1],[2,1],[2,1]来对4D数组进行评估。如图所示,导入必要的包,并传递适当的参数,如下所示。
import numpy as np
from numpy.polynomial import chebyshev
# co.efficient array
c = np.arange(64).reshape(4, 4, 2, 2)
print(f'The co.efficient array is \n{c}\n')
print(f'The shape of the array is \n{c.shape}\n')
print(f'The dimension of the array is \n{c.ndim}D\n')
print(f'The datatype of the array is \n{c.dtype}\n')
# evaluating 4d co.eff array with a 3d chebyshev series
res = chebyshev.chebgrid3d([2, 1], [2, 1], [2, 1], 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 27]] [[28 29] [30 31]]
[[[32 33] [34 35]] [[36 37][38 39]]
[[40 41] [42 43]] [[44 45][46 47]]]
[[[48 49] [50 51]] [[52 53][54 55]]
[[56 57] [58 59]] [[60 61][62 63]]]]
The shape of the array is (4, 4, 2, 2)
The dimension of the array is 4D
The datatype of the array is int32
Resultant series —> [[[[208224. 137952.][ 21216. 14048.]] [[ 15456. 10208.][ 1504. 992.]]]
[[[212112. 140544.][ 21648. 14336.]] [[ 15888. 10496.] [ 1552. 1024.]]]]