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

Python・NumPyのchebder()メソッドでチェビシェフ級数を微分する方法

チェビシェフ級数を微分するには、PythonのNumPyが提供する polynomial.chebder() メソッドを使用します。このメソッドは、導関数に対応するチェビシェフ級数を返します。

chebder()メソッドとは

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)*T_0(y) + 1*T_1(x)*T_0(y) + 2*T_0(x)*T_1(y) + 2*T_1(x)*T_1(y) を表します。

主なパラメータ

  • c: チェビシェフ級数の係数の配列。多次元配列の場合、異なる軸は異なる変数に対応し、各軸の次数は対応するインデックスによって決まります。
  • m: 微分の回数。非負の整数である必要があります(デフォルト:1)。
  • scl: 各微分の結果に乗じられるスカラー値。最終的な結果は scl**m 倍されます。変数の線形変換を行う際に使用します(デフォルト:1)。
  • axis: 微分を行う対象の軸です(デフォルト:0)。

実行手順

ステップ1:必要なライブラリをインポートする

import numpy as np
from numpy.polynomial import chebyshev as C

ステップ2:チェビシェフ級数の係数配列を作成する

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

ステップ3:係数配列を表示する

print("Our coefficient Array...\n",c)

ステップ4:配列の次元を確認する

print("\nDimensions of our Array...\n",c.ndim)

ステップ5:データ型を確認する

print("\nDatatype of our Array object...\n",c.dtype)

ステップ6:配列の形状を確認する

print("\nShape of our Array object...\n",c.shape)

ステップ7:chebder()メソッドで微分する

チェビシェフ級数を微分するには、NumPyの polynomial.chebder() メソッドを使います。以下の例では、係数配列 c を3回微分しています。

print("\nResult...\n",C.chebder(c, 3))

完全なコード例

import numpy as np
from numpy.polynomial import chebyshev as C

# チェビシェフ級数の係数配列を作成
c = np.array([1,2,3,4])

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

# chebder()メソッドでチェビシェフ級数を3回微分
# このメソッドは導関数のチェビシェフ級数を返す
print("\nResult...\n",C.chebder(c, 3))

出力結果

Our coefficient Array...
[1 2 3 4]

Dimensions of our Array...
1

Datatype of our Array object...
int64

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

Result...
[96.]

このように、chebder(c, 3) を呼び出すことで、係数 [1, 2, 3, 4] のチェビシェフ級数を3階微分した結果として [96.] が得られました。3回微分すると次数が3つ下がるため、元の4項の級数は定数項のみの級数になります。

  1. PythonでHermiteE級数を微分する方法:numpy.polynomial.hermite_e.hermeder()の使い方

    HermiteE(エルミートE)級数を微分するには、Pythonの numpy.polynomial.hermite_e モジュールが提供する hermeder() メソッドを使用します。このメソッドを使うことで、多項式を明示的に展開することなく、係数配列に対して直接微分演算を行うことができます。hermeder()メソッドのパラメータhermeder() メソッドは、以下の4つのパラメータを受け取ります。第1引数 c:HermiteE級数の係数を格納した配列です。c が多次元配列の場合、各軸が異なる変数に対応し、各軸ごとの次数は対応するインデックスによって表されます。第2引数 m:微分を行う

  2. 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