Решение систем линейных алгебраических уравнений (СЛАУ)

Дана система линейных алгебраических уравнений

Ax = B

Необходимо найти из этого уравнения вектор х.

Методы решения СЛАУ делятся на прямые и итерационные.

Прямые методы дают точное решение за конечное число арифметических операций. Недостатком прямых методов является то, что на ЭВМ вычисления делаются с погрешностью, а это может привести к тому, что полученное решение будет неверным. При хорошо обусловленной матрице А прямые методы необходимо использовать при размерности матрицы А n <= 200.

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

Метод исключения Гаусса

Метод исключения Гаусса является прямым методом, суть которого основана к сведению исходной СЛАУ к СЛАУ с верхней треугольной матрицей.

На первом шаге комбинацией 1-й строки и i-й строки (i=2..n) обнуляется 1-й столбец матрицы, начиная со второго элемента. Для этого 1-я строка A и 1-й элемент B делятся на a11 и умножается на ai1 для соответственно i-й строки. Далее из получившейся 1-й строки вычитается i-я:

Решение систем линейных алгебраических уравнений (СЛАУ) - student2.ru

…………………………………

Решение систем линейных алгебраических уравнений (СЛАУ) - student2.ru

На втором шаге аналогичными преобразованиями обнуляется второй столбец матрицы А начиная с 3-го элемента. Аналогичные действия проводятся для всех столбцов до (n – 1)-го. В результате этих преобразований получается система с верхней треугольной матрицей:

Решение систем линейных алгебраических уравнений (СЛАУ) - student2.ru

Эта система решается с конца:

xn = dn / cnn

Подставная xn в предпоследнее уравнение легко найти xn–1 и т. д. до получения x1.

Метод Зейделя

Метод является итерационным. В качестве начального приближения задается вектор решения x0.

В основе метода Зейделя лежит последовательное вычисление x1, x2 и т. д. из соответственно 1-го, 2-го и т. д. уравнений системы.

Первый шаг итерации начинается тем, что из первого уравнения вычисляется x11:

Решение систем линейных алгебраических уравнений (СЛАУ) - student2.ru

Далее определяется погрешность E=|x11 – x10| и полагается x10 = x11.

Из второго уравнения аналогичным образом вычисляется x21:

Решение систем линейных алгебраических уравнений (СЛАУ) - student2.ru

По x21 и x20 определяется очередное значение погрешности E=max(E,|x21- x20|) и полагается x20 = x21. Процесс вычисления xj1 по аналогии с x21 продолжается до вычисления xN1. Первый шаг итерации заканчивается проверкой Е на допустимую погрешность. Ели Е больше допустимой погрешности, то выполняется очередной шаг итерации начиная с вычисления x11. Если Е окажется меньше допустимой погрешности, то итерационный процесс завершается с решением в векторе x0.

Метод простой итерации

Сутьметода основана на сведении исходного уравнения

Аx = В

к виду

x = x + u(Ax – B),

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

В качестве начального приближения в методе задается вектор x0. Затем вычисляется новое приближение вектора x

x1 = x0 + u(Ax0 – B)

и погрешность E= Решение систем линейных алгебраических уравнений (СЛАУ) - student2.ru . Если Е окажется меньше погрешности, то решение в x1. В противном случае полагается x0 = x1 и итерационный процесс продолжается с вычисления очередного x1.

Наши рекомендации