Метод Гаусса — Йордана
Метод Гаусса — Йордана використовується для розв'язання систем лінійних алгебраїчних рівнянь, знаходження оберненої матриці, знаходження координат вектора у заданому базисі, відшукання рангу матриці. Метод є модифікацією методу Гаусса. Названий на честь Карла Фрідріха Гаусса та німецького математика та геодезиста Вільгельма Йордана.
Алгоритм
- Обирається перша зліва колонка, що містить хоч одне ненульове значення.
- Якщо верхнє число у цій колонці — нуль, то обмінюється увесь перший рядок матриці з іншим рядком матриці, де у цій колонці нема нуля.
- Усі елементи першого рядка діляться на верхній елемент обраної колонки.
- Від рядків, що залишились, віднімається перший рядок, помножений на перший елемент відповідного рядка, з метою отримання нуля в першому елементі кожного рядка (крім першого).
- Далі, повторюємо ці операції із матрицею, отриманою з початкової матриці після викреслювання першого рядка та першого стовпчика.
- Після повторення операцій n − 1 разів отримаємо верхню трикутну матрицю.
- Віднімаємо від передостаннього рядка останній рядок, помножений на відповідний коефіцієнт, щоб у передостанньому рядку залишилась лише 1 на головній діагоналі.
- Повторюємо попередній крок для наступних рядків. У результаті отримуємо одиничну матрицю і рішення на місці вільного вектора (над ним необхідно виконувати ті самі перетворення).
Розгорнутий алгоритм для знаходження оберненої матриці
Нехай дано:
Прямий хід (алгоритм утворення нулів під головною діагоналлю)
- Поділимо перший рядок матриці А на отримаємо: , j — стовпець матриці А.
- Повторюємо дії для матриці I, за формулою: , s — стовпець матриці I.
Отримаємо:
- Будемо утворювати 0 у першому стовпці: .
- Повторюємо дії для матриці І, за формулами :
Отримаємо:
- Продовжуємо виконувати аналогічні операції використовуючи формули :
за умови, що
- Повторюємо дії для матриці І, за формулами :
за умови, що .
Отримаємо:
Зворотний хід (алгоритм утворення нулів над головною діагоналлю)
Використаємо формулу: , при умові, що .
Повторюємо дії для матриці І, за формулою , за умови, що .
Остаточно отримуємо:
Приклад
Розв'яжемо систему рівнянь:
Запишемо її у вигляді матриці 3×4, де останній стовпчик є вільним членом:
Виконаємо такі дії:
- До рядка 2 додамо: -4 * рядок 1.
- До рядка 3 додамо: -9 * рядок 1.
Отримаємо:
- До рядка 3 додамо: -3 * рядок 2.
- Рядок 2 ділимо на -2
- До рядка 1 додамо: -1 * рядок 3.
- До рядка 2 додамо: -3/2 * рядок 3.
- До рядка 1 додамо: -1 * рядок 2.
У правому стовпчику отримаємо рішення:
- .
Джерела
- Шаблон:Гантмахер.Теорія матриць
- Шаблон:Гельфанд.Линейная алгебра
- Шаблон:Мальцев.Основы линейной алгебры
- Рокіцький І. О. Застосування лінійної алгебри // І. О. Рокіцький, О. Б. Панасенко. — Вінниця: Вид. Главацька Р. В., 2012. — С. 144
Посилання
- Lipschutz, Seymour, and Lipson, Mark. «Schaum's Outlines: Linear Algebra». Tata McGraw-hill edition. Delhi 2001. pp. 69-80.
- Algorithm for Gauss-Jordan elimination in Matlab
- Algorithm for Gauss-Jordan elimination in Python