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

การสร้างเมทริกซ์คอมแพนเนียนแบบปรับขนาดของสัมประสิทธิ์พหุนามเลจันดร์ 1 มิติใน Python


เพื่อสร้างเมทริกซ์คอมแพนเนียนแบบปรับขนาด (Scaled Companion Matrix) ของอาร์เรย์ 1 มิติของสัมประสิทธิ์พหุนามเลจันดร์ ให้ใช้เมธอด legendre.legcompanion() ใน NumPy เมทริกซ์คอมแพนเนียนปกติของพหุนามเลจันดร์เป็นแบบสมมาตรแล้วเมื่อ c เป็นพหุนามพื้นฐานลากูร์ (Laguerre) จึงไม่มีการปรับขนาด

เมธอดคืนค่าเมทริกซ์คอมแพนเนียนแบบปรับขนาดขนาด (deg, deg) พารามิเตอร์ c คืออาร์เรย์ 1 มิติของสัมประสิทธิ์อนุกรมเลจันดร์ เรียงจากอันดับต่ำไปสูง

ขั้นตอน

นำเข้าไลบรารี:

import numpy as np
from numpy.polynomial import legendre as L

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

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

แสดงอาร์เรย์:

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", L.legcompanion(c))

ตัวอย่างโค้ดเต็ม

import numpy as np
from numpy.polynomial import legendre as L

c = np.array([1, 2, 3, 4, 5])
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", L.legcompanion(c))

ผลลัพธ์

Our Array...   [1 2 3 4 5]
Dimensions of our Array... 1
Datatype of our Array object... int64
Shape of our Array object... (5,)
Result...   [[ 0.          0.57735027  0.         -0.30237158]
 [ 0.57735027  0.          0.51639778 -0.34914862]
 [ 0.          0.51639778  0.          0.10141851]
 [ 0.          0.          0.50709255 -0.45714286]]