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

Python NumPyのhermval3d()で2次元係数配列を使って点(x, y, z)における3Dエルミート級数を評価する方法

はじめに

PythonのNumPyライブラリには、多項式を扱うための強力なモジュールが用意されています。点(x, y, z)における3Dエルミート級数を評価するには、numpy.polynomial.hermiteモジュールのhermite.hermval3d()メソッドを使用します。このメソッドは、x、y、zの対応する値から構成される点群上での多次元多項式の値を返します。

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

第1パラメータ(x, y, z): 3次元級数は点(x, y, z)で評価されます。x、y、zは同じ形状である必要があります。x、y、zのいずれかがリストやタプルの場合、まずndarrayに変換されます。ndarrayでない場合はスカラーとして扱われます。

第2パラメータ(C): 係数の配列です。多重次数i, j, kの項の係数がc[i, j, k]に格納されるように並べられています。cの次元が3より大きい場合、残りのインデックスは複数の係数セットを表します。

評価の手順

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

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

次に、係数の2次元配列を作成します。

c = np.arange(4).reshape(2,2)

作成した配列を表示して確認しましょう。

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.hermval3d()メソッドを使って点(1, 1, 1)と(2, 2, 2)における3Dエルミート級数を評価します。

print("\nResult...\n",H.hermval3d([1,2],[1,2],[1,2],c))

完全なコード例

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

# 係数の2次元配列を作成
c = np.arange(4).reshape(2,2)

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

# hermval3d()メソッドで3Dエルミート級数を評価
print("\nResult...\n",H.hermval3d([1,2],[1,2],[1,2],c))

実行結果

Our Array...
    [[0 1]
    [2 3]]

Dimensions of our Array...
2

Datatype of our Array object...
int64

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

Result...
    [138. 258.]

まとめ

このように、NumPyのhermite.hermval3d()メソッドを使えば、2次元の係数配列から点(x, y, z)における3Dエルミート級数の値を簡単に計算できます。エルミート級数は物理学や確率論などの分野で広く利用されており、NumPyを活用することで効率的に数値評価を行うことが可能です。

  1. Python NumPyのpolyval3d()メソッドで、点(x, y, z)における3D多項式を係数の2D配列から評価する方法

    PythonのNumPyライブラリには、3次元多項式を指定した点で評価するためのpolynomial.polyval3d()メソッドが用意されています。このメソッドは、x、y、zに対応する値の組み合わせ(トリプル)から構成される各点において、多次元多項式の値を返します。polyval3d()メソッドのパラメータx、y、z:3次元級数を評価する点の座標です。x、y、zは同じ形状である必要があります。いずれかがリストやタプルの場合は、まずndarrayに変換されます。ndarrayでない場合はスカラーとして扱われます。c:係数を格納する配列です。多項式の次数 i, j, k に対応する項の係数は

  2. Python NumPyのpolyval3d()メソッドで4D係数配列を使って点(x, y, z)の3D多項式を評価する方法

    3D多項式を点(x, y, z)で評価するには、Python NumPyのpolynomial.polyval3d()メソッドを使用します。このメソッドは、x、y、zの対応する値から構成される三つ組の点における多次元多項式の値を返します。polyval3d()メソッドのパラメータ引数として渡すx、y、zは、同じ形状を持つ必要があります。いずれかがリストまたはタプルの場合は、まずndarrayに変換されます。ndarrayでない場合はスカラーとして扱われます。パラメータcは係数の配列で、多項式の次数 i, j, k に対応する項の係数が c[i,j,k] に格納されるように並べられています。cの