Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
49
Добавлен:
28.03.2015
Размер:
710.14 Кб
Скачать

Итерационные методы

Уточнение решения. Решения, получаемые с помо­щью прямых методов, обычно содержат погрешности, выз­ванные округлениями при выполнении операций над чис­лами с плавающей точкой на ЭВМ с ограниченным числом разрядов. В ряде случаев эти погрешности могут быть значительными, и необходимо найти способ их уменьше­ния. Рассмотрим здесь один из методов, позволяющий уточнить решение, полученное с помощью прямого метода.

Найдем решение системы линейных уравнений

(1)

Пусть с помощью некоторого прямого метода вычислены приближенные значения неизвестных . Подставляя это решение в левые части системы (1), получаем некоторые значения

, отличные от:

(2)

Введем обозначения: - погрешности значений неиз­вестных, - невязки, т. е.

,,(3).

Вычитая каждое уравнение системы (2) из соот­ветствующего уравнения системы (1), с учетом обозначений (3) получаем

(4)

Решая эту систему, находим значения погрешностей ,которые используем в качестве поправок к решению. Следующие приближения неизвестных имеют вид :

Таким же способом можно найти новые поправки к решениюи следующие приближения переменныхи т. д. Процесс продолжается до тех пор, пока все очередные значения погрешностей (поправок) не станут достаточно малыми.

Рассмотренный процесс уточнения решения прёдставляет фактически итерационный метод решения системы линейных уравнений. При этом заметим, что для нахож­дения очередного приближения, т. е. на каждой итера­ции, решаются системы уравнений вида ,(4) с одной и той же матрицей, являющейся матрицей исходной си­стемы (1); при разных правых частях. Это позволяет строить экономические алгоритмы. Например, при использовании метода Гаусса сокращается объем вычислений на этапе прямого хода.

Решение систем уравнений с помощью рассмотренного метода, а также при использовании других итерационных методов сводится к следующему. Вводятся исходные данные, например коэффициенты уравнений и допустимое значение погрешности. Необходимо также задать начальные приближения значений неизвестных. Они либо вводятся в ЭВМ, либо вычисляются каким-либо спо­собом (в частности, путем решения системы уравнений с помощью прямого метода). Затем организуется цикли­ческий вычислительный процесс, каждый цикл которого представляет собой одну итерацию. В результате каждой итерации получается новые значения неизвестных. При малом (с заданной допустимой погрешностью) измене­нии этих значений на двух последовательных итерациях процесс прекращается, и происходит вывод значений не­известных, полученных на последней итерации.

Заметим, что в этой схеме не предусмотрен случай отсутствия сходимости. Для предотвращения непроизводительных затрат машинного времени в алгоритм вводят счетчик числа итераций и при достижении им некоторого заданного значения счет прекращают.

Метод Гаусса — Зейделя.

Одним из самых распро­страненных итерационных методов, отличающийся про­стотой и легкостью программирования, является метод Гаусса Зейделя.

Проиллюстрируем сначала этот метод на примере ре­шения системы

(5)

Предположим, что диагональные элементы от­личны от нуля (в противном случае можно переставить уравнения). Выразим неизвестные соответ­ственно из первого, второго и третьего уравнений систе­мы (5):

(6)

(7)

(8)

Зададим некоторые начальные (нулевые) приближения значений неизвестных:,,.Подставляя эти значения в правую часть выражения (6), получаем новое (первое) приближение для :

.

Используя это значение для и приближениедля, находим из (7) первое приближение для:

.

И наконец, используя вычисленные значения ,, находим с помощью выражения (8) первое приближение для:

.

На этом заканчивается первая итерация решения системы (6-8). Используя теперь значения можно таким же способом провести вторую итерацию, в результате которой будут найдены вторые приближения к решению: ,, и т. д. Приближение с номеромможно представить в виде

,

,

.

Итерационный процесс продолжается до тех пор, пока значения не станут близкими с заданной погрешностью к значениям.

Итерационный процесс можно продолжать до получения малой разности между значениями неизвестных в двух последовательных итерациях.

Рассмотрим систему линейных уравнений снеизвестными. Запишем её в виде

,

Здесь также будем предполагать, что все диагональные элементы отличны от нуля. Тогда в соответствии с ме­тодом Гаусса — Зейделя -е приближение к решению можно представить в виде

,(9)

Итерационный процесс продолжается до тех пор, пока все значения не станут близкими. Близость этих значений можно характеризовать максимальной абсолютной величиной их разности. Тогда при заданной допустимой погрешностикритерий окончания ите­рационного процесса можно записать в виде

(10).

Это критерий по абсолютным отклонениям.

При выполнении условия (10) итерационный процесс Гаусса — Зейделя называется сходящимся. В этом случае максимальные разности между зна­чениями переменных в двух последовательных итерациях убывают, а сами эти значения стремятся к решению системы уравнений.

Для сходимости итерационного процесса достаточно, чтобы модули диагональных коэффициентов для каждого уравнения системы были не меньше сумм модулей всех остальных коэффициентов:

,(11)

При этом хотя бы для одного уравнения неравенство должно выполняться строго. Эти условия являются до­статочными для сходимости метода, но они не являются необходимыми, т. е. для некоторых систем итерации схо­дятся и при нарушении условий (11).

Блок-схема алгоритма решения системы линейных уравнений методом Гаусса — Зейделя. В качестве исходных данных вводятся коэффи­циенты и правые части уравнений системы, погреш­ность, допустимое число итераций, а также началь­ные приближения переменных(). Начальные приближения можно не вводить в ЭВМ, а полагать их равными некоторым значениям (например, нулю).

Обозначения: - порядковый номер итерации;- номер уравнения, а также переменного, которое вычисляется в данном цикле;- номер члена видав правой части соотношения (9). Итерации прекращаются либо после выполнения условия (10), либо при. В по­следнем случае итерации не сходятся, и послеитера­ций счет прекращается без выдачи результатов. Можно предусмотреть в этом случае также и вывод на печать некоторой поясняющей информации.

Соседние файлы в папке Лекции по Вычислительной математики