Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การประเมินอนุกรมเฮอร์ไมต์_e 2 มิติ ผลคูณการ์ทีเซียนของ x และ y ด้วย係ส 3 มิติใน Python

เพื่อประเมินค่าของอนุกรมเฮอร์ไมต์_e (Hermite_e) 2 มิติ บนผลคูณการ์ทีเซียน (Cartesian product) ของ x และ y ให้ใช้เมธอด hermite_e.hermegrid2d(x, y, c) ใน Python เมธอดนี้คืนค่าของพหุนาม 2 มิติ ณ จุดต่างๆ ในผลคูณการ์ทีเซียนของ x และ y

พารามิเตอร์สำคัญ

  • x, y: จุดที่ประเมินอนุกรม 2 มิติ หากเป็นลิสต์หรือทูเพิล จะแปลงเป็น ndarray อัตโนมัติ มิฉะนั้นถือเป็นสเกลาร์
  • c: อาร์เรย์係ส เรียงลำดับ כך ที่係สของพจน์ชนิด i,j อยู่ใน c[i,j] หาก c มีมิติมากกว่า 2 ดัชนีที่เหลือจะนับชุด係สหลายชุด หากน้อยกว่า 2 มิติ จะเพิ่มมิติ 1 เข้าไปอัตโนมัติ รูปทรงผลลัพธ์คือ c.shape[2:] + x.shape

ขั้นตอนการทำงาน

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

# สร้างอาร์เรย์係ส 3 มิติ (2, 2, 6)
c = np.arange(24).reshape(2, 2, 6)

# แสดงข้อมูลอาร์เรย์
print("อาร์เรย์ของเรา...\n", c)
print("\nมิติของอาร์เรย์...\n", c.ndim)
print("\nชนิดข้อมูล...\n", c.dtype)
print("\nรูปทรงอาร์เรย์...\n", c.shape)

# ประเมินอนุกรมเฮอร์ไมต์_e 2 มิติ
print("\nผลลัพธ์...\n", H.hermegrid2d([1, 2], [1, 2], c))

โค้ดเต็มและผลลัพธ์

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

c = np.arange(24).reshape(2, 2, 6)
print("อาร์เรย์ของเรา...\n", c)
print("\nมิติของอาร์เรย์...\n", c.ndim)
print("\nชนิดข้อมูล...\n", c.dtype)
print("\nรูปทรงอาร์เรย์...\n", c.shape)
print("\nผลลัพธ์...\n", H.hermegrid2d([1, 2], [1, 2], c))
อาร์เรย์ของเรา...
 [[[ 0  1  2  3  4  5]
   [ 6  7  8  9 10 11]]

  [[12 13 14 15 16 17]
   [18 19 20 21 22 23]]]
มิติของอาร์เรย์...
 3
ชนิดข้อมูล...
 int64
รูปทรงอาร์เรย์...
 (2, 2, 6)
ผลลัพธ์...
 [[[ 36.  60.]
   [ 66. 108.]]

  [[ 40.  66.]
   [ 72. 117.]]

  [[ 44.  72.]
   [ 78. 126.]]

  [[ 48.  78.]
   [ 84. 135.]]

  [[ 52.  84.]
   [ 90. 144.]]

  [[ 56.  90.]
   [ 96. 153.]]]