Python에서 Hermite_e(에르미트E) 급수를 적분하려면 numpy.polynomial 모듈의 hermite_e.hermeint() 메서드를 사용합니다. 이 메서드는 다양한 매개변수를 통해 적분 방식을 세밀하게 제어할 수 있습니다.
hermeint() 메서드의 매개변수
첫 번째 매개변수 c는 Hermite_e 급수의 계수 배열입니다. c가 다차원 배열인 경우 각 축은 서로 다른 변수에 대응하며, 각 축의 차수는 해당 인덱스에 의해 결정됩니다.
두 번째 매개변수 m은 적분 차수(order)를 나타내며, 반드시 양수여야 합니다.
세 번째 매개변수 k는 적분 상수입니다. 하한(lbnd)에서 첫 번째 적분의 값이 목록의 첫 번째 값이 되고, 두 번째 적분의 값이 두 번째 값이 되는 식으로 대응됩니다. k == [](기본값)이면 모든 적분 상수는 0으로 설정됩니다. m == 1인 경우에는 목록 대신 단일 스칼라 값을 지정할 수도 있습니다.
네 번째 매개변수 lbnd는 적분의 하한(lower bound)입니다. (기본값: 0)
다섯 번째 매개변수 scl은 스칼라 값으로, 각 적분이 수행된 후 적분 상수가 더해지기 전에 결과에 곱해집니다. (기본값: 1)
여섯 번째 매개변수 axis는 적분이 수행될 축을 지정합니다.
적분 수행 단계
먼저 필요한 라이브러리를 임포트합니다.
import numpy as np
from numpy.polynomial import hermite_e as H
계수로 사용할 다차원 배열을 생성합니다.
c = np.arange(4).reshape(2,2)
생성한 배열을 출력합니다.
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)hermite_e.hermeint() 메서드를 사용하여 축 0을 따라 Hermite_e 급수를 적분합니다.
print("\nResult...\n",H.hermeint(c, axis = 0))전체 예제 코드
import numpy as np
from numpy.polynomial import hermite_e as H
# 계수로 사용할 다차원 배열 생성
c = np.arange(4).reshape(2,2)
# 배열 출력
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)
# hermeint() 메서드로 축 0을 따라 적분 수행
print("\nResult...\n",H.hermeint(c, axis = 0))
실행 결과
Our Array...
[[0 1]
[2 3]]
Dimensions of our Array...
2
Datatype of our Array object...
int64
Shape of our Array object...
(2, 2)
Result...
[[1. 1.5]
[0. 1. ]
[1. 1.5]]
실행 결과를 보면 원래 2×2 형태였던 계수 배열이 적분 후 3×3 형태로 확장된 것을 확인할 수 있습니다. 이는 Hermite_e 급수를 적분하면 다항식의 차수가 하나씩 증가하기 때문이며, axis=0 옵션에 따라 첫 번째 축을 기준으로 적분이 수행되었습니다.