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

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

Để đánh giá chuỗi Chebyshev 2 biến trên tích Descartes x, y với mảng hệ số 3D (nhiều tập hệ số), sử dụng numpy.polynomial.chebyshev.chebgrid2d().

Tham số

  • x, y: Tọa độ điểm. List/tuple → ndarray.
  • c: Mảng hệ số. c[i,j] là hệ số của Tᵢ(x)Tⱼ(y). Nếu >2 chiều, các chỉ số còn lại là nhiều tập hệ số. Nếu <2 chiều, tự động thêm chiều 1. Kết quả hình dạng: c.shape[2:] + x.shape + y.shape.

Các bước thực hiện

1. Nhập thư viện

import numpy as np
from numpy.polynomial import chebyshev as C

2. Tạo mảng hệ số 3D

c = np.arange(24).reshape(2, 2, 6)

3. Hiển thị mảng

print("Mảng của chúng ta...\n", c)

4. Kiểm tra số chiều

print("\nSố chiều của mảng...\n", c.ndim)

5. Lấy kiểu dữ liệu

print("\nKiểu dữ liệu của đối tượng mảng...\n", c.dtype)

6. Lấy hình dạng

print("\nHình dạng của đối tượng mảng...\n", c.shape)

7. Đánh giá tại x=[1,2], y=[1,2]

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

Ví dụ hoàn chỉnh

import numpy as np
from numpy.polynomial import chebyshev as C

c = np.arange(24).reshape(2, 2, 6)
print("Mảng của chúng ta...\n", c)
print("\nSố chiều của mảng...\n", c.ndim)
print("\nKiểu dữ liệu của đối tượng mảng...\n", c.dtype)
print("\nHình dạng của đối tượng mảng...\n", c.shape)
print("\nKết quả...\n", C.chebgrid2d([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ả...
 [[[ 36.  60.]
   [ 66. 108.]]
  [[ 40.  66.]
   [ 72. 117.]]
  [[ 44.  72.]
   [ 78. 126.]]
  [[ 48.  78.]
   [ 84. 135.]]
  [[ 52.  84.]
   [ 90. 144.]]
  [[ 56.  90.]
   [ 96. 153.]]]

Hệ số 3D hình dạng (2, 2, 6): 6 tập hệ số (c.shape[2]=6), mỗi tập là ma trận 2x2 cho chuỗi Chebyshev 2 biến bậc (1,1). Kết quả hình dạng (6, 2, 2) = c.shape[2:] + x.shape + y.shape.