Python에서 르장드르(Legendre) 급수를 미분하려면 numpy.polynomial.legendre.legder() 메서드를 사용합니다. 이 메서드는 르장드르 급수의 계수 배열 c를 지정한 축(axis)을 따라 m번 미분한 결과를 반환하며, 매 반복마다 결과에 스칼라 값 scl이 곱해집니다.
주요 매개변수
- c : 르장드르 급수의 계수 배열입니다. 다차원 배열인 경우 각 축은 서로 다른 변수에 대응하며, 각 축의 차수는 해당 인덱스로 결정됩니다.
- m : 미분을 수행할 횟수로, 반드시 0 이상이어야 합니다. (기본값: 1)
- scl : 스칼라 값으로, 매번 미분할 때마다 결과에 곱해집니다. 최종 결과에는 scl**m이 곱해지며, 변수의 선형 변환 시 활용됩니다. (기본값: 1)
- axis : 미분이 수행될 축입니다. (기본값: 0)
단계별 진행 과정
1. 필요한 라이브러리 임포트
import numpy as np from numpy.polynomial import legendre as L
2. 계수의 다차원 배열 생성
c = np.arange(4).reshape(2,2)
3. 배열 출력하기
print("Our Array...\n",c)4. 배열의 차원 확인
print("\nDimensions of our Array...\n",c.ndim)5. 데이터 타입 확인
print("\nDatatype of our Array object...\n",c.dtype)6. 배열의 형상(Shape) 확인
print("\nShape of our Array object...\n",c.shape)7. legder() 메서드로 축 1 방향 미분 수행
르장드르 급수를 미분하기 위해 legder() 메서드에 axis=1 옵션을 지정하여 호출합니다.
print("\nResult...\n",L.legder(c, axis = 1))전체 예제 코드
import numpy as np
from numpy.polynomial import legendre as L
# 계수의 다차원 배열 생성
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)
# legder() 메서드로 축 1 방향 르장드르 급수 미분
print("\nResult...\n",L.legder(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.]]위 실행 결과에서 볼 수 있듯이, 2×2 형태의 계수 배열을 축 1(열 방향)을 따라 한 번 미분하면 각 행의 두 번째 계수가 그대로 남고 첫 번째 계수는 상수항이 되어 사라지며, 결과적으로 [[1.], [3.]] 형태의 배열이 반환됩니다.