在Python中,當係數為多維時,如何計算勒讓德級數在x點的值


在Python Numpy中,可以使用`polynomial.legendre.legval()`方法計算勒讓德級數在x點的值。第一個引數是x。如果x是列表或元組,則將其轉換為ndarray;否則,保持不變並將其視為標量。無論哪種情況,x或其元素都必須支援自身以及c的元素之間的加法和乘法運算。

第二個引數C是一個係數陣列,其排序方式是n次項的係數包含在c[n]中。如果c是多維的,則其餘索引列舉多個多項式。在二維情況下,可以認為係數儲存在c的列中。

第三個引數tensor,如果為True,則係數陣列的形狀會在右側擴充套件一個維度,對於x的每個維度擴充套件一個。標量的維度對於此操作為0。結果是c中的每一列係數都會針對x的每個元素進行計算。如果為False,則在計算過程中,x會廣播到c的列上。當c是多維時,此關鍵字很有用。預設值為True。

步驟

首先,匯入所需的庫:

import numpy as np
from numpy.polynomial import laguerre as L

建立一個多維繫數陣列:

c = np.arange(4).reshape(2,2)

顯示陣列:

print("Our Array...\n",c)

檢查維度:

print("\nDimensions of our Array...\n",c.ndim)

獲取資料型別:

print("\nDatatype of our Array object...\n",c.dtype)

獲取形狀:

print("\nShape of our Array object...\n",c.shape)

在Python Numpy中,可以使用`polynomial.legendre.legval()`方法計算勒讓德級數在x點的值:

print("\nResult...\n",L.legval([1,2],c))

示例

import numpy as np
from numpy.polynomial import legendre as L

# Create a multidimensional array of coefficients
c = np.arange(4).reshape(2,2)

# Display the array
print("Our Array...\n",c)

# Check the Dimensions
print("\nDimensions of our Array...\n",c.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",c.dtype)

# Get the Shape
print("\nShape of our Array object...\n",c.shape)

# To evaluate a Legendre series at points x, use the polynomial.legendre.legval() method in Python Numpy
print("\nResult...\n",L.legval([1,2],c))

輸出

Our Array...
   [[0 1]
   [2 3]]

Dimensions of our Array...
2

Datatype of our Array object...
int64

Shape of our Array object...
(2, 2)

Result...
   [[2. 4.]
   [4. 7.]]

更新於:2022年3月2日

87 次檢視

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告