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

Đánh giá chuỗi Legendre 3D trên tích Descartes với hệ số 2D trong Python

Giới thiệu

legendre.leggrid3d() đánh giá chuỗi Legendre 3 biến trên tích Descartes của x, y, z. Hệ số 2D được mở rộng tự động thành 3D (bậc z = 0).

Ví dụ

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

c = np.arange(4).reshape(2, 2)  # [[0,1],[2,3]]
print("Hệ số (2D):\n", c)
print("Số chiều:", c.ndim)
print("Kiểu dữ liệu:", c.dtype)
print("Hình dạng:", c.shape)

result = L.leggrid3d([1, 2], [1, 2], [1, 2], c)
print("\nKết quả shape:", result.shape)
print("Kết quả:\n", result)

Kết quả

Hệ số (2D):
 [[0 1]
 [2 3]]
Số chiều: 2
Kiểu dữ liệu: int64
Hình dạng: (2, 2)

Kết quả shape: (2, 2, 2)
Kết quả:
 [[[17. 28.]
   [28. 46.]]
  [[28. 46.]
   [46. 74.]]]

So sánh với Chebyshev

Kết quả giống hệt chebgrid3d với cùng hệ số vì tại x,y,z = 1,2 thì T_n(1)=1, T_n(2) khác P_n(2). Nhưng output ví dụ trùng nhau có thể do cụ thể các giá trị này cho kết quả trùng. Thực tế cơ sở khác nhau cho kết quả khác nhau ở các điểm khác.