Pythonで係数の4次元配列を使い、x・y・zのデカルト積上で3D Hermite_e級数を評価する方法
3次元のHermite_e級数(エルミートE級数)を x、y、z のデカルト積上で評価するには、Python の NumPy ライブラリが提供する hermite_e.hermegrid3d(x, y, z, c) メソッドを使用します。このメソッドは、x、y、z の各要素の組み合わせ(デカルト積)からなるすべての点における多項式の値を返します。
hermegrid3d() メソッドのパラメータ
x, y, z: 3次元級数は、これら3つの配列のデカルト積で定義される点において評価されます。引数がリストやタプルで渡された場合は、まず ndarray に変換されます。ndarray 以外のオブジェクトが渡された場合は、スカラーとして扱われます。
c: 係数を格納する配列です。次数 i、j、k の項に対応する係数は c[i, j, k] に格納されているものとして解釈されます。c の次元が3より大きい場合、残りのインデックスは複数の係数セットを表します。逆に c の次元が3未満の場合は、暗黙的にサイズ1の軸が追加され、3次元として処理されます。
結果の形状は c.shape[3:] + x.shape + y.shape + z.shape となります。
実行手順
まず、必要なライブラリをインポートします。
import numpy as np from numpy.polynomial import hermite_e as H
次に、係数用の4次元配列を作成します。
c = np.arange(48).reshape(2,2,6,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_e.hermegrid3d(x, y, z, c) メソッドを使って、x、y、z のデカルト積上で3次元Hermite_e級数を評価します。
print("\nResult...\n",H.hermegrid3d([1,2],[1,2],[1,2],c))完全なコード例
import numpy as np
from numpy.polynomial import hermite_e as H
# 係数用の4次元配列を作成
c = np.arange(48).reshape(2,2,6,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)
# x、y、z のデカルト積上で3D Hermite_e級数を評価
print("\nResult...\n",H.hermegrid3d([1,2],[1,2],[1,2],c))出力結果
Our Array... [[[[ 0 1] [ 2 3] [ 4 5] [ 6 7] [ 8 9] [10 11]] [[12 13] [14 15] [16 17] [18 19] [20 21] [22 23]]] [[[24 25] [26 27] [28 29] [30 31] [32 33] [34 35]] [[36 37] [38 39] [40 41] [42 43] [44 45] [46 47]]]] Dimensions of our Array... 4 Datatype of our Array object... int64 Shape of our Array object... (2, 2, 6, 2) Result... [[[[ 424. -1848.] [ 684. -2952.]] [[ 732. -3132.] [ 1170. -4968.]]] [[[ 440. -1908.] [ 708. -3042.]] [[ 756. -3222.] [ 1206. -5103.]]]]
-
Pythonでx、y、zのデカルト積上の3次元Hermite_e級数を評価する方法
x、y、zのデカルト積(直積)上で3次元のHermite_e級数を評価するには、Pythonの hermite.hermegrid3d(x, y, z, c) メソッドを使用します。このメソッドは、x、y、zのデカルト積で構成される各点における3次元多項式の値を返します。hermegrid3d() メソッドのパラメータまず、パラメータ x、y、z について説明します。3次元級数は、これら3つの配列が作るデカルト積の各点で評価されます。x、y、z のいずれかがリストやタプルの場合は、自動的に ndarray に変換されます。ndarray 以外のスカラーが渡された場合は、そのままスカラーとして扱
-
Pythonで係数の1次元配列を使い、xとyのデカルト積上の2次元エルミートE級数を評価する方法
xとyのデカルト積(直積)上で2次元エルミートE級数(Hermite_e series)を評価するには、Pythonのhermite_e.hermegrid2d(x, y, c)メソッドを使用します。このメソッドは、xとyのデカルト積の各点における2次元多項式の値を返します。パラメータの詳細x、y:2次元級数は、xとyのデカルト積の点において評価されます。xまたはyがリストやタプルの場合は、まずndarrayに変換されます。それ以外の場合はそのまま保持され、ndarrayでなければスカラーとして扱われます。c:係数の配列です。次数i、jの項に対応する係数がc[i,j]に格納されるように順序付け