Python NumPyで多項式をチェビシェフ級数に変換する方法(poly2cheb)
多項式をチェビシェフ級数(Chebyshev series)に変換するには、PythonのNumPyが提供する chebyshev.poly2cheb() メソッドを使用します。
このメソッドは、次数の低いものから高いものへと並べられた多項式の係数を表す1次元配列を受け取り、それを同等のチェビシェフ級数の係数(こちらも低次から高次の順)の1次元配列へと変換して返します。引数 c には、変換したい多項式の係数を格納した1次元配列を指定します。
手順
まず、必要なライブラリをインポートします。
import numpy as np from numpy import polynomial as P
続いて、numpy.array() メソッドを使って配列を作成します。
c = np.array([1, 2, 3, 4, 5])
作成した配列を表示してみましょう。
print("Our Array...\n",c)配列の次元数を確認します。
print("\nDimensions of our Array...\n",c.ndim)配列のデータ型(dtype)を取得します。
print("\nDatatype of our Array object...\n",c.dtype)配列の形状(shape)を取得します。
print("\nShape of our Array object...\n",c.shape)最後に、多項式をチェビシェフ級数へ変換するために chebyshev.poly2cheb() メソッドを実行します。
print("\nResult (polynomial to chebyshev)...\n",P.chebyshev.poly2cheb(c))サンプルコード
import numpy as np
from numpy import polynomial as P
# numpy.array() メソッドで配列を作成
c = np.array([1, 2, 3, 4, 5])
# 配列を表示
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.dtype)
# 多項式をチェビシェフ級数に変換
print("\nResult (polynomial to chebyshev)...\n",P.chebyshev.poly2cheb(c))実行結果
Our Array...
[1 2 3 4 5]
Dimensions of our Array...
1
Datatype of our Array object...
int64
Shape of our Array object...
(5,)
Result (polynomial to chebyshev)...
[4.375 5. 4. 1. 0.625]このように、poly2cheb() を使うことで、通常の冪基底(べきき)による多項式の係数を、チェビシェフ多項式 T₀(x), T₁(x), T₂(x), ... を基底とする級数の係数へと簡単に変換できます。逆にチェビシェフ級数から通常の多項式へ戻したい場合は、chebyshev.cheb2poly() メソッドを使用します。
-
Python NumPyのchebmulx()メソッドでチェビシェフ級数に独立変数を掛ける方法
Python NumPyでは、numpy.polynomial.chebyshev.chebmulx()メソッドを使うことで、チェビシェフ級数に独立変数 x を掛ける(乗算する)ことができます。このメソッドは、乗算結果を表す配列を返します。引数として渡すのは、次数の低い項から高い項へと並べたチェビシェフ級数の係数からなる1次元配列です。 なお、チェビシェフ多項式には x・Tn(x) = (Tn+1(x) + Tn-1(x)) / 2 という関係が成り立つため、chebmulx() は係数を効率よく再計算して新しい級数を返します。 実行手順 まず、必要なライブラリをインポートします。 impo
-
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 +