logo

행 계층 형태

행렬이 다음과 같은 속성을 갖는 경우 행렬은 행 사다리꼴 형식입니다.

  • 완전히 0으로 구성된 행은 행렬의 맨 아래에 나타납니다.
  • 완전히 0을 포함하지 않는 각 행의 경우 0이 아닌 첫 번째 항목은 1입니다(선행 1이라고 함).
  • 두 개의 연속된(0이 아닌) 행의 경우 위쪽 행의 선행 1이 아래쪽 행의 선행 1보다 더 왼쪽에 있습니다.

기약행 사다리꼴 형식의 경우 모든 행의 선행 1은 해당 열의 아래와 위에 0을 포함합니다.



다음은 행-에셜론 형식의 예입니다.

egin{bmatrix} 1 & 2 & -1 & 4  0 & 1 & 0 & 3  0 & 0 & 1 & 2 end{bmatrix}

특수문자다

축소된 행 사다리꼴 형태:



egin{bmatrix} 0 & 1 & 0 & 5  0 & 0 & 1 & 3  0 & 0 & 0 & 0 end{bmatrix}

모든 행렬은 가우스 제거라는 기술을 사용하여 기약행 사다리꼴 형태로 변환될 수 있습니다. 이는 선형 방정식 시스템을 푸는 데 특히 유용합니다.

가우스 소거

가우스 소거(Gaussian Elimination)는 행렬을 기약행 사다리꼴 형태로 변환하는 방법입니다. 또한 선형 방정식 시스템의 해에 대한 해를 찾는 방법으로도 사용할 수 있습니다. 이에 대한 아이디어는 행에 대해 몇 가지 수학적 연산을 수행하고 변수가 하나만 남을 때까지 계속한다는 것입니다.



다음은 우리가 수행할 수 있는 몇 가지 작업입니다.

끈으로 길게
  • 두 행을 교환합니다.
  • 두 행을 함께 추가합니다.
  • 한 행에 0이 아닌 상수(예: 1/3, -1/5, 2)를 곱합니다.

다음과 같은 선형 방정식이 주어지면:

x - 2y + z = -1  2x + y - 3z = 8  4x - 7y + z = -2

그리고 위의 증가된 행렬

스크롤 휠이 작동하지 않습니다

egin{bmatrix} 1 & -2 & 1 & : & -1  2 & 1 & 3 & : & 8 4 & -7 & 1 & : & -2 end{bmatrix}

이제 이것을 행-에셜론 형태로 변환해야 합니다. 이를 행 사다리꼴 형태로 변환하려면 가우스 소거(Gaussian Elimination)를 수행해야 합니다.

  • 먼저 2*r을 빼야 합니다.1r에서2그리고 4*r1r에서r의 첫 번째 자리에 0을 얻으려면2그리고 아르 자형.

egin{bmatrix} 1 & -2 & 1 & : & -1  0 & 5 & -5 & : & 10 0 & 1 & -3 & : & 2 end{bmatrix}

  • 다음으로 r2와 r3 행을 교환한 후 5*r을 뺍니다.2r에서세 번째 행에서 두 번째 0을 얻으려면

egin{bmatrix} 1 & -2 & 1 & : & -1  0 & 1 & -3 & : & 2 0 & 0 & 10 & : & 0 end{bmatrix}

  • 이제 우리는 그 가치를 추론할 수 있습니다. 와 함께 r에서삼,즉, 10z =0 ⇾ z=0입니다. z =0 값의 도움으로 이를 r2, y = 2에 넣을 수 있습니다. 마찬가지로 y와 z 값을 r에 넣을 수 있습니다.1그리고 우리는 x=3의 값을 얻습니다.

행렬의 순위

행렬의 순위는 행 사다리꼴 형태의 0이 아닌 행의 개수입니다. 순위를 찾으려면 다음 단계를 수행해야 합니다.

  • 주어진 행렬의 행-사다리체 형태 찾기
  • 0이 아닌 행의 수를 셉니다.

예제 행렬을 살펴보겠습니다.

영화배우 카잘

egin{bmatrix} 4 & 0 & 1 2 & 0 & 2 3 & 0 & 3 end{bmatrix}

이제 위의 행렬을 행 사다리꼴 형태로 줄입니다.

egin{bmatrix} 1 & 0 & frac{1}{4} 0 & 0 & 1 0 & 0 & 0 end{bmatrix}

여기서는 두 행에만 0이 아닌 요소가 포함되어 있습니다. 따라서 행렬의 순위는 2입니다.

구현

  • 행렬을 축소된 행 사다리꼴 형태로 변환하려면 Python에서 Sympy 패키지를 사용했습니다. 먼저 이를 설치해야 합니다.

파이썬3

# install sympy> ! pip install sympy> # import sympy> import> sympy> # find the reduced row echelon form> sympy.Matrix([[>4>,>0>,>1>],[>2>,>0>,>2>],[>3>,>0>,>3>]]).rref()> # find the rank of matrix> print>('Rank of matrix :',sympy.Matrix([[>4>,>0>,>1>],[>2>,>0>,>2>],[>3>,>0>,>3>]]).rank())>
>
>

산출:

(Matrix([  [1, 0, 0],  [0, 0, 1],  [0, 0, 0]]), (0, 2))    Rank of matrix : 2>