MATLAB의 선형 방정식 시스템
이 튜토리얼에서는 Matlab의 solve()
및 linsolve()
함수를 사용하여 선형 연립방정식을 푸는 방법에 대해 설명합니다.
MATLAB의 solve()
함수를 사용하여 선형 연립방정식 풀기
Matlab 내장 함수 solve()
를 사용하여 Matlab에서 선형 방정식 시스템을 풀 수 있습니다. 먼저 syms
변수를 사용하여 변수를 정의할 수 있습니다. 그런 다음 Matlab에서 방정식을 작성할 수 있습니다. 그런 다음 solve()
함수를 사용하여 방정식을 풀어야 합니다. 예를 들어 Matlab에서 몇 가지 방정식을 정의하고 solve()
함수를 사용하여 해를 구해 보겠습니다. 아래 코드를 참조하십시오.
syms x y z
eq1 = 2*x + y + 2*z == 1;
eq2 = 2*x + 5*y - z == 2;
eq3 = -3*x + 2*y + 6*z == 10;
matx = solve([eq1, eq2, eq3], [x, y, z]);
xValue = matx.x
yVlaue = matx.y
zValue = matx.z
출력:
xValue =
-82/93
yVlaue =
29/31
zValue =
85/93
보시다시피 방정식에는 3개의 변수가 있고 3개의 답이 있습니다. solve()
함수 대신 vapsolve()
함수를 사용하여 숫자로 답을 얻을 수도 있습니다. vpasolve()
함수를 사용하려면 위 코드에서 solve
함수 이름을 vpasolve
로 변경해야 합니다. 방정식이 행렬 형식인 경우 linsolve()
함수를 사용할 수 있습니다.
MATLAB의 linsolve()
함수를 사용하여 선형 연립방정식 풀기
함수 linsolve()
는 방정식 대신 행렬이 있는 경우 solve()
함수 대신 사용됩니다. equationsToMatrix()
함수를 사용하여 방정식을 행렬 형식으로 변환할 수도 있습니다. 예를 들어 Matlab에서 몇 가지 방정식을 정의하고 linsolve()
함수를 사용하여 해를 구해 보겠습니다. 아래 코드를 참조하십시오.
syms x y z
eq1 = 2*x + y + 2*z == 1;
eq2 = 2*x + 5*y - z == 2;
eq3 = -3*x + 2*y + 6*z == 10;
[matA,matB] = equationsToMatrix([eq1, eq2, eq3], [x, y, z])
matX = linsolve(matA,matB)
출력:
matA =
[ 2, 1, 2]
[ 2, 5, -1]
[ -3, 2, 6]
matB =
1
2
10
matX =
-82/93
29/31
85/93
solve()
및 linsolve()
함수는 기호 수학 도구 상자와 함께 제공되므로 이러한 함수를 사용하려면 도구 상자를 설치했는지 확인하십시오.