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

Tạo ma trận Vandermonde giả của đa thức Hermite_e với mảng tọa độ điểm phức trong Python


Để tạo ma trận Vandermonde giả của đa thức Hermite_e, hãy sử dụng hermite_e.hermevander2d() trong NumPy Python. Phương thức trả về ma trận pseudo-Vandermonde. Các tham số:

  • x, y: Mảng tọa độ điểm, tất cả có cùng hình dạng. Kiểu dữ liệu sẽ đượ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. Các vô hướng đượ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].

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 hermite_e as H

Tạo mảng tọa độ điểm phức cùng hình dạng:

x = np.array([-2.+2.j, -1.+2.j])
y = np.array([1.+2.j, 2.+2.j])

Hiển thị các mảng:

print("Mảng 1...\n", x)
print("\nMảng 2...\n", y)

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)

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)

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)

Tạo ma trận Vandermonde giả Hermite_e:

x_deg, y_deg = 2, 3
print("\nKết quả...\n", H.hermevander2d(x, y, [x_deg, y_deg]))

Ví dụ hoàn chỉnh

import numpy as np
from numpy.polynomial import hermite_e as H

# Tạo mảng tọa độ điểm phức cùng hình dạng
x = np.array([-2.+2.j, -1.+2.j])
y = np.array([1.+2.j, 2.+2.j])

# Hiển thị các mảng
print("Mảng 1...\n", x)
print("\nMảng 2...\n", y)

# 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)

# 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)

# 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)

# Tạo ma trận Vandermonde giả Hermite_e
x_deg, y_deg = 2, 3
print("\nKết quả...\n", H.hermevander2d(x, y, [x_deg, y_deg]))

Kết quả đầu ra

Mảng 1...
 [-2.+2.j -1.+2.j]
Mảng 2...
 [1.+2.j 2.+2.j]
Kiểu dữ liệu Mảng 1... complex128
Kiểu dữ liệu Mảng 2... complex128
Số chiều của Mảng 1... 1
Số chiều của Mảng 2... 1
Hình dạng của Mảng 1... (2,)
Hình dạng của Mảng 2... (2,)
Kết quả...
 [[ 1. +0.j  1. +2.j -4. +4.j -14. -8.j -2. +2.j -6. -2.j  0. -16.j
   44. -12.j -1. -8.j  15. -10.j  36. +28.j -50.+120.j]
 [ 1. +0.j  2. +2.j -1. +8.j -22. +10.j -1. +2.j -6. +2.j -15. -10.j
   2. -54.j -4. -4.j  0. -16.j  36. -28.j 128. +48.j]]