Để 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.5, 2.3]) y = np.array([3.7, 4.4]) z = np.array([5.3, 6.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.5, 2.3])
y = np.array([3.7, 4.4])
z = np.array([5.3, 6.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.5 2.3]
Mảng 2...
[3.7 4.4]
Mảng 3...
[5.3 6.6]
Kiểu dữ liệu Mảng 1... float64
Kiểu dữ liệu Mảng 2... float64
Kiểu dữ liệu Mảng 3... float64
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 4.445 2.42216667 -2.30432917
-2.7 11.61 -12.0015 -6.53985 6.22168875
0.445 -1.9135 1.978025 1.07786417 -1.02542648
1.99283333 -8.56918333 8.85814417 4.82697447 -4.59214397
-0.5 2.15 -2.2225 -1.21108333 1.15216458
1.35 -5.805 6.00075 3.269925 -3.11084437
-0.2225 0.95675 -0.9890125 -0.53893208 0.51271324
-0.99641667 4.28459167 -4.42907208 -2.41348724 2.29607199
-0.875 3.7625 -3.889375 -2.11939583 2.01628802
2.3625 -10.15875 10.5013125 5.72236875 -5.44397766
-0.389375 1.6743125 -1.73077188 -0.94313115 0.89724817
-1.74372917 7.49803542 -7.75087615 -4.22360266 4.01812598]
[ 1. -5.6 9.58 -1.376 -7.3226
-3.4 19.04 -32.572 4.6784 24.89684
1.88 -10.528 18.0104 -2.58688 -13.766488
2.64266667 -14.79893333 25.31674667 -3.63630933 -19.35119093
-1.3 7.28 -12.454 1.7888 9.51938
4.42 -24.752 42.3436 -6.08192 -32.365892
-2.444 13.6864 -23.41352 3.362944 17.8964344
-3.43546667 19.23861333 -32.91177067 4.72720213 25.15654821
-0.955 5.348 -9.1489 1.31408 6.993083
3.247 -18.1832 31.10626 -4.467872 -23.7764822
-1.7954 10.05424 -17.199932 2.4704704 13.14699604
-2.52374667 14.13298133 -24.17749307 3.47267541 18.48038734]]