Pythonで多項式を積分し、積分次数を設定する方法
Pythonで多項式を積分するには、numpy.polynomialモジュールのpolynomial.polyint()メソッドを使用します。このメソッドは、係数配列cを下限lbndから指定した軸に沿ってm回積分した結果の多項式係数を返します。
各反復処理のたびに、得られた級数はscl倍され、その後に積分定数kが加算されます。このスケーリング係数は、変数の線形変換を行う際に使用されるものです。
引数cは係数の配列で、各軸に沿って低次から高次の順に並べます。例えば、[1,2,3]は「1 + 2*x + 3*x**2」という多項式を表し、axis=0がx、axis=1がyである場合、[[1,2],[1,2]]は「1 + 1*x + 2*y + 2*x*y」を表します。
polyint()メソッドのパラメータ
このメソッドは積分後の係数配列を返します。各パラメータの詳細は以下の通りです。
- 第1パラメータ(c):多項式係数の1次元配列。低次から高次の順に並べます。
- 第2パラメータ(m):積分の次数。正の整数である必要があります(デフォルト:1)。
- 第3パラメータ(k):積分定数。リストの最初の値が1回目の積分におけるゼロでの値、2番目の値が2回目の積分におけるゼロでの値となります。k == [](デフォルト)の場合、すべての定数はゼロに設定されます。m == 1の場合は、リストの代わりに単一のスカラーを指定することも可能です。
- 第4パラメータ(lbnd):積分の下限(デフォルト:0)。
- 第5パラメータ(scl):各積分の後、積分定数を加算する前に結果がscl倍されます(デフォルト:1)。
- 第6パラメータ(axis):積分を実行する軸(デフォルト:0)。
実行手順
まず、必要なライブラリをインポートします。
import numpy as np from numpy.polynomial import polynomial as P
次に、多項式係数の配列を作成します。
c = np.array([1,2,3])
係数配列を表示します。
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)polynomial.polyint()メソッドを使用して多項式を積分します。ここでは、積分次数mに3を指定しています。
print("\nResult...\n",P.polyint(c, m = 3))サンプルコード
import numpy as np
from numpy.polynomial import polynomial as P
# 多項式係数の配列を作成
c = np.array([1,2,3])
# 係数配列を表示
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)
# polynomial.polyint()メソッドで多項式を積分
print("\nResult...\n",P.polyint(c, m = 3))出力結果
Our coefficient Array... [1 2 3] Dimensions of our Array... 1 Datatype of our Array object... int64 Shape of our Array object... (3,) Result... [0. 0. 0. 0.16666667 0.08333333 0.05 ]
このように、polyint()メソッドに積分次数m=3を指定することで、元の多項式[1, 2, 3]が3回積分され、新しい係数配列が得られました。積分により多項式の次数が上がるため、出力される配列の要素数も増えていることがわかります。
-
Pythonで多項式を積分する方法 – numpy.polynomial.polyint()の使い方
Pythonで多項式を積分するには、numpyライブラリのpolynomial.polyint()メソッドを使用します。このメソッドは、係数配列cを下限lbndから開始して指定した軸に沿ってm回積分し、その結果の多項式係数を返します。各反復処理では、得られた級数にsclが乗算され、積分定数kが加算されます。このスケーリング係数は、変数の線形変換を行う際に役立ちます。 引数cは係数の配列で、各軸に沿って低次から高次の順に並べます。例えば、[1,2,3]は多項式 1 + 2*x + 3*x**2 を表します。また、axis=0がx、axis=1がyである場合、[[1,2],[1,2]]は 1 +
-
Python NumPyのpolyder()で多項式を微分する方法:導関数の計算とスケーリング係数の適用
PythonのNumPyで多項式を微分するには、numpy.polynomialモジュールのpolynomial.polyder()メソッドを使用します。このメソッドは、多項式の係数cを指定した軸に沿ってm回微分した結果を返します。各微分の反復処理のたびに、結果はscl(スケーリング係数)で乗算されます。このスケーリング機能は、変数の線形変換を行う際に役立ちます。 引数cは、各軸に沿って低次から高次へと並べられた係数の配列です。例えば、[1,2,3]は多項式 1 + 2*x + 3*x**2 を表します。また、axis=0がx、axis=1がyに対応する場合、[[1,2],[1,2]]は 1