
- •Глава 4. Численные методы алгебры. Решение систем лИнейных уравнений
- •4.1. Линейные уравнения. Теоретическое и практическое решения линейных уравнений с одним неизвестным
- •4.2. Системы линейных уравнений. Основные понятия
- •4.3. Определители (детерминанты) квадратных матриц
- •Свойства определителей
- •Расчет определителей
- •4.4. Необходимо и достаточное условие существования решения системы линейных уравнений. Методы решения
- •4.5. Прямые методы решения систем линейных уравнений
- •1. Метод с использованием обратной матрицы.
- •[Править] Метод Гаусса—Жордана
- •[Править] с помощью матрицы алгебраических дополнений
- •[Править] Использование lu/lup-разложения
- •[Править] Примеры [править] Матрица 2х2
- •2.1. Погрешности вычислений на эвм
- •1. Метод Гаусса
- •Будем рассматривать столбцы матрицы X как векторы
- •6. Итерационные методы
4.5. Прямые методы решения систем линейных уравнений
Среди прямых методов решения, в которых решение системы выражено в формульном виде наиболее известными являются методы:
1) с помощью обратной матрицы,
2) метод Крамера.
1. Метод с использованием обратной матрицы.
Векторное решение системы линейных уравнений вида (4.12) имеет вид:
Х = A-1В (4.15)
где A-1 матрица, обратная к А, которая при умножении на нее дает в итоге единичную матрицу Е:
A-1 A = A A-1 = Е.
Таким образом, решение системы сводится к решению задачи обращения квадратной матрицы системы А.
Квадратная матрица А обратима тогда и только тогда, когда она невырожденная, то есть её определитель det(A) не равен нулю.
Если матрица обратима, то для нахождения обратной матрицы можно воспользоваться как прямыми , так и итерационными способами.
[Править] Метод Гаусса—Жордана
Возьмём две матрицы: саму A и единичную E. Приведём матрицу A к единичной матрице методом Гаусса—Жордана. После применения каждой операции к первой матрице применим ту же операцию ко второй. Когда приведение первой матрицы к единичному виду будет завершено, вторая матрица окажется равной A−1.
При использовании метода Гаусса первая матрица будет умножаться слева на одну из элементарных матриц Λi (трансвекцию или диагональную матрицу с единицами на главной диагонали, кроме одной позиции):
.
.
Вторая матрица после применения всех операций станет равна Λ, то есть будет искомой. Сложность алгоритма — O(n3).
[Править] с помощью матрицы алгебраических дополнений
CT — транспонированная матрица алгебраических дополнений;
Полученная матрица A−1 и будет обратной. Сложность алгоритма зависит от сложности алгоритма расчета определителя Odet и равна O(n²)·Odet.
Иначе говоря, обратная матрица равна единице, делённой на определитель исходной матрицы и умноженной на транспонированную матрицу алгебраических дополнений элементов исходной матрицы.
[Править] Использование lu/lup-разложения
Матричное
уравнение AX
= In
для обратной матрицы X
можно рассматривать как совокупность
n
систем вида Ax
= b.
Обозначим i-ый
столбец матрицы X
через Xi;
тогда AXi
= ei,
,поскольку
i-м
столбцом матрицы In
является единичный вектор ei.
другими словами, нахождение обратной
матрицы сводится к решению n
уравнений с одной матрицей и разными
правыми частями. После выполнения
LUP-разложения
(время O(n³))
на решение каждого из n
уравнений нужно время O(n²),
так что и эта часть работы требует
времени O(n³)[1].
Если
матрица A
невырождена, то для неё можно рассчитать
LUP-разложение
PA
= LU.
Пусть PA
= B,
B
−
1
= D.
Тогда из свойств обратной матрицы можно
записать: D
= U
−
1L
−
1.
Если умножить это равенство на U
и L
то можно получить два равенства вида
UD
= L
−
1
и DL
= U
−
1.
Первое из этих равенств представляет
собой систему из n²
линейных уравнений для
из
которых известны правые части (из свойств
треугольных матриц). Второе представляет
также систему из n²
линейных уравнений для
из
которых известны правые части (также
из свойств треугольных матриц). Вместе
они представляют собой систему из n²
равенств. С помощью этих равенств можно
реккурентно определить все n²
элементов матрицы D.
Тогда из равенства (PA)−1
= A−1P−1
= B−1
= D.
получаем равенство A
−
1
= DP.
В случае использования LU-разложения не требуется перестановки столбцов матрицы D но решение может разойтись даже если матрица A невырождена.
Сложность алгоритма — O(n³).
[править] Итерационные методы
[править] Методы Шульца
[править] Оценка погрешности
[править] Выбор начального приближения
Проблема
выбора начального приближения
в
рассматриваемых здесь процессах
итерационного обращения матриц не
позволяет относиться к ним как к
самостоятельным универсальным методам,
конкурирующими с прямыми методами
обращения, основанными, например, на
LU-разложении
матриц. Имеются некоторые рекомендации
по выбору
,
обеспечивающие выполнение условия
(спектральный
радиус матрицы меньше единицы), являющегося
необходимым и достаточным для сходимости
процесса. Однако при этом, во-первых,
требуется знать сверху оценку спектра
обращаемой матрицы A
либо матрицы
(а
именно, если A —
симметричная положительно определённая
матрица и
,
то можно взять
,
где
;
если же A —
произвольная невырожденная матрица и
,
то полагают
,
где также
;
можно конечно упростить ситуацию и,
воспользовавшись тем, что
,
положить
).
Во-вторых, при таком задании начальной
матрицы нет гарантии, что
будет
малой (возможно, даже окажется
),
и высокий порядок скорости сходимости
обнаружится далеко не сразу.