Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python NumPy로 주어진 근(Root)을 가지는 Hermite_e 급수 생성하기

주어진 근(root)을 가지는 Hermite_e(에르미트E) 급수를 생성하려면 Python NumPy에서 제공하는 hermite_e.hermefromroots() 메서드를 사용하면 됩니다. 이 메서드는 계수들로 이루어진 1차원 배열을 반환합니다. 모든 근이 실수일 경우 결과 배열은 실수형(real)이 되지만, 일부 근이 복소수인 경우에는 결과의 계수가 모두 실수라 하더라도 배열 전체가 복소수형(complex)으로 반환된다는 점에 유의해야 합니다. 매개변수 roots는 생성하고자 하는 다항식의 근들을 담고 있는 시퀀스입니다.

Hermite_e 급수 생성 단계

1. 필요한 라이브러리 가져오기

먼저 NumPy의 hermite_e 모듈을 임포트합니다.

from numpy.polynomial import hermite_e as H

2. 주어진 근으로 Hermite_e 급수 생성

hermefromroots() 메서드에 근들을 튜플 형태로 전달하여 급수를 생성합니다.

print("Result...\n",H.hermefromroots((-1,0,1)))

3. 데이터 타입(dtype) 확인

생성된 배열의 데이터 타입을 확인할 수 있습니다.

print("\nType...\n",H.hermefromroots((-1,0,1)).dtype)

4. 배열의 형태(shape) 확인

생성된 계수 배열의 크기를 확인합니다.

print("\nShape...\n",H.hermefromroots((-1,0,1)).shape)

전체 예제 코드

from numpy.polynomial import hermite_e as H

# 주어진 근으로 Hermite_e 급수를 생성하려면 hermite_e.hermefromroots() 메서드를 사용합니다.
print("Result...\n",H.hermefromroots((-1,0,1)))

# 데이터 타입 확인
print("\nType...\n",H.hermefromroots((-1,0,1)).dtype)

# 배열의 형태 확인
print("\nShape...\n",H.hermefromroots((-1,0,1)).shape)

실행 결과

Result...
    [0. 2. 0. 1.]

Type...
float64

Shape...
(4,)

결과 해석

근 (-1, 0, 1)로부터 생성된 Hermite_e 급수의 계수 배열은 [0. 2. 0. 1.]입니다. 이는 해당 다항식이 0×He₀(x) + 2×He₁(x) + 0×He₂(x) + 1×He₃(x), 즉 2·He₁(x) + He₃(x)임을 의미합니다. He₁(x) = x, He₃(x) = x³ − 3x이므로 이를 정리하면 x³ − x = x(x−1)(x+1)이 되어, 입력으로 준 세 개의 근(-1, 0, 1)을 정확히 가지는 다항식임을 확인할 수 있습니다. 또한 모든 근이 실수이므로 결과 배열의 dtype은 float64로 출력되며, 계수 4개에 해당하는 shape은 (4,)입니다.