Метод Гауса — Жордана

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Метод Гауса — Йордана використовується для розв'язання систем лінійних алгебраїчних рівнянь, знаходження оберненої матриці, знаходження координат вектора у заданому базисі, відшукання рангу матриці. Метод є модифікацією методу Гауса. Названий на честь Гауса та німецького математика та геодезиста Вільгельма Йордана.

Алгоритм[ред.ред. код]

  1. Обирається перша зліва колонка, що містить хоч одне ненульове значення.
  2. Якщо верхнє число у цій колонці - нуль, то обмінюється увесь перший рядок матриці з іншим рядком матриці, де у цій колонці нема нуля.
  3. Усі елементи першого рядка діляться на верхній елемент обраної колонки.
  4. Від рядків, що залишились, віднімається перший рядок, помножений на перший елемент відповідного рядка, з метою отримання у якості першого елемента кожного рядка (крім першого) нуля.
  5. Далі, повторюємо ці операції із матрицею, отриманою з початкової матриці після викреслювання першого рядка та першого стовпчика.
  6. Після повторення операцій n-1 разів отримаємо верхню трикутну матрицю.
  7. Віднімаємо від передостаннього рядка останній рядок, помножений на відповідний коефіцієнт, щоб у передостанньому рядку залишилась лише 1 на головній діагоналі.
  8. Повторюємо попередній крок для наступних рядків. У результаті отримуємо одиничну матрицю і рішення на місці вільного вектора (над ним необхідно виконувати ті самі перетворення).

Розгорнутий алгоритм для знаходження оберненої матриці[ред.ред. код]

Нехай дано:
Дано 1.png


Прямий хід (алгоритм утворення нулів під головною діагоналлю) :[ред.ред. код]

  • Поділимо перший рядок матриці А на a_{11} отримаємо: Aряд1.PNG, j – стовпець матриці А.
  • Повторюємо дії для матриці I , за формулою: Iряд1.PNG, s – стовпець матриці I

Отримаємо:
Результ1из.PNG

  • Будемо утворювати 0 у першому стовбці : Аряд2-нбезз..PNG.
  • Повторюємо дії для матриці І, за формулами : Iряд2-н.PNG

Отримаємо:
Результ2из.PNG

  • Продовжуємо виконувати анологічні операції використовуючи формули :АрядК.PNG

при умові, що Аусл1.PNG

  • Повторюємо дії для матриці І, за формулами : ІрядК.PNG

при умові, що Условие2.PNG
Отримаємо :
Результ4.PNG

Зворотній хід (алгоритм утворення нулів над головною діагоналлю) :[ред.ред. код]

Використаємо формулу: АрядК-1.PNG, при умові, що Усл1.PNG
Повторюємо дії для матриці І, за формулою ІрядК-1.PNG: , при умові, що Іусл1.PNG

Остаточно отримуємо :
Результостат.PNG

Приклад[ред.ред. код]

Розв'яжемо систему рівнянь:

\left\{\begin{array}{ccccccl}
a &+& b &+& c &=& 0\\
4a &+& 2b &+& c &=& 1\\
9a &+& 3b &+& c &=& 3 \end{array}\right.

Запишемо її у вигляді матриці 3×4, де останній стовпчик є вільним членом:


  \begin{pmatrix}
    1 & 1 & 1 & | & 0 \\
    4 & 2 & 1 & | & 1 \\
    9 & 3 & 1 & | & 3
  \end{pmatrix}

Виконаємо такі дії:

  • До рядка 2 додамо: -4 * рядок 1.
  • До рядка 3 додамо: -9 * рядок 1.

Отримаємо:


  \begin{pmatrix}
    1 &\  1 &\  1 & | & 0 \\
    0 & -2 & -3 & | & 1 \\
    0 & -6 & -8 & | & 3
  \end{pmatrix}
  • До рядка 3 додамо: -3 * рядок 2.
  • Рядок 2 ділимо на -2

  \begin{pmatrix}
    1 &  1 &  1 & | &\ 0 \\
    0 & 1 & {3 \over 2} & | & -{1 \over 2} \\
    0 & 0 & 1 & | &\ 0
  \end{pmatrix}
  • До рядка 1 додамо: -1 * рядок 3.
  • До рядка 2 додамо: -3/2 * рядок 3.

  \begin{pmatrix}
    1 & 1 & 0 & | &\ 0 \\
    0 & 1 & 0 & | & -{1 \over 2} \\
    0 & 0 & 1 & | &\ 0
  \end{pmatrix}
  • До рядка 1 додамо: -1 * рядок 2.

  \begin{pmatrix}
    1 & 0 & 0 & | &\ {1 \over 2} \\
    0 & 1 & 0 & | & -{1 \over 2} \\
    0 & 0 & 1 & | &\ 0
  \end{pmatrix}

У правому стовпчику отримаємо рішення:

a = \frac{1}{2} \; ; \ b = -\frac{1}{2} \; ; \ c = 0 .


Джерела[ред.ред. код]

Посилання[ред.ред. код]