Python

SymPy

이런저런 IT 이야기 2023. 7. 24. 10:28
반응형

SymPy는 파이썬에서 사용되는 무료 오픈 소스 기호수학 라이브러리입니다. "Symbolic Python"의 약자로, 심볼릭 연산을 지원하는 강력한 도구로서 수학적인 기호들을 사용하여 수식, 방정식, 미적분, 대수적 연산 등을 처리할 수 있습니다.

SymPy는 숫자를 숫자 그대로 계산하는 수치 계산(Numerical Computing)과는 달리, 기호와 수식을 다루는 심볼릭 계산(Symbolic Computing)을 수행합니다. 이로써 SymPy는 정확한 수학적 연산을 지원하며, 정확한 기호 수학의 결과를 얻을 수 있습니다. 또한, 미분, 적분, 대수적 변환, 방정식의 해 구하기 등과 같은 수학적 작업을 자동으로 수행할 수 있습니다.

구분 속성 설명
real, imaginary is_real, is_imaginary 기호가 실수인지 허수인지 지정
positive, negative is_positivie, is_negative 기호가 양인지 음인지 지정
integer is_integer 기호는 정수 지정
odd, even is_odd, is_even 기호가 짝수인지 홀수인지 지정
prime is_prime 기호가 소수인지(따라서 정수) 지정
finite, infinite is_finite, is_infinite 기호가 유한인지 무한인지 지정
숫자 설명
sympy.Integer 정수
sympy.Float 실수
sympy.Rational 유리수
수학기호 SymPy 기호 설명
π simpy.pi 원주율
e simpy.E 자연 로그의 밑
γ simpy.EulerGamma 오일러 상수
simpy.I 허수
simpy.oo 무한대
함수 설명
sympy.simplify 주어진 식을 간단히 하기 위해 다양한 방법론과 접근법 사용
sympy.trigsimp 삼각함수를 사용해 수식 단순화 시도
sympy.powsimp 지수 법칙을 사용해 수식 단순화 시도
sympy.compsimp 조합을 이용해 단순화
sympy.ratsimp 공통 분모를 작성해 수식 단순화 시도
sympy.transpose/T 전치 행렬 계산
sympy.adjoint/H
수반 행렬 계산
sympy.trace
행렬 대각 원소의 합 계산
sympy.det
행렬식 계산
sympy.inv 
역행렬 계산
sympy.LUdecomposition
행렬의 LU 분해 계산
sympy.LUsolve
미지의 백터 x의  LU분해를 이용해 Mx = b 형태의 연립 선형 방정식을 해결
sympy.QRdecomposition
행렬의 QR분해 계산
sympy.QRsolve
미지의 벡터 x의 QR분해를 이용해 Mx = b 형태의 연립 선형 방정식을 해결
sympy.diagonalize
D가 대각일때 D = P^-1MP가 되도록 행렬 M을 대각화
sympy.norm 행렬의 norm계산
sympy.nullspace 행렬의 null space(영 공간)을 구성하는 벡터 집합을 계산
sympy.rank
행렬의 rank 계산
sympy.singular_values
행렬의 특이점 계산
sympy.solve
Mx=b형태의 연립 선행 방정식 해결
sympy.Sum 수열의 합
sympy.Product 수열의 곱

 

반응형