Главная > Математика > Численные методы
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

5. Прогонка.

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

На рис. 25 приведены структуры матриц, которые нередко встречаются в задачах физики и техники и допускают такое ускорение расчета; горизонтальными линиями изображены положения ненулевых элементов, окаймлены границы массивов нулевых и ненулевых элементов. К таким матрицам относятся ленточные ящичные (в), квазитреугольные (д), почти треугольные (е) и многие другие.

Можно показать, что при обходе нулевых элементов решение системы с почти треугольной матрицей требует всего действий, а с ленточной — даже , где — ширина ленты, т. е. выигрыш во времени счета очень велик.

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

Рис. 25.

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

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

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

Уменьшим в формуле (11) индекс на единицу и подставим в уравнение (10):

Выражая отсюда через , получим

Чтобы это выражение совпало с (11), надо, чтобы стоящие в его правой части дроби были равны соответственно Отсюда получим удобную запись формул прямого хода

Попутно можно найти определитель трехдиагональной матрицы

(13)

Вычисления по формулам прогонки требуют всего ячеек памяти и арифметических действий, т. е. они гораздо экономнее общих формул метода исключения.

В формулах прямого и обратного хода начало счета «замаскировано»: для начала (развязки) расчета формально требуется задать величины которые неизвестны. Однако перед этими величинами в формулах стоят множители или равные нулю. Это позволяет начать вычисления, полагая, например,

Покажем, что если выполнено условие преобладания диагональных элементов

(причем хотя бы для одного i имеет место неравенство), то в формулах прямого хода (12) не возникает деления на нуль, и тем самым исходная система (10) имеет единственное решение. Для этого предположим, что при некотором значении индекса. Тогда легко проверяется цепочка неравенств

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

Условие (14) является достаточным, но не необходимым условием устойчивости прогонки. Конечно, можно построить примеры неустойчивости при несоблюдении этого условия. Но в практических расчетах для хорошо обусловленных систем типа (10) прогонка часто оказывается достаточно устойчивой даже при нарушении условия преобладания диагональных элементов.

Заметим, что к линейным системам с трехдиагональной матрицей обычно приводят трехточечные разностные схемы для дифференциальных уравнений второго порядка (глава VIII, § 2).

<< Предыдущий параграф Следующий параграф >>
Оглавление