SymPy를 이용하여 벡터 형태의 식을 계산하는 방법

SymPy는 파이썬으로 작성된 강력한 수학 라이브러리이며, 벡터 연산을 비롯한 다양한 수학적 계산을 지원합니다. 이번 글에서는 SymPy를 사용하여 벡터 형태의 식을 계산하는 방법에 대해 알아보겠습니다.

1. SymPy 기본 설정하기

벡터를 다루기 위해, SymPy에서 symbols 함수를 사용하여 심볼 변수를 정의해야 합니다. 각 축의 심볼 변수에 대해 x, y, z를 사용하는 경우를 예로 들어보겠습니다.

from sympy import symbols

x, y, z = symbols('x y z')

2. 벡터 생성하기

SymPy에서는 Matrix 클래스를 사용하여 벡터를 생성할 수 있습니다. 먼저, 위에서 정의한 심볼 변수를 사용하여 x, y, z 축에 대한 벡터를 생성해보겠습니다.

from sympy import Matrix

v = Matrix([x, y, z])

3. 벡터 연산하기

SymPy에서는 벡터 간의 덧셈, 뺄셈, 스칼라 곱, 벡터 곱 등 다양한 벡터 연산을 지원합니다.

3.1. 벡터 덧셈과 뺄셈

u = Matrix([1, 2, 3])
w = Matrix([4, 5, 6])

# 벡터 덧셈
u_plus_w = u + w

# 벡터 뺄셈
u_minus_w = u - w

3.2. 스칼라 곱

c = 2

# 스칼라 곱
c_times_u = c * u

3.3. 벡터 곱

# 벡터 곱
u_dot_w = u.dot(w)

4. 식 평가하기

SymPy에서 생성한 식을 평가하기 위해, subs 함수를 사용하여 심볼 변수에 값을 할당할 수 있습니다.

u = Matrix([1, 2, 3])
x = 2

# x에 값을 할당하여 u를 평가
u_evaluated = u.subs([(x, 2)])

위의 코드에서는 x에 2를 할당하여 u를 평가하였습니다. 이제 u_evaluated에는 [1, 4, 6]이 저장됩니다.

5. 결과 출력하기

SymPy에서 생성한 벡터는 pretty() 메서드를 통해 보기 쉬운 형태로 출력할 수 있습니다.

u = Matrix([1, 2, 3])

# 벡터 출력하기
print(u.pretty())

위의 코드는 벡터 u를 보기 쉬운 형태로 출력합니다.

마치며

이번 글에서는 SymPy를 사용하여 벡터 형태의 식을 계산하는 방법에 대해 알아보았습니다. SymPy는 다양한 수학 라이브러리와 함께 사용되어 복잡한 계산을 지원하고, 계산된 식을 보기 쉬운 형태로 출력할 수 있는 강력한 도구입니다. 더 많은 SymPy 기능과 예제 코드를 찾아보시기를 추천합니다.

#python #수학