Формулы (3.36) являются расчетными формулами метода Зейделя.
Введем нижнюю и верхнюю треугольные матрицы:
0 0 0 … 0 0 b12 b13 … b1nb21 0 0 … 0 0 0 b23 … b2n
B1 = b31 b32 0 … 0 и B2 = 0 0 0 … b3n .
bn1 bn2 bn3 …0 0 0 0 … 0
Матричная запись расчетных формул (3.36) имеет вид:
xk+1= B1xk+1+ B2xk+ c. (3.37)
Так как B = B1+ B2, точное решение x* исходной системы удовлетворяет равенству:
x*= B1x*+ B2x*+ c. (3.38)
Сходимость метода Зейделя. Достаточным условием сходимости метода Зейделя является выполнение неравенства:
b = max |bij|,< 1, i, j = 1, 2, …, n. (3.39)
Неравенство (3.39) означает, что для сходимости метода Зейделя достаточно, чтобы максимальный по модулю элемент матрицы B был меньше единицы.
Если выполнено условие (3.39), то справедлива следующая апостериорная оценка погрешности:
max|x - x | £
max|x – x | i = 1, 2, …, n, (3.40)где b – максимальный элемент матрицы B, b2 – максимальный элемент матрицы B2.
Правую часть оценки (3.40) легко вычислить после нахождения очередного приближения.
Критерий окончания. Если требуется найти решение с точностью e, то в силу (3.37) итерационный процесс следует закончить как только на (k+1)-ом шаге выполнится неравенство:
max|x – x | < e, i = 1, 2, …, n. (3.41)Поэтому в качестве критерия окончания итерационного процесса можно использовать неравенство
max|x – x | < e1, i = 1, 2, …, n. (3.42)
где e1 = e.
Если выполняется условие b £ , то можно пользоваться более простым критерием окончания:
max|x – x | < e, i = 1, 2, …, n. (3.43)
Метод Зейделя как правило сходится быстрее, чем метод Якоби. Однако возможны ситуации, когда метод Якоби сходится, а метод Зейделя сходится медленнее или вообще расходится.
Пример 3.6.
Применим метод Зейделя для решения системы уравнений (3.33) из примера 3.5. Первые шаги полностью совпадают с процедурой решения по методу Якоби, а именно: система приводится к виду (3.34), затем в качестве начального приближения выбираются элементы столбца свободных членов (3.35). Проведем теперь итерации методом Зейделя.
При k = 1
x = – 0.0574x – 0.1005x – 0.0431x + 1.0383 = 0.7512
При вычислении x используем уже полученное значение x :
x = –0.0566 x – 0.0708x – 0.1179x + 1.2953 = 0.9674
При вычислении x используем уже полученные значения x и x :
x = –0.1061 x – 0.0758 x – 0.0657x + 1.4525 = 1.1977
При вычислении x
используем уже полученные значения x , x , x :x
= –0.0280 x – 0.0779 x – 0.0405x x + 1.5489 = 1.4037Аналогичным образом проведем вычисления при k = 2 и k = 3. Получим:
при k = 2
x = 0.8019, x = 0.9996, x = 1.9996, x = 1.4000.
при k = 3
x = 0.80006, x = 1.00002, x = 1.19999, x = 1.40000.
Известны точные значения переменных:
x1 = 0.8, x2 = 1.0, x3 = 1.2, x4 = 1.4.
Сравнение с примером 3.5 показывает, что метод Зейделя сходится быстрее и дает более точный результат.
Тема 4. Приближение функций
4.1 Постановка задачи
Задача приближения (аппроксимации) функций заключается в том, чтобы для данной функции построить другую, отличную от нее функцию, значения которой достаточно близки к значениям данной функции. Такая задача возникает на практике достаточно часто. Укажем наиболее типичные случаи.
1. Функция задана таблицей в конечном множестве точек, а вычисления нужно произвести в других точках.
2. Функция задана аналитически, но ее вычисление по формуле затруднительно.
При решении задачи поиска приближенной функции возникают следующие проблемы.
1. Необходимо выбрать вид приближенной функции. Для приближения широко используются многочлены, тригонометрические функции, показательные функции и т. д.
2. Необходимо выбрать критерий близости исходной и приближенной функции. Это может быть требование совпадения обеих функций в узловых точках (задача интерполяции), минимизация среднеквадратического уклонения (метод наименьших квадратов) и др.
3. Необходимо указать правило (алгоритм), позволяющее с заданной точностью найти приближение функции.
4.2 Приближение функции многочленами Тейлора
Пусть функция y = f(x) определена в окрестности точки a и имеет в этой окрестности n + 1 производную. Тогда в этой окрестности справедлива формула Тейлора:
f(x) = c0 + c1(x – a) + c2(x – a)2 + … + cn(x – a )n + Rn(x) = Tn(x) + Rn(x),
где
ck =
Tn(x) – многочлен Тейлора:
Tn(x)= c0 + c1(x – a) + c2(x – a)2 + … + cn(x – a )n, (4.1)
Rn(x) – остаточный член формулы Тейлора. Его можно записать различными способами, например, в форме Лагранжа: