numpy.polynomial.laguerre.laggrid3d#

polynomial.laguerre.laggrid3d(x, y, z, c)[原始碼]#

在 x、y 和 z 的笛卡爾積上評估 3D 拉蓋爾級數。

此函數回傳以下值

\[p(a,b,c) = \sum_{i,j,k} c_{i,j,k} * L_i(a) * L_j(b) * L_k(c)\]

其中點 (a, b, c) 由從 xa、從 yb 以及從 zc 所形成的所有三元組組成。產生的點形成一個網格,其中 x 在第一維度,y 在第二維度,而 z 在第三維度。

參數 xyz 僅在它們是元組或列表時才轉換為陣列,否則它們被視為純量。在任何一種情況下,xyz 或它們的元素都必須支援與自身以及與 c 的元素進行乘法和加法運算。

如果 c 的維度少於三個,則會隱式地在其形狀中附加 1 以使其成為 3D。結果的形狀將為 c.shape[3:] + x.shape + y.shape + z.shape。

參數:
x、y、z類陣列 (array_like),相容物件

xyz 的笛卡爾積中的點上評估三維級數。如果 xyz 是列表或元組,則首先將其轉換為 ndarray,否則保持不變,並且如果它不是 ndarray,則將其視為純量。

c類陣列 (array_like)

係數陣列,排序方式為度數 i,j 的項的係數包含在 c[i,j] 中。如果 c 的維度大於 2,則剩餘的索引會列舉多組係數。

回傳值:
valuesndarray,相容物件

xy 的笛卡爾積中的點上的二維多項式值。

另請參閱

lagvallagval2dlaggrid2dlagval3d

範例

>>> from numpy.polynomial.laguerre import laggrid3d
>>> c = [[[1, 2], [3, 4]], [[5, 6], [7, 8]]]
>>> laggrid3d([0, 1], [0, 1], [2, 4], c)
array([[[ -4., -44.],
        [ -2., -18.]],
       [[ -2., -14.],
        [ -1.,  -5.]]])