Pythonで特定の軸に沿ってチェビシェフ級数を積分する方法
Pythonでチェビシェフ級数を積分するには、numpy.polynomial.chebyshevモジュールのchebint()メソッドを使用します。このメソッドは、チェビシェフ級数の係数cを下限lbndから指定した軸axisに沿ってm回積分した結果を返します。各反復処理のたびに、結果の級数はscl倍され、積分定数kが加算されます。
chebint()メソッドのパラメータ
c(第1パラメータ): チェビシェフ級数の係数を格納した配列です。cが多次元配列の場合、異なる軸はそれぞれ異なる変数に対応し、各軸における次数は対応するインデックスによって決まります。
m(第2パラメータ): 積分の回数(階数)です。正の整数である必要があります(デフォルト:1)。
k(第3パラメータ): 積分定数です。ゼロにおける1回目の積分値がリストの最初の要素、2回目の積分値が2番目の要素、というように対応します。k == [](デフォルト)の場合、すべての積分定数はゼロに設定されます。m == 1の場合は、リストの代わりに単一のスカラー値を指定することも可能です。
lbnd(第4パラメータ): 積分の下限です(デフォルト:0)。
scl(第5パラメータ): 各積分の後、積分定数を加算する前に結果に乗算されるスカラー値です(デフォルト:1)。
axis(第6パラメータ): 積分を実行する対象の軸です(デフォルト:0)。この記事では、特定の軸(axis=1)に沿った積分方法を解説します。
実装手順
まず、必要なライブラリをインポートします。
import numpy as np
from numpy.polynomial import chebyshev as C
次に、チェビシェフ級数の係数を持つ多次元配列を作成します。
c = np.arange(4).reshape(2,2)
作成した係数配列を表示して確認しましょう。
print("Our coefficient 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)最後に、chebint()メソッドを使って軸1(axis=1)に沿ってチェビシェフ級数を積分します。
print("\nResult...\n",C.chebint(c, axis = 1))完全なコード例
import numpy as np
from numpy.polynomial import chebyshev as C
# チェビシェフ級数の係数を持つ多次元配列を作成
c = np.arange(4).reshape(2,2)
# 係数配列を表示
print("Our coefficient 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)
# 軸1に沿ってチェビシェフ級数を積分
print("\nResult...\n",C.chebint(c, axis = 1))
実行結果
Our coefficient 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.25 0. 0.25]
[0.75 2. 0.75]]
このように、chebint()メソッドにaxis引数を指定することで、任意の軸に沿ってチェビシェフ級数を簡単に積分できます。上記の出力例では、2×2の係数配列が軸1方向に積分され、各行ごとに3つの係数を持つ結果配列が得られていることがわかります。
-
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
-
Pythonで特定の軸に沿って多次元係数のHermite_e級数を微分する方法
Hermite_e級数を微分するには、PythonのNumPyライブラリが提供する hermite_e.hermeder() メソッドを使用します。このメソッドを使うことで、多次元の係数配列に対して、指定した軸方向に沿って効率的に微分計算を行うことができます。hermeder() メソッドのパラメータ第1パラメータ(c): Hermite_e級数の係数を格納した配列です。cが多次元の場合、各軸はそれぞれ異なる変数に対応し、各軸における次数は対応するインデックスによって決まります。第2パラメータ(m): 微分を適用する回数です。非負の整数である必要があります。(デフォルト: 1)第3パラメータ(