Để đá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ố 3D:
c = np.arange(24).reshape(2, 2, 6)
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ố 3D
c = np.arange(24).reshape(2, 2, 6)
# 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 4 5]
[ 6 7 8 9 10 11]]
[[12 13 14 15 16 17]
[18 19 20 21 22 23]]]
Số chiều của mảng...
3
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, 6)
Kết quả...
[[[ 36. 60.]
[ 66. 108.]]
[[ 40. 66.]
[ 72. 117.]]
[[ 44. 72.]
[ 78. 126.]]
[[ 48. 78.]
[ 84. 135.]]
[[ 52. 84.]
[ 90. 144.]]
[[ 56. 90.]
[ 96. 153.]]]
Giải thích: Hệ số c shape (2,2,6) → 6 đa thức 2D khác nhau (chỉ số 2). Mỗi đa thức 2D có hệ số shape (2,2) (bậc x≤1, y≤1). Tích Descartes [1,2]×[1,2] cho 4 điểm. Kết quả shape (6, 2, 2) = 6 đa thức × 2×2 điểm. Giá trị tăng đều do hệ số tăng tuyến tính.