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

คืนเมทริกซ์คอมแพนเนียน (Companion Matrix) ของอาร์เรย์สัมประสิทธิ์พหุนาม 1 มิติใน Python

บทนำ

ในการคืนเมทริกซ์คอมแพนเนียน (companion matrix) ของอาร์เรย์สัมประสิทธิ์พหุนาม 1 มิติ สามารถใช้เมธอด polynomial.polycompanion() ใน NumPy ของ Python เมทริกซ์คอมแพนเนียนสำหรับพาวเวอร์ซีรีส์ไม่สามารถทำให้เป็นสมมาตรได้โดยการปรับสเกลฐาน

พารามิเตอร์

  • c: อาร์เรย์ 1 มิติของสัมประสิทธิ์พหุนาม จัดเรียงจากดีกรีต่ำไปสูง

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

1. นำเข้าไลบรารีที่จำเป็น

import numpy as np
from numpy.polynomial.polynomial import polycompanion

2. สร้างอาร์เรย์สัมประสิทธิ์ 1 มิติ

c = np.array([1, 2, 3])

3. แสดงข้อมูลของอาร์เรย์

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)

4. คืนเมทริกซ์คอมแพนเนียน

print("\nResult...\n", polycompanion(c))

ตัวอย่างโค้ดสมบูรณ์

import numpy as np
from numpy.polynomial.polynomial import polycompanion

# สร้างอาร์เรย์สัมประสิทธิ์ 1 มิติ
c = np.array([1, 2, 3])

# แสดงข้อมูลอาร์เรย์
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)

# คืนเมทริกซ์คอมแพนเนียน
print("\nResult...\n", polycompanion(c))

ผลลัพธ์

Our Array...
 [1 2 3]
Dimensions of our Array...
 1
Datatype of our Array object...
 int64
Shape of our Array object...
 (3,)
Result...
 [[ 0.         -0.33333333]
  [ 1.         -0.66666667]]

สรุป

เมทริกซ์คอมแพนเนียนที่ได้มีขนาด (deg, deg) โดยที่ deg คือดีกรีของพหุนาม (ในที่นี้คือ 2) ค่า fixed point ของเมทริกซ์นี้จะตรงกับรากของพหุนาม 1 + 2x + 3x²