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

Loại bỏ hệ số đuôi nhỏ khỏi đa thức Legendre trong Python

Để loại bỏ các hệ số đuôi nhỏ khỏi đa thức Legendre, sử dụng phương thức legendre.legtrim() trong NumPy Python. Phương thức trả về mảng 1 chiều với các số 0 đuôi đã bị loại bỏ. Nếu chuỗi kết quả rỗng, sẽ trả về chuỗi chứa một số 0 đơn lẻ.

"Nhỏ" nghĩa là "nhỏ về giá trị tuyệt đối" và được kiểm soát bởi tham số tol; "đuôi" nghĩa là hệ số bậc cao nhất, ví dụ trong [0, 1, 1, 0, 0] (biểu diễn 0 + x + x**2 + 0*x**3 + 0*x**4) cả hệ số bậc 3 và bậc 4 sẽ bị "cắt". Tham số c là mảng 1 chiều các hệ số, sắp xếp từ bậc thấp đến cao. Tham số tol: các phần tử đuôi có giá trị tuyệt đối nhỏ hơn hoặc bằng tol sẽ bị loại bỏ.

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

Nhập thư viện cần thiết:

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

Tạo mảng bằng numpy.array(). Đây là mảng 1 chiều các hệ số:

c = np.array([0, 5, 0, 0, 9, 0])

Hiển thị mảng:

print("Our Array...\n", c)

Kiểm tra số chiều:

print("\nDimensions of our Array...\n", c.ndim)

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

print("\nDatatype of our Array object...\n", c.dtype)

Lấy hình dạng:

print("\nShape of our Array object...\n", c.shape)

Loại bỏ hệ số đuôi nhỏ:

print("\nResult...\n", L.legtrim(c))

Ví dụ hoàn chỉnh

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

c = np.array([0, 5, 0, 0, 9, 0])
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.legtrim(c))

Kết quả đầu ra

Our Array...   [0 5 0 0 9 0]
Dimensions of our Array... 1
Datatype of our Array object... int64
Shape of our Array object... (6,)
Result...   [0. 5. 0. 0. 9.]