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

Đánh giá chuỗi Legendre 3D tại các điểm (x, y, z) trong Python


Để đánh giá một chuỗi Legendre 3D tại các điểm x, y, z, hãy sử dụng phương thức polynomial.legendre.legval3d() trong NumPy Python. Phương thức trả về giá trị của đa thức đa chiều trên các điểm được hình thành từ các bộ ba giá trị tương ứng từ x, y và z.

Nếu c có ít hơn 3 chiều, các chiều một sẽ được thêm ngầm vào hình dạng để biến thành 3-D. Hình dạng kết quả sẽ là c.shape[3:] + x.shape.

Tham số

  • x, y, z: Chuỗi ba chiều được đánh giá tại các điểm (x, y, z), nơi x, y và z phải có cùng hình dạng. Nếu bất kỳ x, y, hoặc z nào là danh sách hoặc tuple, nó được chuyển đổi thành ndarray trước, ngược lại giữ nguyên và nếu không phải ndarray thì được xem như vô hướng.
  • c: Mảng hệ số được sắp xếp sao cho hệ số của hạng tử bậc đa i,j,k chứa trong c[i,j,k]. Nếu c có chiều lớn hơn 3, các chỉ số còn lại liệt kê nhiều bộ hệ số.

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 legendre as L

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á chuỗi Legendre 3D tại các điểm x, y, z:

print("\nKết quả...\n", L.legval3d([1, 2], [1, 2], [1, 2], c))

Ví dụ hoàn chỉnh

import numpy as np
from numpy.polynomial import legendre as L

# 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á chuỗi Legendre 3D tại các điểm x, y, z
print("\nKết quả...\n", L.legval3d([1, 2], [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ả...
 [ 276.  39723.75]