Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python・NumPyで1次元の係数配列を使って点(x, y)における2Dルジャンドル級数を評価する方法

PythonのNumPyを使って、点(x, y)における2D(二次元)ルジャンドル級数を評価するには、numpy.polynomial.legendre.legval2d()メソッドを使用します。このメソッドは、xとyの対応する値同士のペアから構成される各点において、二次元ルジャンドル級数の値を返します。

第1パラメータはxとyです。二次元級数は点(x, y)で評価されますが、その際xとyは同じ形状を持つ必要があります。xまたはyがリストやタプルとして渡された場合は、まずndarrayに変換されます。それ以外の場合はそのまま扱われ、ndarrayでなければスカラー値として処理されます。

第2パラメータはc(係数配列)です。多項式次数i, jの項に対応する係数がc[i, j]に格納されるように並べられている必要があります。なお、cの次元が2より大きい場合、残りのインデックスは複数の係数セットを表すために使われます。

手順

まず、必要なライブラリをインポートします。

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

次に、1次元の係数配列を作成します。

c = np.array([3, 5])

作成した配列を表示します。

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)

最後に、polynomial.legendre.legval2d()メソッドを使って、点(x, y)における2Dルジャンドル級数を評価します。

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

コード例

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

# 1次元の係数配列を作成
c = np.array([3, 5])

# 配列を表示
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)

# legval2d()メソッドで点(x, y)における2Dルジャンドル級数を評価
print("\nResult...\n",L.legval2d([1,2],[1,2],c))

実行結果

Our Array...
    [3 5]

Dimensions of our Array...
1

Datatype of our Array object...
int64

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

Result...
    [21. 34.]

この実行結果から、係数[3, 5]を持つ1次元配列を渡した場合でも、legval2d()は点(1, 1)と(2, 2)それぞれに対して正しく21.0と34.0という評価値を返していることが分かります。このように、少ない係数情報からでも二次元ルジャンドル級数の値を簡単に計算できます。

  1. Python NumPyで多次元係数配列を使って点xにおけるラゲール級数を評価する方法

    PythonのNumPyライブラリでは、polynomial.laguerre.lagval()メソッドを使用することで、指定した点xにおいてラゲール級数を評価できます。この記事では、多次元の係数配列を扱う場合の使い方を、具体的なコード例とともに詳しく解説します。lagval()メソッドのパラメータ第1引数: x評価を行う点を指定します。xがリストやタプルの場合はndarrayに変換され、それ以外の場合はスカラーとしてそのまま扱われます。いずれの場合も、xまたはその要素が、自身および係数cの要素との加算・乗算をサポートしている必要があります。第2引数: C係数の配列です。次数nの項に対応する係

  2. Python NumPyのhermite.hermval()で多次元係数配列を使って点xにおけるエルミート級数を評価する方法

    エルミート級数を特定の点xで評価したい場合、PythonのNumPyライブラリが提供する hermite.hermval() メソッドを使用します。エルミート多項式は物理学や確率論などの分野で広く利用される直交多項式の一種であり、NumPyを活用すればその計算をシンプルかつ効率的に行うことができます。hermite.hermval()メソッドの主なパラメータ第1パラメータ:xxがリストまたはタプルの場合はndarrayに変換され、それ以外の場合は変更されずにスカラーとして扱われます。いずれの場合も、xまたはその要素は、自身同士および係数配列cの要素との加算・乗算をサポートしている必要があります