Để đánh giá đa thức 2D trên tích Descartes của x và y, sử dụng phương thức polynomial.polygrid2d(x, y, c) trong Python. Phương thức trả về giá trị của đa thức hai chiều tại các điểm trong tích Descartes của x và y.
Tham số thứ nhất, x và y, chuỗi hai chiều được đánh giá tại các điểm trong tích Descartes của x và y. Nếu x hoặc y là list hoặc tuple, nó đầu tiên được chuyển thành ndarray, ngược lại nó giữ nguyên và, nếu không phải ndarray, được coi như scalar.
Tham số thứ hai, c là mảng hệ số được sắp xếp sao cho hệ số cho các hạng tử bậc i,j chứa trong c[i,j]. Nếu c có chiều lớn hơn hai, các chỉ số còn lại liệt kê nhiều tập hợp hệ số. Nếu c có ít hơn hai chiều, 1 được ngầm thêm vào hình dạng để làm nó 2-D. Hình dạng kết quả sẽ là c.shape[2:] + x.shape + y.shape.
Các bước thực hiện
Trước tiên, nhập thư viện cần thiết:
import numpy as np
from numpy.polynomial.polynomial import polygrid2d
Tạo mảng hệ số 2D:
c = np.arange(4).reshape(2, 2)
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)
Để đánh giá đa thức 2D trên tích Descartes của x và y, sử dụng polynomial.polygrid2d():
print("\nKết quả...\n", polygrid2d([1, 2], [1, 2], c))
Ví dụ hoàn chỉnh
import numpy as np
from numpy.polynomial.polynomial import polygrid2d
# Tạo mảng hệ số 2D
c = np.arange(4).reshape(2, 2)
# 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)
# Đánh giá đa thức 2D
print("\nKết quả...\n", polygrid2d([1, 2], [1, 2], c))
Kết quả đầu ra
Mảng của chúng ta...
[[0 1]
[2 3]]
Số chiều của mảng...
2
Kiểu dữ liệu của đối tượng mảng...
int64
Hình dạng của đối tượng mảng...
(2, 2)
Kết quả...
[[ 6. 10.]
[11. 18.]]
Giải thích: Hệ số c=[[0,1],[2,3]] đại diện cho đa thức: p(x,y) = 0 + 2*x + 1*y + 3*x*y. Tích Descartes [1,2]×[1,2] cho 4 điểm:
- p(1,1) = 0 + 2*1 + 1*1 + 3*1*1 = 6
- p(1,2) = 0 + 2*1 + 1*2 + 3*1*2 = 10
- p(2,1) = 0 + 2*2 + 1*1 + 3*2*1 = 11
- p(2,2) = 0 + 2*2 + 1*2 + 3*2*2 = 18
[[6, 10], [11, 18]].