§ 5.11. Итерационное уточнение
В большинстве случаев метод Гаусса с выбором главного элемента позволяет найти приближенное решение с довольно высокой точностью. Однако иногда возникает необходимость найти решение с большей точностью. Полезно знать, что существует метод, позволяющий найти приближенное решение с относительной точностью, сравнимой с ем, если только число обусловленности не слишком велико. Этот метод, называемый итерационным уточнением, требует небольшого (примерно на 25%) увеличения машинного времени по сравнению с затратами на получение решения методом Гаусса.
Пусть найденное на ЭВМ приближенное решение системы Напомним (см. § 5.1), что невязка и погрешность связаны равенством
Если бы удалось найти как точное решение системы (5.87), то вектор дал бы точное решение системы Однако в действительности вычисленное на ЭВМ значение неизбежно будет содержать ошибку. Тем не менее можно ожидать, что окажется лучшим приближением, чем Используя приближение, аналогичным образом можно найти приближение
Опишем более подробно очередной шаг метода.
1°. Вычисляют Исключительно важно, чтобы вычисление производилось с повышенной точностью. Дело в том, что и поэтому при вычислении невязки неизбежно вычитание близких чисел, а следовательно, потеря большого числа значащих цифр. Одна из возможностей состоит в использовании для вычисления арифметики удвоенной точности.
2°. Вычисляют решение системы Так как матрица А не меняется, то получение очередного приближения с использованием однажды вычисленного -разложения матрицы А (с учетом необходимых перестановок строк) требует сравнительно небольшого числа (примерно арифметических действий.
3°. Вычисляют
Если число обусловленности не очень велико (например, то метод довольно быстро сходится. Сходимость характеризуется постепенным установлением значащих цифр в приближениях Если же процесс расходится, то в приближениях не устанавливаются даже старшие значащие цифры.
Необходимо отметить одну интересную особенность. В процессе
итерационного уточнения невязки обычно не уменьшаются, а даже несколько возрастают по величине.
Кроме того, как оказывается, приближения могут быть использованы для грубого по порядку оценивания естественного числа обусловленности Для этого достаточно воспользоваться приближенной формулой
Пример 5.19. Используя алгоритм итерационного уточнения, найдем решение системы
на -разрядной десятичной ЭВМ, считая, что режим вычислений с удвоенной точностью на ней эквивалентен использованию -разрядной десятичной ЭВМ.
Вычислим множитель первого (и в данном случае последнего) шага прямого хода метода Гаусса: и 0.962. Так как при вычислении на -разрядной ЭВМ имеем , то второе уравнение системы (5.89) приводится к виду
Обратная подстановка дает, приближенное решение
Итерационное уточнение. 1-й шаг. Вычислим (с удвоенной точностью) компоненты невязки:
Вычисляя методом Гаусса решение системы
получим Завершается 1-й шаг вычислением приводящим на -разрядной ЭВМ к значениям
2-й шаг дает значения
3-й шаг дает значения
Сравнивая замечаем, что последние значащие цифры
практически установились и, следовательно, процесс следует завершить, приняв и 0.474.
Использование формулы (5.88) с дает следующую оценку естественного числа обусловленности:
Приведем для сравнения действительные значения решения и естественного числа обусловленности: , и (см. пример 5.5).