
- •Короткі теоретичні відомості
- •1. Метод вилучення Гаусса – схема єдиного ділення
- •2. Метод Гаусса з розкладанням матриці на множники
- •3. Матрична форма методу Гаусса з вибором головного елемента
- •4. Обчислення оберненої матриці методом Гаусса
- •5. Алгоритм lu-розкладання матриці
- •5. Метод квадратних коренів
4. Обчислення оберненої матриці методом Гаусса
Один з методів обчислення оберненої матриці базується на розв’язанні систем лінійних алгебраїчних рівнянь. Нехай задана деяка матриця А:
Необхідно
знайти матрицю
,
яка є оберненою до матриці А,
тобто мають місце рівності:
,
де Е –
одинична матриця. Нехай
.
Тоді можемо записати матричну рівність
.
З
останньої рівності випливає, що для
знаходження оберненої матриці потрібно
розв’язати n
систем рівнянь вигляду
,
де
– відповідно j-й
стовпець матриці невідомих
і матриці правих частин
.
Приклад 3. Розв’язати систему рівнянь методом Гаусса з вибором головного елемента та знайти обернену матрицю до матриці коефіцієнтів
На лістингу 4 наведено процедуру GAUSS_PR_OB(A), яка реалізовує метод Гаусса з вибором головного елемента по рядках (прямий і обернений ходи). Справа від процедури наведено приклад розв’язання системи рівнянь за допомогою даної процедури. Для порівняння наведено результати, одержані за допомогою процедури lsolve(A,b) з пакету Mathcad.
На лістингу 5 наведено процедуру Ob_matr(A), яка реалізовує процедуру знаходження оберненої матриці за допомогою методу Гаусса .
Лістинг 4. Процедура методу Гаусса з вибором головного елемента
Лістинг 5. Процедура знаходження оберненої матриці методом Гаусса з вибором головного елемента
5. Алгоритм lu-розкладання матриці
Розв’язання системи лінійних алгебраїчних рівнянь за допомогою LU-розкладання матриці полягає в наступному. Нехай задана система
. (19)
Подамо матрицю А у вигляді добутку двох трикутних матриць L і U:
, (20)
де
елементи
і
обчислюються за формулами:
На основі множення матриць, з рівності (20) можна отримати наступні формули:
, (21)
. (22)
Оскільки
вибрані значення
,
то з виразу (21)
випливає:
звідки
.
Аналогічно з виразу (22) знаходимо:
звідки
,
.
Отже елементи нижньої L і верхньої U матриць обчислюються за формулами:
(23)
(24)
де
.
При внесені певних змін в алгоритм
(потрібно передбачити операцію
перестановки рядків) його можна
застосувати і у випадку
.
Формули (23) і (24) дають на LU-розкладання матриці А. Отже, якщо , то можна записати рівняння, еквівалентне (19):
,
(25)
Яке можна замінити двома матричними рівняннями вигляду
.
Таким чином, розв’язання системи з квадратною матрицею зводиться до розв’язання двох систем з трикутними матрицями коефіцієнтів:
(26)
і
(27)
Із
(26) і (27) зрозуміло, що всі
і
можуть бути обчислені за формулами:
(28)
. (29)
Приклад 4. Знайти складові LU-розкладання матриці коефіцієнтів системи, за допомогою яких розв’язати систему рівнянь
На лістингу 6 наведено результати LU-розкладання матриці системи на складові за допомогою процедури GAUSS_LU(A) та результати розв’язання системи за допомогою процедур PXGL(L,b) і OXGU(U,y). Проведено відповідні перевірки.
На лістингу 7 наведено названі процедури.
Лістинг 6. Результати LU-розкладання
Лістинг 7. Процедури LU-розкладання