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

Python NumPy로 Laguerre 다항식의 작은 후행 계수 제거하기

Laguerre 다항식에서 작은 후행 계수(small trailing coefficients)를 제거하려면 Python NumPy의 laguerre.lagtrim() 메서드를 사용하면 됩니다. 이 메서드는 후행에 있는 불필요한 계수가 제거된 1차원 배열을 반환하며, 만약 결과 시리즈가 완전히 비게 된다면 0 하나만 담긴 시리즈를 대신 반환합니다.

lagtrim() 메서드의 핵심 개념

여기서 "작다(small)"절댓값 기준으로 작다는 의미이며, 그 기준은 tol 매개변수로 조절할 수 있습니다. 그리고 "후행(trailing)"이란 최고 차수의 계수들을 가리킵니다. 예를 들어 [0, 1, 1, 0, 0]이라는 계수 배열은 0 + x + x² + 0·x³ + 0·x⁴를 나타내는데, 이 경우 3차와 4차 계수 두 개가 모두 잘려나갑니다(trimmed).

  • c: 낮은 차수부터 높은 차수 순으로 정렬된 계수들의 1차원 배열입니다.
  • tol: 절댓값이 이 값보다 작거나 같은 후행 요소들은 제거됩니다.

구현 단계

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

import numpy as np
from numpy.polynomial import laguerre as L

numpy.array() 메서드를 사용해 계수 배열을 생성합니다. 이것이 계수를 담고 있는 1차원 배열입니다 −

c = np.array([0,5,0, 0,9,0])

생성한 배열을 출력하여 확인합니다 −

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)

Laguerre 다항식에서 작은 후행 계수를 제거하려면 Python NumPy의 laguerre.lagtrim() 메서드를 적용합니다 −

print("\nResult...\n",L.lagtrim(c))

전체 예제 코드

import numpy as np
from numpy.polynomial import laguerre as L

# numpy.array() 메서드로 계수 배열 생성
# 이것이 계수를 담고 있는 1차원 배열입니다
c = np.array([0,5,0, 0,9,0])

# 배열 출력
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)

# laguerre.lagtrim() 메서드로 작은 후행 계수 제거
print("\nResult...\n",L.lagtrim(c))

실행 결과

Our Array...
    [0 5 0 0 9 0]

Dimensions of our Array...
1

Datatype of our Array object...
int64

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

Result...
    [0. 5. 0. 0. 9.]