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

Python으로 다항식 적분하기: numpy.polynomial polyint() 메서드 완벽 가이드

Python에서 다항식을 적분하려면 numpy의 polynomial.polyint() 메서드를 사용하면 됩니다. 이 메서드는 다항식 계수 배열 c를 하한(lbnd)부터 시작해 지정된 축(axis)을 따라 m번 적분한 결과를 반환합니다.

적분은 매 반복마다 수행되며, 각 단계에서 결과에 스케일 팩터(scl)가 곱해지고 적분 상수 k가 더해집니다. 여기서 스케일 팩터는 변수의 선형 변환(linear change of variable)에 활용됩니다.

계수 배열의 표기 방식

매개변수 c는 각 축을 따라 낮은 차수에서 높은 차수 순으로 정렬된 계수 배열입니다. 예를 들어 [1, 2, 3]은 다항식 1 + 2*x + 3*x**2를 나타냅니다. 2차원 배열의 경우, axis=0이 x축이고 axis=1이 y축이라면 [[1,2],[1,2]]는 1 + 1*x + 2*y + 2*x*y를 의미합니다.

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

c : 다항식 계수로 구성된 1차원 배열이며, 낮은 차수에서 높은 차수 순으로 정렬됩니다.
m : 적분 횟수(차수)로, 반드시 양수여야 합니다. 기본값은 1입니다.
k : 적분 상수입니다. 첫 번째 적분값의 영점(zero)에서의 값이 목록의 첫 번째 항목, 두 번째 적분값의 영점에서의 값이 두 번째 항목이 되는 식으로 지정됩니다. k == [](기본값)이면 모든 상수가 0으로 설정됩니다. m == 1인 경우 목록 대신 단일 스칼라 값을 전달할 수 있습니다.
lbnd : 적분의 하한으로, 기본값은 0입니다.
scl : 각 적분 후 적분 상수가 더해지기 전에 결과에 곱해지는 스케일 팩터입니다. 기본값은 1입니다.
axis : 적분이 수행되는 축으로, 기본값은 0입니다.

단계별 실습

먼저 필요한 라이브러리를 가져옵니다 −

import numpy as np
from numpy.polynomial import polynomial as P

다항식 계수 배열을 생성합니다 −

c = np.array([1,2,3])

계수 배열을 화면에 출력합니다 −

print("Our coefficient Array...\n",c)

배열의 차원(Dimension)을 확인합니다 −

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)

Python에서 다항식을 적분하려면 polynomial.polyint() 메서드를 사용합니다 −

print("\nResult...\n",P.polyint(c))

전체 예제 코드

import numpy as np
from numpy.polynomial import polynomial as P

# 다항식 계수 배열 생성
c = np.array([1,2,3])

# 계수 배열 출력
print("Our coefficient 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)

# polyint() 메서드로 다항식 적분
print("\nResult...\n",P.polyint(c))

실행 결과

Our coefficient Array...
[1 2 3]

Dimensions of our Array...
1

Datatype of our Array object...
int64

Shape of our Array object...
(3,)

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

실행 결과를 보면 원래 3개의 계수([1, 2, 3])를 가진 다항식이 적분 후 4개의 계수([0., 1., 1., 1.])를 가진 것을 확인할 수 있습니다. 적분 상수가 기본적으로 0이므로 결과 배열의 첫 번째 요소가 0.이 되며, 이는 1 + x + x² 형태의 부정적분 결과를 의미합니다.