Метод Якоби относится к итерационным способам решения систем линейных алгебраических уравнений (СЛАУ).
Итерация — результат повторяющегося алгоритма, последовательно применяемого к каждому элементу множества, иными словами их обработка методом перебора.
Перед тем, как применить итерацию к системе Ax=b необходимо преобразовать ее к виду x=Bx+d. После этого следует выполнить начальное приближение к решению x(0)=(x01,x02...,x0m) и найти последовательность приближений к корню СЛАУ.
Для проверки итераций на сходимость достаточным является условие ‖В‖<1. Процесс итерации заканчивается в зависимости от выбранного метода, одним из которых и является метод Якоби.
Другими популярными методами итерации являются метод Зейделя и метод простой итерации.
Достоинством метода Якоби для приведения системы матрицы к виду, удобному для итерации является его простота. Сначала из каждого уравнения матрицы A следует выразить неизвестное (x1,x2...,xn). В итоге получается матрица B. На ее главной диагонали располагаются нулевые элементы. Остальные вычисляются по формуле:
bij=−aij/aii,i,j=1,2...,n
Компоненты (элементы) вектора d вычисляются по формуле:
di=bi/aii,i=1,2...,n
Формула для расчета по методу простой итерации:
x(n+1)=Bx(x)+d
Координатная (матричная) запись:
x(n+1)i=bi1xn1+bi2x(n)2+...+b
Критерий окончания итераций в методе Якоби:
‖x(n+1)−x(n)‖<ε1, где ε1=1−‖B‖‖B‖ε
Если B<1/2, можно использовать более простой критерий окончания:
‖x(n+1)−x(n)‖<ε
Решим методом Якоби следующую СЛАУ с показателем точности ε=10−3:
{10x1+x2−x3=11x1+10x2−x3=10−x1+x2+10x3=10
Прежде всего, следует привести систему уравнений к виду, удобному для итераций:
{x1=−0,1x2+0,1x3+1,1x2=−0,1x1+0,1x3+1x3=0,1x1−0,1x2+1
Начальное приближение (вектор правой части) выглядит так:
x(0)=(1,111)
Вычислим первую итерацию:
x(1)1=−0,1×1+0,1×1+1,1=1,1x(1)2=−0,1×1,1+0,1+1=0,99x(1)3=0,1×1,1−0,1×1+1=1,01
Приближения к решению вычислим аналогично:
x(2)=(1,1020,9911,011),x(3)=(1,1020,99091,0111),x(4)=(1,102020,990911,01111),
Выразим норму матрицы В исходя из сумм модулей элементов каждой строки:
‖B‖∞=0,2
Поскольку 0,2<1/2, можно применить простой критерий окончания итерации:
‖x(n+1)−x(n)‖<ε
Определим нормы разности векторов:
‖x(3)−x(2)‖∞=0,002,‖x(4)−x(3)‖∞=0,00002
Найдя, что ‖x(4)−x(3)‖∞<ε, мы можем сказать, что на 4-ой итерации достигнута заданная точность.
Ответ:
x1=1,102;x2=0,991;x3=1,101