[python] SymPy를 사용하여 수학 식 표현하기

수학적인 계산을 위해 Python을 사용하다보면, 수학식을 표현하고 다루는 필요성을 느낄 때가 있습니다. 이때 SymPy 라이브러리를 사용하면 손쉽게 수학식을 표현하고 다양한 계산을 수행할 수 있습니다.

SymPy란?

SymPy는 Python에서 사용할 수 있는 기호 연산 패키지입니다. 이 패키지는 다양한 수학적 계산을 지원하며, 대표적으로 심볼릭 연산(symbolic computation)을 제공합니다. 즉, 수학식을 기호로 표현해 계산할 수 있게 해줍니다.

수학식 표현하기

SymPy를 사용하여 수학식을 표현하려면, 먼저 Symbol 객체를 생성해야 합니다. Symbol 객체는 수식에 사용될 변수를 정의하는 역할을 합니다.

from sympy import Symbol

x = Symbol('x')
y = Symbol('y')

위의 코드에서 xySymbol 객체로 생성된 변수입니다. 이제 이 변수들을 사용하여 수학식을 표현할 수 있습니다.

from sympy import symbols

x, y = symbols('x y')

expr = x**2 + 2*y

위의 코드에서 x**2 + 2*yx의 제곱에 y의 두 배를 더한 수학식입니다. 이렇게 표현된 수학식은 계산을 위해 기호로 유지됩니다.

수식 계산하기

SymPy를 사용하여 표현된 수식을 계산할 수 있습니다. 예를 들어, 위에서 정의한 expr 수식을 x=3, y=5에 대해 계산해 보겠습니다.

result = expr.subs([(x, 3), (y, 5)])
print(result)  # 출력: 37

위의 코드에서 subs 메소드를 사용하여 변수를 실제 값을 대입한 후, result 변수에 결과를 저장하고 출력합니다.

수식 단순화하기

SymPy를 사용하면 수식을 단순화할 수도 있습니다. 예를 들어, sqrt(8)을 단순화해 보겠습니다.

from sympy import sqrt, simplify

expr = sqrt(8)
simplified_expr = simplify(expr)
print(simplified_expr)  # 출력: 2*sqrt(2)

위의 코드에서 sqrt 함수를 사용하여 8의 제곱근을 계산하고, simplify 함수를 사용하여 단순화한 결과를 출력합니다.

결론

SymPy를 사용하면 Python에서 수학식을 표현하고 다양한 계산을 수행할 수 있습니다. 이를 활용하여 수학적인 문제를 해결하거나 수식을 단순화할 수 있습니다. SymPy에 대해 더 자세히 알고 싶다면 공식 SymPy 문서를 참고하시기 바랍니다.