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

PythonでNumPyのlaguerre.lagint()を使い、特定の軸に沿ってラゲール級数を積分する方法

ラゲール級数(Laguerre series)を積分するには、Pythonの numpy.polynomial.laguerre モジュールが提供する laguerre.lagint() メソッドを使用します。このメソッドは、係数配列 c を下限 lbnd から指定した軸(axis)に沿って m 回積分した結果のラゲール級数係数を返します。各反復のたびに、結果の級数はスケーリング係数 scl が乗算され、積分定数 k が加算されます。このスケーリング係数は、変数の線形変換を行う際に利用されます。

laguerre.lagint() の主なパラメータ

1. c(係数配列)

ラゲール級数の係数を格納した配列です。c が多次元の場合、異なる軸はそれぞれ異なる変数に対応し、各軸の次数は対応するインデックスによって決まります。

2. m(積分の回数)

積分を行う回数(次数)です。正の整数である必要があり、デフォルト値は 1 です。

3. k(積分定数)

積分定数を指定します。lbnd における第1積分の値がリストの最初の要素、第2積分の値が2番目の要素、というように対応します。k == [](デフォルト)の場合、すべての積分定数はゼロに設定されます。また、m == 1 の場合は、リストの代わりに単一のスカラー値を渡すことも可能です。

4. lbnd(積分の下限)

積分の下限を指定します。デフォルト値は 0 です。

5. scl(スケーリング係数)

スカラー値です。各積分の後、積分定数を加算する前に結果に乗算されます。デフォルト値は 1 です。

6. axis(積分対象の軸)

積分を実行する軸を指定します。デフォルト値は 0 です。

実行手順

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

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)

ここで、laguerre.lagint() メソッドを使ってラゲール級数を積分します。今回は axis = 1 を指定して、軸1(列方向)に沿って積分を行います。

print("\nResult...\n",L.lagint(c, axis = 1))

サンプルコード全体

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)

# laguerre.lagint() メソッドで軸1に沿ってラゲール級数を積分
print("\nResult...\n",L.lagint(c, axis = 1))

実行結果

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. 1. -1.]
    [ 2. 1. -3.]]

このように、L.lagint(c, axis = 1) を実行すると、形状 (2, 2) の入力配列に対して軸1方向に積分が行われ、結果として形状 (2, 3) の配列が出力されます。積分により係数の数が1つ増える点にも注目してください。

  1. Python NumPyのchebder()メソッドで特定の軸に沿って多次元係数のチェビシェフ級数を微分する方法

    チェビシェフ級数を微分するには、Python NumPy の polynomial.chebder() メソッドを使用します。このメソッドは、導関数のチェビシェフ級数を返します。具体的には、引数 c で与えられたチェビシェフ級数の係数を、指定した軸に沿って m 回微分した結果を返し、反復のたびに結果が scl 倍されます。引数 c は、各軸に沿って次数の低い項から高い項へと並べられた係数の配列です。たとえば [1,2,3] は 1*T_0 + 2*T_1 + 3*T_2 という級数を表し、[[1,2],[1,2]] は axis=0 が x、axis=1 が y に対応する場合、1*T_0(x

  2. Pythonで特定の軸に沿って多次元係数のHermite_e級数を微分する方法

    Hermite_e級数を微分するには、PythonのNumPyライブラリが提供する hermite_e.hermeder() メソッドを使用します。このメソッドを使うことで、多次元の係数配列に対して、指定した軸方向に沿って効率的に微分計算を行うことができます。hermeder() メソッドのパラメータ第1パラメータ(c): Hermite_e級数の係数を格納した配列です。cが多次元の場合、各軸はそれぞれ異なる変数に対応し、各軸における次数は対応するインデックスによって決まります。第2パラメータ(m): 微分を適用する回数です。非負の整数である必要があります。(デフォルト: 1)第3パラメータ(