x와 y의 데카르트 곱(Cartesian product) 위에서 2D 르장드르(Legendre) 급수를 평가하려면 Python NumPy의 polynomial.legendre.leggrid2d() 메서드를 사용합니다. 이 메서드는 x와 y의 데카르트 곱에 있는 점들에서 2차원 르장드르 급수의 값을 반환합니다. 만약 계수 배열 c가 2차원 미만이라면, 2차원으로 만들기 위해 형태(shape)에 1이 암묵적으로 추가됩니다. 결과의 형태는 c.shape[2:] + x.shape + y.shape가 됩니다.
주요 매개변수
1. x, y
2차원 급수는 x와 y의 데카르트 곱에 있는 점들에서 평가됩니다. x 또는 y가 리스트(list)나 튜플(tuple)이면 먼저 ndarray로 변환되며, 그렇지 않으면 그대로 유지되고 ndarray가 아니라면 스칼라(scalar)로 취급됩니다.
2. c
계수 배열로, 다중 차수(multidegree) i, j 항의 계수가 c[i,j]에 포함되도록 정렬됩니다. c의 차원이 2보다 크다면, 나머지 인덱스는 여러 개의 계수 집합을 나타냅니다.
단계별 구현 방법
먼저 필요한 라이브러리를 임포트합니다.
import numpy as np from numpy.polynomial import legendre as L
계수로 이루어진 1차원(1d) 배열을 생성합니다.
c = np.array([3, 5])
생성된 배열을 출력합니다.
print("Our Array...\n",c)배열의 차원을 확인합니다.
print("\nDimensions of our Array...\n",c.ndim)배열 객체의 데이터 타입을 확인합니다.
print("\nDatatype of our Array object...\n",c.dtype)배열 객체의 형태(shape)를 확인합니다.
print("\nShape of our Array object...\n",c.shape)x와 y의 데카르트 곱 위에서 2D 르장드르 급수를 평가하려면 Python NumPy의 polynomial.legendre.leggrid2d() 메서드를 사용합니다. 이 메서드는 x와 y의 데카르트 곱에 있는 점들에서 2차원 르장드르 급수의 값을 반환합니다.
print("\nResult...\n",L.leggrid2d([1,2],[1,2],c))전체 예제 코드
import numpy as np
from numpy.polynomial import legendre as L
# 계수로 이루어진 1d 배열 생성
c = np.array([3, 5])
# 배열 출력
print("Our Array...\n",c)
# 차원 확인
print("\nDimensions of our Array...\n",c.ndim)
# 데이터 타입 확인
print("\nDatatype of our Array object...\n",c.dtype)
# 형태 확인
print("\nShape of our Array object...\n",c.shape)
# x와 y의 데카르트 곱에서 2D 르장드르 급수 평가
print("\nResult...\n",L.leggrid2d([1,2],[1,2],c))실행 결과
Our Array...
[3 5]
Dimensions of our Array...
1
Datatype of our Array object...
int64
Shape of our Array object...
(2,)
Result...
[21. 34.]위 결과에서 볼 수 있듯이, leggrid2d() 메서드는 입력된 계수 배열 [3, 5]를 사용하여 좌표 (1,1)과 (2,2)에서 각각 21과 34라는 르장드르 급수의 평가 값을 반환합니다. 1차원 계수 배열은 자동으로 2차원으로 확장되어 처리됩니다.