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 | 수열의 곱 |
반응형