Итерационные методы решения систем линейных алгебраических уравнений. Метод Якоби

Классические итерационные метода. Релаксация как методика уточнения решения. Прямые методы решения системы линейных алгебраических уравнений. Особенности итерационного метода Якоби, примеры его применения. Метод простых итераций, условия сходимости.

Рубрика Математика
Вид курсовая работа
Язык русский
Дата добавления 25.01.2017
Размер файла 164,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

15

Размещено на http://www.allbest.ru/

Тема: Итерационные методы решения систем линейных алгебраических уравнений. Метод Якоби

Содержание

  • Введение
  • 1. Классические итерационные методы
  • 1.1 Итерационные методы и релаксация
  • 1.2 Анализ существующих методов решения СЛАУ
  • 2. Итерационный метод Якоби решения систем линейных алгебраических уравнений
  • 2.1 Метод простых итераций Якоби
  • 2.2 Условия сходимости метода Якоби
  • 2.3 Пример применения метода Якоби
  • Заключение
  • Список использованой литературы

Введение

Решение систем линейных алгебраических уравнений (СЛАУ) является одной из основных задач линейной алгебры, которая имеет важное прикладное значение при решении научных и технических проблем, является вспомогательной при реализации многих алгоритмов вычислительной математики, математической физики, обработки результатов экспериментальных исследований. Необходимость в решении системы линейных алгебраических уравнений (СЛАУ) возникает при использовании широкого класса моделей и подходов, используемых при проектировании и разработке аппаратуры. Решение задач является одними из основных задач ЭМ теории и может быть получено с помощью интегральных уравнений, сводящихся методом моментов к СЛАУ с плотными матрицами.

Компьютерное моделирование позволяют существенно снизить затраты на тестирование аппаратуры, сделать эти процессы более рентабельными. При компьютерном моделировании основные вычислительные затраты состоят из затрат на формирование матрицы и затрат непосредственно на решение СЛАУ. В большинстве случаев затраты на решение СЛАУ намного превосходят затраты на заполнение матрицы, поэтому трудно переоценить роль, которую играет выбор эффективного способа решения СЛАУ. Разработка и исследование новых математических методов и подходов для решения таких СЛАУ актуальна.

Целью данной курсовой работы является описание использования методов, позволяющих решать системы линейных алгебраических уравнений вида

(1)

векторно-матричных уравнений

Ax = b, (2)

где b - вектор свободных членов, x - вектор неизвестных (вектор-решение) размерности N и A - N N матрица коэффициентов данной системы.

Эффективность способа решения системы (1) во многом зависит от структуры матрицы A: размера, обусловленности, симметричности, соотношения между числом ненулевых и нулевых элементов, специфики расположения ненулевых элементов в матрице и др. Все методы решения линейных алгебраических систем можно разбить на два класса: прямые и итерационные. Прямые методы приводят к решению за конечное число арифметических операций. Итерационными методами являются методы, в которых точное решение может быть получено лишь в результате бесконечного повторения единообразных действий. В курсовой работе большое внимание уделяется как раз итерационным методам.

якоби итерационный метод линейное уравнение

1. Классические итерационные методы

1.1 Итерационные методы и релаксация

Исторически первые итерационные методы основывались на циклическом покомпонентном изменении вектора решения, осуществляемом обнулением соответствующих коэффициентов вектора невязки. Подобная методика уточнения решения получила название релаксация.

В настоящее время такие методы в их классической формулировке практически не применяются, существуют определенные классы задач, для которых разработаны их модификации.

Прямые методы решения СЛАУ.

К прямым (или точным) методам решения СЛАУ относятся алгоритмы, которые позволяют получить точное решение системы за конечное число арифметических действий. Решение задач такими методами осуществляется поэтапно: на первом этапе систему преобразуют к тому или иному простому виду, на втором - решают упрощенную систему и получают значения неизвестных.

Запишем систему линейных алгебраических уравнений в развернутом виде:

где x1, x2,., xn - неизвестные величины, b1, b2,., bn - элементы правой части. Если определитель системы отличен от нуля, то она имеет единственное решение. Для удобства дальнейших преобразований обозначим элементы правой части аi (n+1) и запишем расширенную матрицу размерами n (n+1), которая содержит всю информацию о системе:

1.2 Анализ существующих методов решения СЛАУ

Наиболее известным способом решения линейных систем вида (1) является метод последовательного исключения неизвестных - метод Гаусса (GE).

Систему (1) приводят к треугольному виду последовательно, исключая x1 из второго, третьего, …, N-го уравнений, затем x2 из третьего, четвертого, …, N-го уравнений преобразованной системы, и т.д. На первом этапе заменяют второе, третье, …., N-е уравнение на уравнения, получающиеся сложением этих уравнений с первым, умноженным соответственно на . Продолжая этот процесс, на (N - 1) - м этапе прямого хода метода Гаусса данную систему (1) приводят к треугольному виду.

Треугольная структура системы позволяет последовательно одно за другим вычислять значения неизвестных, начиная с последнего. Этот процесс последовательного вычисления значений неизвестных называют обратным ходом метода Гаусса [1].

На каждом этапе прямого хода уравнения системы переставляют так, чтобы деление производилось на наибольший по модулю в данном столбце элемент. Числа, на которые производится деление в методе Гаусса, называются ведущими или главными элементами. Отсюда название рассматриваемой модификации метода, исключающей деление на нуль и уменьшающей вычислительные погрешности.

Упорядочивание по столбцам требует внесение в алгоритм следующих изменений: между строками 1 и 2 нужно сделать вставку (перед этим целесообразно произвести масштабирование системы, разделить все числа каждой строки на наибольшее число строки): найти m k такое, что; если amk=0, остановить работу алгоритма ("однозначного решения нет"), иначе поменять местами bk и bm, akj и amj при всех j = k, …, N.

LU-разложение матриц

Если все главные миноры квадратной матрицы A отличны от нуля, то существуют такие нижняя L и верхняя U треугольные матрицы, что A = LU. Если элементы диагонали одной из матриц L или U фиксированы (ненулевые), то такое разложение единственно.

Реализация LU-разложения с фиксированием диагонали верхней треугольной матрицы называется методом Краута. Рассмотрим разложение матриц при фиксировании диагонали нижней треугольной матрицы (lij = 1 при i = j) - метод Дулитла. Далее находят lij при i j (lij = 0 при i j) и uij при i j (uij = 0 при i j) такие, что

Выполнив перемножение матриц, на основе поэлементного приравнивания левых и правых частей приходим к N N матрице уравнений

относительно N N-матрицы неизвестных

u11, u12, …, u1N

l21, u22, …, u2N

……………….

lN1, lN2, …, uNN (3)

Все отличные от 0 и 1 элементы матриц L и U могут быть однозначно вычислены с помощью всего двух формул

(где i j), (4)

(i j). (5)

Для реализации LU-разложения по данным формулам существует большое количество различных методов, например, построчное вычисление, т.е. пока не вычислена i-ая строка матриц L и U, алгоритм не модернизирует i+1 строку.

Решение СЛАУ с помощью LU-разложения матриц

Если матрица A исходной системы (1) разложена в произведение треугольных матриц L и U, то вместо (2) можно записать эквивалентное уравнение

LUx=b.

Введя вектор вспомогательных переменных y, последнее выражение можно переписать в виде системы

Решение данной системы с квадратной матрицей коэффициентов свелось к последовательному решению двух систем с треугольными матрицами коэффициентов [1].

Все yi могут быть найдены из системы Ly=b при i=1, 2,…, N по формуле

( (6)

Значения неизвестных xi находятся из системы Ux=y в обратном порядке, т.е. при i=N, N-1,…, 1, по формуле (обратный ход)

(7)

Решение СЛАУ посредством LU-факторизации сводится к организации вычислений по четырем формулам: совокупности формул (4) - (5) для получения матрицы L+U-I (3) ненулевых и неединичных элементов матриц для L и U, формулы (6) для получения вектора свободных членов треугольной системы Ux=y и формулы (7), генерирующей решение исходной системы (1).

Решение линейных систем с помощью LU-разложения - это просто другая схема реализации метода Гаусса.

Подход, предложенный Жорданом, позволяет получить решения с помощью только прямого хода. При реализации этого метода элементы матрицы обнуляются как под, так и над главной диагональю. В результате данного подхода вектор-решение находится на месте вектора свободных членов, а на месте исходной матрицы находится единичная [2].

Рассмотрим данный метод без выбора ведущего элемента.

Пусть a11 ведущий элемент. На первом этапе первая строка подвергается нормировке ведущим элементом, а затем происходит обнуление поддиагональных элементов. В результате первого этапа получаем эквивалентную систему.

На втором этапе после нормировки второй строки на , аналогично методу Гаусса обнуляют поддиагональные элементы и наддиагональные. На месте исходной матрицы получим единичную, на месте вектора свободных членов вектор - решение.

Прямые методы приводят к точному решению СЛАУ при точном выполнении соответствующих арифметических операций (без округлений). Реальные вычисления базируются на арифметики усеченных до определенного количества разрядов, чисел. Как отражается на результатах решения системы подмена арифметики действительных чисел машинной арифметикой, зависит от самой решаемой системы, параметров компьютера, системы представления данных, способов реализации алгоритмов.

Вместо точного решения СЛАУ (1) прямой метод дает приближенное решение x0. Метод Гаусса порождает относительную ошибку решения порядка N2-lсondA, где l-число двоичных разрядов, выделяемых компьютером под мантиссу вещественного числа, а condA число обусловленности condA=||A||||A-1|||max|/|min|. Подставив x0 в выражение невязки полученного вектора-значения r0=b-Ax0, можно судить о близости найденного решения x0 к точному решению x. Если ||r0||2-недостаточно малая величина, то следует искать вектор-поправку p такой, что x0+p=x есть точное решение системы (1), т.е.

A (x0+p) =b,

которое равносильно векторно-матричному уравнению

Ap=r0.

Нахождение поправки сводится к решению такой же системы, как и (1), где в качестве вектора свободных членов взят вектор невязок. Делают не более двух-трех шагов уточнения, рекомендуется производить вычисление невязок в режиме накопления. Если в этом процессе не происходит сближения xk при k=2, 3, то данная система плохо обусловлена и ее решение не может быть найдено с требуемой точностью без привлечения дополнительной информации об исходной задаче.

Применяемые на практике численные методы решения СЛАУ делятся на две группы - прямые и итерационные.

В прямых или точных методах решение системы получают за конечное число арифметических действий. К ним относятся известное правило Крамера нахождения решения с помощью определителей, метод последовательного исключения неизвестных (метод Гаусса) и его модификации, метод прогонки и другие. Сопоставление различных прямых методов проводится обычно по числу арифметических действий, необходимых для получения решения.

Прямые методы являются универсальными и применяются для решения систем до порядка 103. Вследствие погрешностей округления при решении задач, прямые методы не приводят к точному решению системы.

Итерационные или приближенные методы являются бесконечными и находят решение системы как предел при k последовательных приближений x (k), где k - номер итерации. Число итераций n, которое необходимо провести для получения заданной точности, для многих методов можно найти из теоретических рассмотрений [2].

Метод оптимального исключения.

В целях экономии оперативной памяти (примерно в 4 раза) операции прямого и обратного хода метода Гаусса выполняются попеременно. На первом шаге после приведения первого уравнения исключается неизвестное x1 из второго уравнения, а затем с помощью приведенного второго уравнения - неизвестное x2 из первого. После (k-1) таких шагов матрица системы имеет вид

.

На k-м шаге, используя первые k уравнений, исключаем неизвестные x1,.,xk из (k+1) - го уравнения. Затем посредством этого уравнения исключается неизвестное xk+1 из первых k уравнений и т.д. В результате прямого хода матрица системы приводится к диагональному виду с единицами на главной диагонали. При этом отпадает необходимость обратного хода, поскольку столбец правой части приведенной матрицы является вектором решения.

Решение системы Ax=b сводится к последовательному решению двух систем - Ly=b и Ux=y. Рассмотренный метод можно применять к решению серии систем с одной и той же матрицей.

2. Итерационный метод Якоби решения систем линейных алгебраических уравнений

2.1 Метод простых итераций Якоби

Для решения итерационным методом система линейных алгебраических уравнений Ax = b должна быть приведена к виду x = Gx+f, где G - некоторая матрица, f - вектор свободных членов. Выбирается начальное приближение - произвольный вектор x (0) - и строится рекуррентная последовательность векторов x (1), x (2),., x (k),. по формуле

.

Для сходимости этой последовательности необходимо и достаточно, чтобы все собственные значения матрицы G были по абсолютной величине меньше единицы [4].

Это трудно проверить, поэтому пользуются достаточными условиями сходимости:

итерации сходятся, если какая-нибудь норма матрицы меньше единицы, т.е.

или

Чем меньше норма матрицы G, тем быстрее сходится итерационный процесс.

Преобразование системы можно осуществить, решая каждое i-е уравнение относительно xi:

.

Метод Якоби использует следующий алгоритм построения приближений:

.

Если A - матрица с доминирующей диагональю, т.е.

.

Метод Якоби сходится при любом начальном приближении x (0).

Метод Якоби относится к одношаговым итерационным методам. Для нахождения x (k+1) надо помнить только одну предыдущую итерацию x (k). Удобнее записывать итерационные методы не в координатной, а в матричной форме, придерживаясь стандартной формы записи итерационных методов [4].

Канонической формой одношагового итерационного метода решения СЛАУ называется его запись в виде

где

Bk+1 - матрица задает тот или иной итерационный метод,

k+1 - итерационный параметр.

2.2 Условия сходимости метода Якоби

Числовые параметры k вводят для ускорения сходимости. Способ выбора итерационных параметров определяется при исследовании сходимости метода, т.е. при каких значениях параметров метод сходится и когда сходимость будет наиболее быстрой, тогда соответствующие параметры будут оптимальными.

Итерационный метод называют явным, если Bk+1 - единичная матрица. Неявные итерационные методы применяют в том случае, когда решение системы уравнений с матрицей Bk требует меньше машинной памяти, времени, алгоритмически проще, чем решение исходной системы.

Методом простой итерации называют явный метод с постоянным параметром

,

,

где r (k) = Ax (k) - b - вектор невязки. Метод сходится для симметричных положительно определенных матриц

.

Для окончания итерационного процесса используют три способа.

При первом определяют величину стабилизации и прекращают вычисления, если она меньше , т.е.

.

Недостатком этого способа является то, что при медленно сходящихся итерациях величина стабилизации может быть малой, хотя приближенное решение отличается от точного.

При втором способе вычисляют нормы невязки до начала итераций и на каждой итерации. Итерации прекращают при выполнении неравенства

При третьем способе предварительно оценивается число итераций, необходимое для получения заданной точности [6].

Для погрешности итерационного метода выполняются оценки

,

где q (0,1). Метод сходится со скоростью геометрической прогрессии со знаменателем q. Можно определить, потребовав, чтобы qn < , число итераций n, достаточное для того, чтобы начальная погрешность уменьшилась в заданное число раз:

.

Целая часть числа n0 () является минимальным числом итераций, необходимым для получения заданной точности . Величина ln (1/q) является скоростью сходимости итерационного метода.

Для решения методом Зейделя система линейных алгебраических уравнений Ax = b должна быть приведена к виду x = Gx+f, где G - некоторая матрица, f - преобразованный вектор свободных членов. Затем выбирается начальное приближение - произвольный вектор x (0) - и строится рекуррентная последовательность векторов x (1), x (2),., x (k),. по формуле

.

Для сходимости этой последовательности при любом начальном приближении необходимо и достаточно, чтобы все собственные значения матрицы G были по абсолютной величине меньше единицы. На практике это трудно проверить, и обычно пользуются достаточными условиями сходимости - итерации сходятся, если какая-нибудь норма матрицы меньше единицы, т.е.

или .

Чем меньше норма матрицы G, тем быстрее сходится итерационный процесс.

Преобразование системы можно осуществить, просто решая каждое i-е уравнение относительно xi:

.

Метод Зейделя использует следующий алгоритм построения приближений:

Если A - матрица с доминирующей диагональю, т.е.

,

то метод Зейделя сходится при любом начальном приближении x (0) и

Метод Зейделя сходится примерно так же, как геометрическая прогрессия со знаменателем ||G||. Если норма матрицы G близка к 1, то скорость сходимости очень медленная. Для ускорения сходимости используется метод релаксации [7].

Если <1 - нижняя релаксация, если >1 - верхняя релаксация. Параметр подбирают, чтобы сходимость метода достигалась за минимальное число итераций.

Метод Зейделя является одношаговым итерационным методам, когда для нахождения x (k+1) требуется помнить только одну предыдущую итерацию x (k).

Погрешность итерации вычисляется по формуле:

n - порядок матрицы A.

Если меньше заданной точности , то итерационный процесс прекращают.

Элементы главной диагонали называются главными. Если в ходе расчётов по данному алгоритму на главной диагонали окажется нулевой элемент, то произойдет сбой программы. Чтобы избежать этого, необходимо сделать перестановку строк таким образом, чтобы на главной диагонали находились максимальные элементы строк, т.е. если в k-й строке максимальным является i-й элемент, то необходимо поменять местами k-ю и i-ю строки, поменять местами соответствующие элементы вектора b. Такой выбор главного элемента необходим для сходимости итерационного процесса.

2.3 Пример применения метода Якоби

Составляя задачи на языке программирования для реализации точных методов решения СЛАУ, учитывается разное количество уравнений в системе (размерность матрицы nxn). Для проверки результатов использовалась система уравнений:

Процесс Зейделя сходится быстрее, чем метод Якоби. Достаточные условия сходимости для метода Якоби достаточны и для сходимости метода Зейделя. Это видно по количеству итераций полученных в программе при приближенной точности =0,000001. Для метода Якоби они составляют 16, то для метода Зейделя они составляют 9.

Рассматривая метод верхней релаксации и сравнивая его с двумя другими методами видно, что в методе верхней релаксации количество итераций зависит от заданного числового параметра w. Задавая w=1, количество итераций равно 9, уменьшая значение параметра от 1 - количество итераций начинает расти, увеличивая параметр, количество итераций тоже начинает расти.

Таблица числа итераций (k) при разных значениях параметра w:

w

0.1

0.4

0.8

0.9

1

1.1

1.2

1.3

1.7

1.9

k

16

15

14

13

9

13

14

15

16

16

Итерационные методы сходятся быстрее, чем точные методы, о чем свидетельствуют как быстрое уменьшение невязок, так и уменьшение изменений неизвестных. Результаты расчета:

МЕТОД ЯКОБИ

МЕТОД ЗЕЙДЕЛЯ

МЕТОД ВЕРХНЕЙ РЕЛАКСАЦИИ

Промежуточная матрица:

0 - 0,100000001490 - 0,100000001490 0

0, 200000002980 0 - 0,100000001490 0

0, 200000002980 - 0, 200000002980 0 0

Корни СЛАУ равны:

x1 = 1

x2 = 1

x3 = 1,00000011920929

Количество итераций = 16

Промежуточная матрица:

0 - 0,100000001490 - 0,100000001490 0

0, 200000002980 0 - 0,100000001490 0

0, 200000002980 - 0, 200000002980 0 0

Корни СЛАУ равны:

x1 = 1

x2 = 0,99999988079071

x3 = 0,999999940395355

Количество итераций = 9

Промежуточная матрица:

0 - 0,100000001490 - 0,100000001490 0

0, 200000002980 0 - 0,100000001490 0

0, 200000002980 - 0, 200000002980

Корни СЛАУ равны:

x1 = 1,00000011920929

x2 = 0,99999988079071

x3 = 0,999999940395355

w=1

Количество итераций = 9

Заключение

В данной курсовой работе была дана характеристика способа построения итерационного метода Якоби решения системы линейных алгебраических уравнений, в основе которого лежит итерационный цикл, реализованный как с после-, так и с предусловием. Были рассмотрены классические итерационные методы, проанализированы существующие методы решения СЛАУ, а также рассмотрен пример применения метода Якоби.

Список использованой литературы

1. Бахвалов Н.С. Численные методы. - М.: Наука, 1975.

2. Воеводин В.В. Вычислительнные основы линейной алгебры. - М.: Наука, 1977.

3. Волков Е.А. Численные методы. М.: Наука, 1987.254 с.

4. Годунов С.К. Решение систем линейных уравнений. - Новосибирск: Наука, Сиб. отд-ние, 1980.

5. Калиткин Н.Н. Численные методы. М.: Наука, 1978.512 с.

6. Коновалов А.Н. Введение в вычислительные методы линейной алгебры. - Новосибирск: ВО "Наука", Сибирская издательская фирма, 1999

7. Самарский А.А., Гулин А.В. Численные методы. М.: Наука, 1989.432с.

Размещено на Allbest.ru


Подобные документы

  • Сущность итерационного метода решения задачи, оценка его главных преимуществ и недостатков. Разновидности итерационных методов решения систем линейных алгебраических уравнений: Якоби, Хорецкого и верхней релаксации, их отличия и возможности применения.

    курсовая работа [39,2 K], добавлен 01.12.2009

  • Решение системы линейных алгебраических уравнений большой размерности с разреженными матрицами методом простого итерационного процесса. Понятие нормы матрицы и вектора. Критерии прекращения итерационного процесса. Выбор эффективного итерационного метода.

    лабораторная работа [21,8 K], добавлен 06.07.2009

  • Методы решения систем линейных уравнений. Метод Якоби в матричной записи. Достоинство итерационного метода верхних релаксаций, вычислительные погрешности. Метод блочной релаксации. Разбор метода релаксаций в системах линейных уравнений на примере.

    курсовая работа [209,1 K], добавлен 27.04.2011

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

    контрольная работа [397,2 K], добавлен 13.12.2010

  • Итерационные методы (методы последовательных приближений) для решения уравнений. Одношаговые итерационные формулы. Метод последовательных приближений Пикара. Возникновение хаоса в детерминированных системах. Методы решения систем алгебраических уравнений.

    контрольная работа [166,2 K], добавлен 04.09.2010

  • Изучение основ линейных алгебраических уравнений. Нахождение решения систем данных уравнений методом Гаусса с выбором ведущего элемента в строке, в столбце и в матрице. Выведение исходной матрицы. Основные правила применения метода факторизации.

    лабораторная работа [489,3 K], добавлен 28.10.2014

  • Изучение способов решения нелинейных уравнений: метод деления отрезка пополам, комбинированный метод хорд и касательных. Примеры решения систем линейных алгебраических уравнений. Особенности математической обработки результатов опыта, полином Лагранжа.

    курсовая работа [181,1 K], добавлен 13.04.2010

  • Решение нелинейных уравнений. Отделения корней уравнения графически. Метод хорд и Ньютона. Система линейных уравнений, прямые и итерационные методы решения. Нормы векторов и матриц. Метод простых итераций, его модификация. Понятие про критерий Сильвестра.

    курсовая работа [911,6 K], добавлен 15.08.2012

  • Методы решения систем линейных алгебраических уравнений (СЛАУ): Гаусса и Холецкого, их применение к конкретной задаче. Код программы решения перечисленных методов на языке программирования Borland C++ Builder 6. Понятие точного метода решения СЛАУ.

    реферат [58,5 K], добавлен 24.11.2009

  • Метод Зейделя как модификация метода простой итерации. Особенности решения систем линейных алгебраических уравнений. Анализ способов построения графика функций. Основное назначение формул Симпсона. Характеристика модифицированного метода Эйлера.

    контрольная работа [191,3 K], добавлен 30.01.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.