Python・NumPyで点xにおけるルジャンドル級数を評価する方法(legval関数の使い方)
PythonのNumPyライブラリでは、polynomial.legendre.legval()メソッドを使うことで、指定した点xにおけるルジャンドル級数の値を簡単に評価できます。本記事では、このメソッドの各パラメータの意味から、実際のサンプルコードと実行結果までをわかりやすく解説します。
legval()メソッドのパラメータ
第1パラメータ:x
評価を行う点を指定します。xがリストやタプルの場合はndarrayに変換され、それ以外の場合はスカラーとしてそのまま扱われます。いずれの場合も、xまたはその要素が、自身同士および係数cの要素との加算・乗算をサポートしている必要があります。
第2パラメータ:C(係数配列)
係数を格納した配列です。次数nの項に対応する係数がc[n]に収まるように並べます。cが多次元の場合、残りのインデックスは複数の多項式を表します。2次元の場合、係数はcの列に格納されていると考えることができます。
第3パラメータ:tensor
Trueの場合、係数配列の形状は右側に1が追加されて拡張されます。追加の数はxの各次元につき1つずつで、スカラーの次元は0として扱われます。その結果、c内のすべての係数列がxのすべての要素に対して評価されます。Falseの場合、評価時にxはcの列に対してブロードキャストされます。このキーワードは、cが多次元である場合に特に有用です。デフォルト値はTrueです。
実装手順
まず、必要なライブラリをインポートします。
import numpy as np
from numpy.polynomial import legendre as L
次に、係数の配列を作成します。
c = np.array([1, 2, 3])
作成した配列を表示します。
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)点xにおけるルジャンドル級数を評価するには、polynomial.legendre.legval()メソッドを使用します。
print("\nResult...\n",L.legval(1,c))完全なコード例
import numpy as np
from numpy.polynomial import legendre as L
# 係数の配列を作成
c = np.array([1, 2, 3])
# 配列を表示
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)
# 点xにおけるルジャンドル級数を評価
print("\nResult...\n",L.legval(1,c))
出力結果
Our Array...
[1 2 3]
Dimensions of our Array...
1
Datatype of our Array object...
int64
Shape of our Array object...
(3,)
Result...
6.0
結果の解説
この例では、係数[1, 2, 3]に対応するルジャンドル級数「1·P₀(x) + 2·P₁(x) + 3·P₂(x)」をx = 1で評価しています。ルジャンドル多項式はすべてPₙ(1) = 1という性質を持つため、計算結果は1 + 2 + 3 = 6.0となります。このように、legval()を使えばクラースの漸化式などによる手動計算なしに、任意の点でのルジャンドル級数の値を効率的に求められます。
-
Python NumPyのhermite.hermval()で点xにおけるエルミート級数を評価する方法
PythonのNumPyで点xにおけるエルミート級数(Hermite series)を評価するには、numpy.polynomial.hermiteモジュールのhermite.hermval()メソッドを使用します。この記事では、各パラメータの意味と実際のコード例を使った使い方をわかりやすく解説します。hermite.hermval()のパラメータ第1引数:xxは評価を行う点です。リストやタプルを指定した場合はndarrayに変換され、それ以外の場合はスカラーとしてそのまま扱われます。いずれの場合も、xまたはその要素が自身およびcの要素との加算・乗算をサポートしている必要があります。第2引数:
-
Python・NumPyで点xにおけるエルミート級数を評価する方法
PythonのNumPyライブラリでは、hermite.hermval() メソッドを使用することで、指定した点xにおけるエルミート級数を評価できます。本記事では、このメソッドのパラメータの詳細と、実際のコード例をわかりやすく解説します。hermite.hermval()メソッドのパラメータ第1引数: x評価を行う点を指定します。xがリストまたはタプルの場合はndarrayに変換され、それ以外の場合はスカラーとしてそのまま扱われます。いずれの場合も、xまたはその要素は、自身および係数cの要素との加算・乗算をサポートしている必要があります。第2引数: C係数の配列です。次数nの項に対応する係数が