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

PythonでHermite_e級数を微分し、各階の導関数にスカラーを乗算する方法

Hermite_e級数を微分するには、PythonのNumPyライブラリにある numpy.polynomial.hermite_e モジュールが提供する hermeder() メソッドを使用します。このメソッドを使うことで、級数の解析的な微分を簡単に計算でき、さらに各階の微分に対して任意のスカラーを掛けることも可能です。

hermeder()メソッドのパラメータ

第1パラメータ:c
Hermite_e級数の係数を格納した配列です。cが多次元の場合、異なる軸はそれぞれ異なる変数に対応し、各軸における次数は対応するインデックスによって表されます。

第2パラメータ:m
微分を適用する回数です。負でない整数である必要があります(デフォルト:1)。

第3パラメータ:scl
スカラー値です。各階の微分ごとにsclが乗算され、最終的な結果には scl**m が掛けられます。この機能は、変数の線形変換を行う際に便利です(デフォルト:1)。

第4パラメータ:axis
微分を行う対象の軸を指定します(デフォルト:0)。

実行手順

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

import numpy as np
from numpy.polynomial import hermite_e as H

次に、Hermite_e級数の係数配列を作成します。

c = np.array([1,2,3,4])

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

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)

Hermite_e級数を2階微分し、各微分にスカラー -1 を乗算して結果を表示します。

print("\nResult...\n",H.hermeder(c, 2, scl = -1))

完全なコード例

import numpy as np
from numpy.polynomial import hermite_e as H

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

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

# hermeder()メソッドでHermite_e級数を微分
print("\nResult...\n",H.hermeder(c, 2, scl = -1))

実行結果

Our Array...
    [1 2 3 4]

Dimensions of our Array...
1

Datatype of our Array object...
int64

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

Result...
    [ 6. 24.]

このように、hermeder() メソッドを使えば、Hermite_e級数の高階微分を簡単に求められます。上記の例では、係数 [1, 2, 3, 4] の級数を2階微分し、各微分に -1 を乗算した結果として [6., 24.] が得られています。微分回数やスカラー倍率を変更することで、さまざまな用途に柔軟に対応できます。

  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

  2. Python NumPyのpolyder()で多項式を微分し、各微分にスカラー倍を適用する方法

    PythonのNumPyライブラリでは、多項式を微分するために polynomial.polyder() メソッドを使用します。このメソッドは、多項式の係数配列 c を指定した軸に沿って m 回微分した結果を返します。さらに、各微分のたびに結果へスケール係数 scl が掛けられます(このスケーリングは、変数の線形変換を行う際に役立ちます)。polyder()メソッドの引数について引数 c は多項式の係数を格納した配列で、次数の低い項から高い項へと順に並べます。例えば、[1,2,3] は多項式 1 + 2x + 3x² を表し、2次元配列の場合は [[1,2],[1,2]] が axis=0 を