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

Python NumPyでエルミート多項式の小さな末尾係数を削除する方法

エルミート多項式から絶対値の小さな末尾係数を削除するには、Python NumPyのhermite.hermtrim()メソッドを使用します。このメソッドは、末尾の不要な係数を取り除いた1次元配列を返します。もし処理の結果として級数が空になる場合には、単一のゼロだけを含む級数が返されます。

ここでいう「小さい」とは「絶対値が小さい」という意味であり、その基準はパラメータtolによって制御されます。また「末尾」とは、多項式における最高次数側の係数を指します。たとえば [0, 1, 1, 0, 0](これは 0 + x + x² + 0·x³ + 0·x⁴ を表す)という配列の場合、3次と4次の両方の係数が「トリミング(削除)」の対象となります。

主なパラメータは以下の通りです。

  • c: 低い次数から高い次数の順に並べられた係数の1次元配列
  • tol: 絶対値がこの値以下である末尾の要素を削除するためのしきい値

実行手順

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

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

numpy.array()メソッドを使って配列を作成します。これが係数を格納した1次元配列になります。

c = np.array([0,5,0, 0,9,0])

配列を表示して確認します。

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)

エルミート多項式から小さな末尾係数を削除するために、Python NumPyのhermite.hermtrim()メソッドを実行します。

print("\nResult...\n",H.hermtrim((c)))

サンプルコード

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

# numpy.array()メソッドで配列を作成
# これが係数の1次元配列になる
c = np.array([0,5,0, 0,9,0])

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

# エルミート多項式から小さな末尾係数を削除するには、
# Python NumPyのhermite.hermtrim()メソッドを使用する
print("\nResult...\n",H.hermtrim((c)))

実行結果

Our Array...
[0 5 0 0 9 0]

Dimensions of our Array...
1

Datatype of our Array object...
int64

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

Result...
[0. 5. 0. 0. 9.]

実行結果を見ると、入力配列 [0, 5, 0, 0, 9, 0] の末尾にあるゼロの係数が削除され、[0. 5. 0. 0. 9.] が出力されていることがわかります。このようにhermtrim()を使うことで、エルミート多項式の表現を簡潔に保つことができます。

  1. Python NumPyのpolyval()メソッドで点xにおける多項式を評価する方法

    PythonのNumPyライブラリでは、polynomial.polyval()メソッドを使うことで、指定した点xにおいて多項式を簡単に評価できます。この記事では、polyval()の各パラメータの意味と、実際のコード例を使った使い方を詳しく解説します。polyval()メソッドのパラメータ第1引数: x多項式を評価する対象となる点です。リストやタプルを渡した場合はndarrayに変換され、それ以外の場合はスカラーとしてそのまま扱われます。いずれの場合も、xまたはその要素が、自身および係数cの要素との間で加算・乗算をサポートしている必要があります。第2引数: c多項式の係数を格納した配列です。

  2. Pythonでソート済み配列から重複要素を削除する方法

    ここでは、ソート済みのリストから重複する要素をすべて削除し、その後の配列の長さ(ユニークな要素の個数)を返す問題を扱います。重要な制約として、O(1)の追加メモリで実行する必要があります。つまり、新しい配列を作成せずに、元の配列をインプレース(in-place)で操作しなければなりません。問題の例例えば、次のような入力が与えられたとします。A = [1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 5, 5, 5, 6]この場合、重複を除いたユニークな要素は「1, 2, 3, 4, 5, 6」の6つなので、出力は 6 となります。解法のアプローチこの問題は、以下の手順で解くことができ