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

Python에서 축(axis) 1을 따라 다차원 계수로 Hermite_e 시리즈 미분하기

Hermite_e(에르미트_e) 시리즈를 미분하려면 Python의 numpy.polynomial.hermite_e.hermeder() 메서드를 사용합니다. 이 메서드는 다차원 계수 배열에서 원하는 축을 기준으로 미분을 수행할 수 있어, 여러 변수를 다루는 다항식 계산에 특히 유용합니다.

hermeder() 메서드의 주요 매개변수

  • c : Hermite_e 시리즈의 계수들을 담은 배열입니다. c가 다차원 배열인 경우 각 축이 서로 다른 변수에 대응하며, 각 축의 차수는 해당 인덱스로 결정됩니다.
  • m : 수행할 미분 횟수입니다. 반드시 음수가 아니어야 하며, 기본값은 1입니다.
  • scl : 스칼라 값입니다. 매번 미분할 때마다 결과에 scl이 곱해지며, 최종 결과에는 scl**m이 곱해집니다. 이는 변수의 선형 변환(linear change of variable)을 처리할 때 사용됩니다. 기본값은 1입니다.
  • axis : 미분이 수행될 축입니다. 기본값은 0이며, 이 예제에서는 축 1을 지정하여 두 번째 축 방향으로 미분합니다.

단계별 진행 과정

1단계: 필요한 라이브러리 임포트

import numpy as np
from numpy.polynomial import hermite_e as H

2단계: 다차원 계수 배열 생성

c = np.arange(4).reshape(2,2)

3단계: 배열 정보 확인

생성한 배열과 그 속성(차원, 데이터 타입, 형태)을 출력하여 확인합니다.

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)

4단계: hermeder()로 미분 수행

axis=1을 지정하여 축 1 방향으로 Hermite_e 시리즈를 미분합니다.

print("\nResult...\n",H.hermeder(c, axis = 1))

전체 예제 코드

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)

# 형태 확인
print("\nShape of our Array object...\n",c.shape)

# hermeder() 메서드로 축 1 방향 미분 수행
print("\nResult...\n",H.hermeder(c, axis = 1))

실행 결과

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.]
[3.]]

결과 해석

원래 배열 [[0, 1], [2, 3]]에서 축 1(열 방향)을 따라 미분하면 [[1.], [3.]]이 출력됩니다. Hermite_e 시리즈에서 He₁(x) = x이므로, 계수 1을 미분하면 상수 1이 되고, 계수 3 역시 상수 3이 됩니다. 미분 후 열 개수가 하나 줄어든 것도 확인할 수 있으며, 결과가 실수형(float)으로 반환되는 점에 유의하세요.