Để tạo ma trận Vandermonde giả của đa thức Laguerre với các điểm mẫu x, y, z, hãy sử dụng laguerre.lagvander3d() trong NumPy Python. Các tham số:
- x, y, z: Mảng điểm. Kiểu dữ liệu được chuyển đổi thành float64 hoặc complex128 tùy thuộc vào việc có phần tử phức hay không. Nếu x là vô hướng, nó được chuyển thành mảng 1-D.
- deg: Danh sách các bậc tối đa dạng [x_deg, y_deg, z_deg].
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 import laguerre as L
Tạo mảng tọa độ điểm cùng hình dạng:
x = np.array([1, 2]) y = np.array([3, 4]) z = np.array([5, 6])
Hiển thị các mảng:
print("Mảng 1...\n", x)
print("\nMảng 2...\n", y)
print("\nMảng 3...\n", z)
Hiển thị kiểu dữ liệu:
print("\nKiểu dữ liệu Mảng 1...\n", x.dtype)
print("\nKiểu dữ liệu Mảng 2...\n", y.dtype)
print("\nKiểu dữ liệu Mảng 3...\n", z.dtype)
Kiểm tra số chiều:
print("\nSố chiều của Mảng 1...\n", x.ndim)
print("\nSố chiều của Mảng 2...\n", y.ndim)
print("\nSố chiều của Mảng 3...\n", z.ndim)
Kiểm tra hình dạng:
print("\nHình dạng của Mảng 1...\n", x.shape)
print("\nHình dạng của Mảng 2...\n", y.shape)
print("\nHình dạng của Mảng 3...\n", z.shape)
Tạo ma trận Vandermonde giả Laguerre 3D:
x_deg, y_deg, z_deg = 2, 3, 4
print("\nKết quả...\n", L.lagvander3d(x, y, z, [x_deg, y_deg, z_deg]))
Ví dụ hoàn chỉnh
import numpy as np
from numpy.polynomial import laguerre as L
# Tạo mảng tọa độ điểm cùng hình dạng
x = np.array([1, 2])
y = np.array([3, 4])
z = np.array([5, 6])
# Hiển thị các mảng
print("Mảng 1...\n", x)
print("\nMảng 2...\n", y)
print("\nMảng 3...\n", z)
# Hiển thị kiểu dữ liệu
print("\nKiểu dữ liệu Mảng 1...\n", x.dtype)
print("\nKiểu dữ liệu Mảng 2...\n", y.dtype)
print("\nKiểu dữ liệu Mảng 3...\n", z.dtype)
# Kiểm tra số chiều
print("\nSố chiều của Mảng 1...\n", x.ndim)
print("\nSố chiều của Mảng 2...\n", y.ndim)
print("\nSố chiều của Mảng 3...\n", z.ndim)
# Kiểm tra hình dạng
print("\nHình dạng của Mảng 1...\n", x.shape)
print("\nHình dạng của Mảng 2...\n", y.shape)
print("\nHình dạng của Mảng 3...\n", z.shape)
# Tạo ma trận Vandermonde giả Laguerre 3D
x_deg, y_deg, z_deg = 2, 3, 4
print("\nKết quả...\n", L.lagvander3d(x, y, z, [x_deg, y_deg, z_deg]))
Kết quả đầu ra
Mảng 1...
[1 2]
Mảng 2...
[3 4]
Mảng 3...
[5 6]
Kiểu dữ liệu Mảng 1... int64
Kiểu dữ liệu Mảng 2... int64
Kiểu dữ liệu Mảng 3... int64
Số chiều của Mảng 1... 1
Số chiều của Mảng 2... 1
Số chiều của Mảng 3... 1
Hình dạng của Mảng 1... (2,)
Hình dạng của Mảng 2... (2,)
Hình dạng của Mảng 3... (2,)
Kết quả...
[[ 1. -4. 3.5 2.66666667 -1.29166667 -2. 8. -7. -5.33333333
2.58333333 -0.5 2. -1.75 -1.33333333 0.64583333 1. -4.
3.5 2.66666667 -1.29166667 0. -0. 0. 0. -0. -0. -0.
-0. -0. -0. -0. -0. -0. 0. -0. 0. -0. 0. 0. -0.
-0. 0. -0. 0. -0. -0. 0. -0. 0. -0. -0. 0. 0.
-0.5 2. -1.75 -1.33333333 0.64583333 1. -4. 3.5 2.66666667
-1.29166667 0.25 -1. 0.875 0.66666667 -0.32291667 -0.5 2.
-1.75 -1.33333333 0.64583333]
[ 1. -5. 7. 1. -5. -3. 15. -21. -3. 15. 1. -5. 7. 1. -5.
2.33333333 -11.66666667 16.33333333 2.33333333 -11.66666667 -1.
5. -7. -1. 5. 3. -15. 21. 3. -15. -1. 5. -7. -1. 5.
-2.33333333 11.66666667 -16.33333333 -2.33333333 11.66666667 -1.
5. -7. -1. 5. 3. -15. 21. 3. -15. -1. 5. -7. -1. 5.
-2.33333333 11.66666667 -16.33333333 -2.33333333 11.66666667]]