บทนำ
ในการคำนวณรากของอนุกรม Hermite สามารถใช้เมธอด hermite.hermroots() จาก NumPy เมธอดนี้จะคืนค่าเป็นอาเรย์ของรากของอนุกรม หากรากทั้งหมดเป็นจำนวนจริง ผลลัพธ์จะเป็นจำนวนจริง มิฉะนั้นจะเป็นจำนวนเชิงซ้อน พารามิเตอร์ c คืออาเรย์ 1 มิติของสัมประสิทธิ์
การประมาณค่ารากได้มาจากค่าเฉพาะ (eigenvalues) ของเมทริกซ์คู่หู (companion matrix) รากที่อยู่ไกลจากจุดกำเนิดของระนาบเชิงซ้อนอาจมีข้อผิดพลาดมาก เนื่องจากความไม่เสถียรทางตัวเลขของอนุกรม สำหรับรากที่มีความหลายมากกว่า 1 ก็จะมีข้อผิดพลาดมากขึ้นเช่นกัน เนื่องจากค่าของอนุกรมใกล้จุดเหล่านั้นไม่น่าเปลี่ยนแปลงจากข้อผิดพลาดของราก รากที่แยกจากกันและอยู่ใกล้จุดกำเนิดสามารถปรับปรุงได้ด้วยการวนซ้ำวิธีของนิวตัน (Newton's method) ไปสักไม่กี่รอบ
ขั้นตอนการทำงาน
1. นำเข้าไลบรารี
from numpy.polynomial import hermite as H
2. คำนวณรากของอนุกรม Hermite
j = complex(0, 1)
print("Result...\n", H.hermroots((-j, j)))
3. ตรวจสอบชนิดข้อมูล
print("\nType...\n", H.hermroots((-j, j)).dtype)
4. ตรวจสอบรูปร่าง
print("\nShape...\n", H.hermroots((-j, j)).shape)
ตัวอย่างโค้ดสมบูรณ์
from numpy.polynomial import hermite as H
# คำนวณรากของอนุกรม Hermite
j = complex(0, 1)
print("Result...\n", H.hermroots((-j, j)))
# ตรวจสอบชนิดข้อมูล
print("\nType...\n", H.hermroots((-j, j)).dtype)
# ตรวจสอบรูปร่าง
print("\nShape...\n", H.hermroots((-j, j)).shape)
ผลลัพธ์ที่คาดหวัง
Result... [0.5+0.j] Type... complex128 Shape... (1,)