- •Численные методы
- •Содержание
- •Введение
- •1. Вычисление определенных интегралов Справочная информация
- •Формула средних прямоугольников
- •Формула трапеций
- •Формула Симпсона (j.Gregory(Грегори)1668,Th.Simpson1743)
- •Пример решения в среде Matlab
- •Контрольные задания
- •2. Решение нелинейных уравнений Справочная информация
- •Метод простых итераций Метод основывается на приведении исходного уравнения к форме
- •Относительная разница между значениями приближения корня на третьей и четвёртой итерациях составляет
- •Метод хорд
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •3. Решение систем линейных алгебраических уравнений Справочная информация
- •Метод Гаусса с выбором главного элемента
- •Метод простых итераций
- •О выборе метода решения систем уравнений
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •4. Интерполяция таблично заданных функций Справочная информация
- •Кусочно-линейная интерполяция
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •5. Аппроксимация таблично заданных функций Справочная информация
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •6. Решение задачи коши для обыкновенных дифференциальных уравнений 1-го порядка Справочная информация
- •Усовершенствованный метод Эйлера
- •Оценка погрешностей методов
- •Программное обеспечение
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •7. Решение задачи коши для нормальных систем обыкновенных дифференциальных уравнений и уравнений высших порядков Справочная информация
- •Метод Эйлера
- •Усовершенствованный метод Эйлера
- •Оценка погрешностей методов
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •Приложение. Основы работы в среде matlab Интерфейс среды
- •Переменные и константы
- •Арифметические операторы
- •Операторы отношения
- •Логические операторы
- •Элементарные функции
- •Простейшие способы ввода–вывода информации
- •Векторы и матрицы
- •Оператор двоеточие «:»
- •Оператор разветвления if
- •Операторы циклов
- •Вывод информации в файл
- •Форматный вывод информации
- •Ввод данных из файла
- •Построение графиков
- •Сообщения об ошибках и исправление ошибок
- •Список литературы
Метод простых итераций
Метод основывается на приведении исходной системы к форме , где D – квадратная матрица, полученная из матрицы A, а p – вектор-столбец, полученный из b. Это преобразование может быть выполнено многими способами. Например, путем разрешения каждого i-го уравнения относительно i-го неизвестного:
при этом элементы матрицы D и вектора p
будут вычисляться следующим образом
.
Далее процесс уточнения корня строится по итерационной схеме
,
,
………………
,
……………….
где x0 – начальное приближение вектора решения системы. То есть
и так далее.
Если последовательность векторов xk (k = 0,1,2,...) имеет конечный предел (тоже вектор), то итерационный процесс сходится к точному решению системы xт за бесконечно большое число шагов. Абсолютная и относительная погрешности найденного вектора решения системы уравнений на k-ом шаге (xk) могут быть получены из выражений
, ,
где в качестве нормы матрицы Dможно использовать любое из трёх соотношений, согласованное с применяемым выражением для вычисления нормы вектора
, ,.
Кроме приведённого выражения для абсолютной погрешности существуют другие формы её записи
, .
Формулы для вычисления погрешности вектора решения системы линейных алгебраических уравнений требуют нахождения нормы матрицы системы, поэтому на практике часто итерации завершают при выполнении одного из условий
или ,
где δабс и δотн – задаваемые абсолютная и относительная разницы между соседними приближениями вектора решения, соответственно. В этом случае надо помнить, что истинная погрешность определения решения может заметно отличаться от δабс или δотн. Поэтому после завершения поиска решения необходимо вычислить истинное значение его погрешности по приведённым выше формулам для εабс или εотн.
Встречаются ситуации, когда последовательность вычисляемых векторов xk (k = 0,1,2,...) не имеет предела. В этом случае метод расходится, и описанная итерационная схема не может быть применена для решения системы уравнений. Для того, чтобы последовательность векторов xk (k = 0,1,2,...) при любом начальном векторе x0 сходилась к точному решению системы, надо выбирать матрицу D так, чтобы её норма была меньше единицы.
Если описанный выше приём формирования итерационной схемы не позволяет получить матрицу D, которая подчиняется условию сходимости, а матрица А – симметрична и положительно определена, то можно поступить следующим образом. Исходная система линейных алгебраических уравнений
приводится к эквивалентному виду
путем переноса произведения Ax в правую часть уравнения, умножения обеих частей уравнения на константу и добавления к ним вектора x. В результате этого преобразования получается итерационная схема
,
где
.
Здесь под матрицей E понимается единичная матрица, а один из способов выбора параметра λk заключается в использовании выражения
,
где
, ,.
Подбирая таким способом коэффициент λk на каждом шаге процесса итераций, удаётся получить матрицы Dk, подчиняющиеся условию сходимости. Описанный приём называется методом простых итераций с релаксацией.
Если система уравнений
имеет матрицу A, которая не является симметричной и положительно определённой, то надо произвести её симметризацию. Она заключается в умножении левой и правой частей системы на транспонированную матрицу AТ
,
что приводит исходную систему к системе
,
где
,
в которой матрица H симметрична и положительна определена.
Метод Зейделя (L.Seidel, 1874)
Этот метод является разновидностью метода простых итераций. Исходная система приводится к такому же виду, как и в методе простых итераций, но процесс итераций организуется иным образом. Как только на k-ой итерации вычислена i-я компонента вектора xk, её значение используют для вычисления последующих компонент , ,..., этого вектора, не дожидаясь начала следующей итерации. Например
Вопрос о сходимости метода Зейделя, в общем виде, является открытым. Однако известно, что выполнение условия сходимости метода простых итераций гарантирует сходимость метода Зейделя. При этом благодаря особенности итерационной схемы, метод Зейделя позволяет за то же количество шагов, что и метод простых итераций, получить более точный результат.
Если при решении системы уравнений методом Зейделя итерационный процесс расходится, то могут использоваться описанные выше приёмы релаксации и симметризации системы уравнений.
В качестве примера применения метода Зейделя можно рассмотреть задачу поиска решения следующей системы уравнений
с относительной разницей между соседними приближениями вектора решения не более 0.01 и с оценкой его погрешности.
Следуя алгоритму метода Зейделя, требуется преобразовать исходную систему уравнений к виду
где
,
и выполнить её проверку на сходимость
Так как условие сходимости выполняется, то итерационный процесс может быть начат с любого удобного значения вектора x. В качестве начального приближения обычно принимается нулевой вектор
Первая итерация
Вторая итерация
Третья итерация
Четвёртая и пятая итерации дают соответственно
,
.
Определение погрешности решения по последней итерации
,
.