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

Pythonで軸0に沿ってルジャンドル級数を積分する方法

Pythonでルジャンドル級数を積分するには、numpy.polynomial.legendre.legint() メソッドを使用します。このメソッドは、ルジャンドル級数の係数 c を下限 lbnd から指定した axis に沿って m 回積分した結果を返します。各反復処理のたびに、結果の級数は scl 倍され、積分定数 k が加算されます。スケーリング係数は、変数の線形変換を行う際に役立ちます。

legint() メソッドの主なパラメータ

  • c: ルジャンドル級数の係数を格納する配列です。c が多次元の場合、異なる軸はそれぞれ異なる変数に対応し、各軸の次数は対応するインデックスによって表されます。
  • m: 積分の回数(階数)。正の整数である必要があります(デフォルト: 1)。
  • k: 積分定数。lbnd における1回目の積分値がリストの最初の要素、2回目の積分値が2番目の要素として対応します。k == [](デフォルト)の場合、すべての定数はゼロに設定されます。m == 1 の場合は、リストの代わりに単一のスカラーを指定することも可能です。
  • lbnd: 積分の下限です(デフォルト: 0)。
  • scl: スカラー値。各積分の後、積分定数を加算する前に結果に scl が乗算されます(デフォルト: 1)。
  • axis: 積分を実行する対象の軸です(デフォルト: 0)。

実装手順

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

import numpy as np
from numpy.polynomial import legendre 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)

ここで、L.legint() メソッドに axis = 0 を指定して呼び出すことで、軸0に沿ったルジャンドル級数の積分が実行されます。

print("\nResult...\n",L.legint(c, axis = 0))

サンプルコード全体

import numpy as np
from numpy.polynomial import legendre 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)

# 軸0に沿ってルジャンドル級数を積分
print("\nResult...\n",L.legint(c, axis = 0))

実行結果

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...
    [[0.33333333 0.5 ]
    [0. 1. ]
    [0.66666667 1. ]]

このように、axis = 0 を指定することで、2次元配列の縦方向(行方向)に沿ってルジャンドル級数が積分され、積分後の係数配列が得られます。積分により係数の数が1つ増え、結果は3×2の配列になっていることがわかります。

  1. Pythonで軸0に沿ってエルミート級数を積分する方法

    エルミート級数を積分するには、PythonのNumPyライブラリにある hermite.hermint() メソッドを使用します。 主なパラメータの説明: c(第1パラメータ):エルミート級数の係数を格納した配列です。cが多次元の場合、それぞれの軸は異なる変数に対応し、各軸の次数は対応するインデックスによって決まります。 m(第2パラメータ):積分の次数です。正の整数である必要があります(デフォルト:1)。 k(第3パラメータ):積分定数です。lbndにおける第1積分の値がリストの1番目の値、第2積分の値が2番目の値、というように対応します。k == [](デフォルト)の場合、すべての積分

  2. Pythonでラゲール級数を積分する方法(laguerre.lagintの使い方)

    Pythonでラゲール級数(Laguerre series)を積分するには、NumPyのlaguerre.lagint()メソッドを使用します。このメソッドは、ラゲール級数の係数cを下限lbndから指定した軸に沿ってm回積分した結果を返します。各反復処理のたびに、得られた級数はscl倍され、その後に積分定数kが加算されます。このスケーリング係数は、変数の線形変換(線形変数変換)を行いたい場合に役立ちます。 laguerre.lagint()メソッドのパラメータ laguerre.lagint()メソッドは、以下の6つのパラメータを受け取ります。 第1パラメータ:c ― ラゲール級数の係数を