[MATLAB] 연립방정식 해 구하기, mldivide 함수

단 두 개의 미지수를 갖고 있는 두 개의 선형방정식의 해를 구하는 것은 그다지 어렵지 않습니다.

예를 들어,

 

x + y = 1
2x -y = 2

 

의 해를 구하면 x = 1, y = 0임을 쉽게 구할 수 있습니다.

그런데 만약에 미지수가 4개가 된다고 생각해봅시다. 

x + 2y + 3z + 4t = 5
2x - 3y + 4z - 5t = 6
4x - 2y - 3z + 7t = 3
-3x - 3y + 8z - 3t = -2

물론 손으로 풀 수 있겠지만 꽤 복잡한 과정이 될 것입니다. 이럴 때 바로 mldivide (\) 함수를 활용하면 아주 손쉽게 해를 구할 수 있습니다! 

일단 방정식의 왼편에 있는 모든 계수들로 하나의 행렬 A을 만들어줍니다. 그리고 오른편에 있는 수들로 하나의 행렬 b을 만들어줍니다. 그리고 x = A\b 이렇게 간단한 코드만 입력해주면 우리가 원하는 해를 바로 딱 출력해줍니다. 


해가 x = 2.1063, y = 0.7851, z = 0.748, t = -0.2302로 나왔는데 이걸 손으로 풀려고 했으면 풀다가 포기했을지도...ㅜ
아까 위에 간단한 예도 이 함수로 풀리는 지 확인해볼까요?


아까 저희가 구한 것처럼 x = 1, y = 0이 출력된 것을 확인할 수 있습니다.

먄약에 미지수가 100개, 방정식이 100개가 있었다고 생각해보시면... 이 함수에게 고마워하실 수 밖에 없겠죠?? ㅎㅎ

댓글()