Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Trả về ma trận đồng hành tỷ lệ của mảng 1D hệ số Hermite trong Python


Để trả về ma trận đồng hành tỷ lệ (scaled companion matrix) của mảng 1 chiều chứa hệ số đa thức, dùng phương thức hermite.hermcompanion() trong NumPy Python. Các đa thức cơ sở được tỷ lệ để ma trận đồng hành đối xứng khi c là đa thức cơ sở Hermite. Điều này cung cấp ước lượng giá trị riêng tốt hơn và các giá trị riêng đảm bảo là thực nếu dùng numpy.linalg.eigvalsh. Tham số c là mảng 1D hệ số Hermite theo thứ tự bậc thấp đến cao.

Các bước thực hiện

Nhập thư viện:

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

Tạo mảng 1D hệ số:

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

Hiển thị mảng:

print("Mảng của chúng ta...\n", c)

Kiểm tra số chiều:

print("\nSố chiều của mảng...\n", c.ndim)

Lấy kiểu dữ liệu:

print("\nKiểu dữ liệu của đối tượng mảng...\n", c.dtype)

Lấy hình dạng:

print("\nHình dạng của đối tượng mảng...\n", c.shape)

Tính ma trận đồng hành tỷ lệ:

print("\nKết quả...\n", H.hermcompanion(c))

Ví dụ hoàn chỉnh

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

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

print("Mảng của chúng ta...\n", c)
print("\nSố chiều của mảng...\n", c.ndim)
print("\nKiểu dữ liệu của đối tượng mảng...\n", c.dtype)
print("\nHình dạng của đối tượng mảng...\n", c.shape)
print("\nKết quả...\n", H.hermcompanion(c))

Kết quả đầu ra

Mảng của chúng ta...
[1 2 3]
Số chiều của mảng...
1
Kiểu dữ liệu của đối tượng mảng...
int64
Hình dạng của đối tượng mảng...
(3,)
Kết quả...
[[ 0.         0.58925565]
 [ 0.70710678 -0.33333333]]