- •Министерство образования и науки Российской Федерации
- •Оглавление
- •Лекция № 1
- •1. Особенности математических вычислений, реализуемых на эвм: теоретические основы численных методов: погрешности вычислений
- •1.1. Дискретизация
- •1.3. Погрешность
- •1.4. Устойчивость и сложность алгоритма (по памяти, по времени)
- •2.1. Основные понятия линейной алгебры. Классификация методов решения
- •2.2. Метод исключения Гаусса. Вычисление определителя и обратной матрицы методом исключения
- •2.3. Численные методы решения линейных уравнений
- •2.3.1. Метод прогонки
- •2.3.2. Итерационные методы
- •3.1. Решение нелинейных уравнений
- •3.1.1. Метод половинного деления
- •3.1.2. Метод простой итерации
- •3.1.3. Метод Ньютона
- •3.1.4. Метод секущих
- •3.1.5. Метод парабол
- •3.2. Методы решения нелинейных систем уравнений
- •4.1.Функция и способы ее задания
- •4.2 Основные понятия теории приближения функций
- •4.3 Интерполяция функций
- •4.3.1 Интерполирование с помощью многочленов
- •4.3.2 Погрешность интерполяционных методов
- •4.3.3 Интерполяционный многочлен Лагранжа
- •4.3.4 Конечные разности
- •4.3.5 Интерполяционные многочлены Стирлинга и Бесселя
- •4.3.6 Интерполяционные многочлены Ньютона
- •4.3.7 Разделенные разности
- •4.3.8 Интерполяционный многочлен Ньютона для произвольной сетки узлов
- •4.3.9 Итерационно-интерполяционный метод Эйткина
- •4.3.10 Интерполирование с кратными узлами
- •4.4 Равномерное приближение функций. Приближение методом наименьших квадратов
- •5.1. Численное дифференцирование
- •5.2. Формулы численного интегрирования
- •5.3. Решение обыкновенных дифференциальных уравнений. Метод конечных разностей для численного решения дифференциальных уравнений
- •Интегрирование дифференциальных уравнений с помощью степенных рядов
- •5.4. Преобразование Фурье
- •5.4.1 Применения преобразования Фурье
- •5.4.2 Разновидности преобразования Фурье Непрерывное преобразование Фурье
- •Ряды Фурье
- •Дискретное преобразование Фурье
- •Оконное преобразование Фурье
- •Другие варианты
- •5.4.3 Интерпретация в терминах времени и частоты
- •5.4.4 Таблица важных преобразований Фурье
- •Библиографический список
2.3. Численные методы решения линейных уравнений
2.3.1. Метод прогонки
Системы линейных уравнений с трехдиагональной матрицей коэффициентов при неизвестных являются наиболее важным и распространенным случаем систем специального вида. В таких системах отличны от нуля только элементы, лежащие на главной диагонали и на нижней и верхней диагоналях, прилегающих к ней. К системам с трехдиагональными матрицами приводят, например, задачи о сплайн-интерполяции, о решении разностными методами обыкновенных дифференциальных уравнений и уравнений в частных производных.
Метод прогонки принадлежит к числу прямых методов решения систем линейных уравнений и используется в тех случаях, в которых многие коэффициенты матрицы равны нулю. Это обстоятельство учтено при реализации метода прогонки, в котором исключаются преобразования с нулевыми элементами. В методе прогонки применительно к системе линейных уравнений, имеющих трехдиагональную матрицу, можно выделить следующие этапы.
• Приведение трехдиагональной матрицы к верхней треугольной (прямой ход), В случае трехдиагональной матрицы это означает приведение к двухдиагональной, т. е. приведение исходной системы к системе, содержащей по два неизвестных в каждом уравнении, кроме последнего, в котором содержится только одно неизвестное.
• Запись обратного
хода в виде
,
так как преобразованная матрица –
двухдиагональная.
•Вывод рекуррентного
соотношения для
и
через
и
и получение соотношения для
и
.
• Осуществление обратного хода метода прогонки и определение всех неизвестных.
Рассматриваемый метод прогонки представляет собой модификацию метода исключения Гаусса, использующую специальный регулярный вид матрицы системы. Запишем систему линейных алгебраических уравнений с трехдиагональной матрицей в виде
i
= 1,2,…, n,
(2.6)
Запись (2.6) представляет собой так называемый КАНОНИЧЕСКИЙ ВИД СИСТЕМЫ ЛИНЕЙНЫХ УРАВНЕНИЙ МЕТОДА ПРОГОНКИ. При этом матрица система (2.6) имеет вид

Прямой ход метода
прогонки сводится к исключению
неизвестного
в каждом уравнении системы. Получаемая
в результате прямого хода система
содержит в каждом уравнении только два
неизвестных
и
,
и матрица ее – верхняя треугольная с
двумя диагоналями. Запишемi-ю
строку
преобразованной двухдиагональной
матрицы в виде
(2.7)
Если система (2.6) приведена к виду (2.7), то обратный ход метода Гаусса очевиден. Однако использование общих алгоритмов прямого и обратного хода нецелесообразно. Построим эффективную вычислительную схему, которая и составляет суть метода прогонки. Для этого, уменьшив в (2.7) индекс на единицу, запишем
![]()
Подставляя
в систему (2.6), получим соотношение
![]()
из которого нетрудно получить
![]()
Сравнивая это соотношение с (2.7), можем записать рекуррентные соотношения
![]()
(2.8)
для вычисления так называемых ПРОГОНОЧНЫХ КОЭФФИЦИЕНТОВ.
Подчеркнем, что
последующие значения прогоночных
коэффициентов
вычисляются только по известным
коэффициентам системы (2.6) и известным
предыдущим значениям прогоночных
коэффициентов![]()
Для начала прямого
хода метода прогонки необходимо задать
начальные (стартовые) значения прогоночных
коэффициентов, например,
Отметим, что, вообще говоря, начальные
значения коэффициентов
в рассмотренной схеме вычислений не
требуются, так как значения коэффициентов
вычисляются
только через коэффициенты первого
уравнения системы (2.6): приi
= 1 из (2.6)
получаем соотношение
Сравнивая это выражение с (2.7) приi
=1, получаем
![]()
а значение
в обратном ходе вычисляем по соотношению
Использование
в качестве начальных значений целесообразно
по двум причинам: сохраняется однородность
вычислительного алгоритма для всехi
= 2, 3, …,n;
упрощается
обсуждение и доказательство условия
корректности и устойчивости метода
прогонки. Из того обстоятельства, что
коэффициенты
не зависят
от
(в соотношениях(2.8) приi
=1 коэффициенты
умножаются на
),
следует, что можно задать любые значения
для прогоночных коэффициентов
.
Далее будет ясно, почему удобно положить
Для начала обратного хода метода прогонки
необходимо для вычисления
задать значение
.
Так как
,
то из первого соотношения (2.8) вытекает,
что
и, следовательно, можно задать любое
значение для
Обычно полагают
,и тогда
![]()
Метод прогонки
устойчив, если
Метод прогонки корректен, если![]()
Отметим, что при
устойчивости метода прогонки ошибки
округления не возрастают, а подавляются.
Пусть
- вычисленные с погрешностями значения
решения. Пусть при этом коэффициенты
вычисляются точно. Тогда по (2.7)
![]()
или
![]()
Из этой формулы
при
следует,
что в данном случае погрешность не
возрастает.
Достаточным условием корректности метода прогонки и устойчивости его к погрешностям является условие преобладания диагональных коэффициентов:
i
= 1,2, …, n.
В самом деле, если
хотя бы для одного значения i
выполняется
строгое неравенство
,
то можно записать цепочку неравенств:
.
Было показано, что
можно положить
и тогда, во-первых, для всехi
выполняется
,
что обеспечивает затухание погрешности,
и, во-вторых, для всехi
выполняется условие
и, таким образом, не возникает ситуация
деления на нуль. Так как условие
является только достаточным, то
невыполнение его не означает нарушения
корректности и устойчивости.
Для реализации метода требуется примерно 8n операций, из которых 3n составляют операции типа умножения и 5n – операции типа сложения. При численном решении дифференциальных уравнений используются различные варианты метода прогонки: метод встречных прогонок, потоковая прогонка, матричная прогонка для систем векторных уравнений. Отметим, что
![]()
Метод прогонки
обобщается на случай, при котором в
системе (2.6)
-
квадратные матрицы размерности
,
а
-
векторы размерностиm.
Тогда соотношения (2.7) и (2.8) метода
прогонки, в которых все действия
совершаются уже над матрицами, а не над
скалярами, сохраняются, а
в (2.8) является соответствующей обратной
матрицей.
Условие устойчивости
матричной прогонки выглядит как
,
а условие корректности и устойчивости
имеет вид
.
Лекция № 5
