Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
total2.doc
Скачиваний:
432
Добавлен:
17.04.2013
Размер:
5.04 Mб
Скачать

3.3. Итерационные методы решения слау

В СЛАУ (3.1) представим матрицу в виде

,

тогда система приобретает вид или

. (3.13)

Рассмотрим последовательность векторов , удовлетворяющую условию

, (3.14)

где (), и вектор, где– решение заданной системы.

Вычтя из равенства (3.13) равенство (3.14), получим , т.е.. Поэтому,…,и, если множествостремится к нулю, то итерационный процесс (3.14) сходится и пределом последовательностиявляется вектор– решение данной системы.

Итерационный метод (3.14) сходится тогда и только тогда, когда каждое собственное значение матрицыудовлетворяет неравенству.

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

  1. Метод простой итерации. Метод простой итерации сводится к представлению матриц и в следующем виде:

, ,

Тогда матрицу можно вычислить следующим образом

.

Из неравенства (3.14) следует, что

. (3.15)

Соотношение (3.15) определяет алгоритм вычисления.

Пример. Решить методом простой итерации систему уравнений

Выразим из первого уравнения,– из второго и– из третьего. Получим

то есть

где . Используя это соотношение, можем последовательно вычислять векторы. Решение будет найдено, когда, где– некоторая заданная точность решения.

Программа 3.3

m=input(‘ m=? ‘)

d=diag(A);

x=b;

v=x;

S=diag(d);

T=S–A;

for i=1:m,

y=(T*x+b)./d;

e=abs(x–y);

x=y, v=[v,x];

end

plot(v’)

end.

2. Метод Зейделя. Матрицы иопределяются следующим образом:

, ,

где – нижняя треугольная матрица, а – верхняя (строго) треугольная матрица.

Применяя метод Зейделя к решению рассмотренной выше системы, получим следующие соотношения

для членов последовательности .

Программа 3.4

m=input(‘ m=? ‘)

x=b;

v=x;

S=trial(A);

T=S–A;

Si=inv(S);

for i=1:m,

y=Si*(T*x+b);

e=abs(x–y),

x=y,

v=[v,x];

end;

plot(v’)

end.

3. Метод последовательной верхней релаксации. Матрица представляется в виде суммы трех матриц:

,

где –диагональная матрица,– строго нижняя треугольная матрица и– строго верхняя треугольная матрица. Заметим, что метод простой итерации получается, если и , а метод Зейделя, если и . Итерационная последовательность определяется равенством

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

3.4. Вычисление собственных значений матрицы

Если число и векторразмерности ()удовлетворяют уравнению

,

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

называется спектральным радиусом матрицы .

Собственные значения матрицы определяются из уравнения для определителя

, (3.16)

где – единичная матрица.

Например, матрица

имеет спектр , а спектральный радиус у нее равен. В самом деле

,

это приводит к уравнению

,

которое имеет корни и.

Следом матрицы называется сумма ее диагональных элементов

.

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

, .

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

Пусть и – матрицы размера , причем существует матрица , обратная матрице и , тогда матрицы иназываются подобными. Тогда справедливо следующее утверждение. Подобные матрицы имеют одни и те же собственные значения с одинаковыми кратностями. Действительно. Имеем следующую цепочку равенств

На основе данного положения строится -алгоритм нахождения собственных значений матрицы. Пусть матрица, у которой нужно найти собственные значения. Обозначим и разложим эту матрицу в произведение:. Умножив последнее равенство на, получим

.

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

,

где , и, коммутируя сомножители последней, – матрицу

.

Таким образом, получается последовательность матриц , каждый член которой подвергается -разложению и каждый последующий за ней член – коммутации сомножителей. При этом все члены последовательности, являясь подобными матрицами, имеют равные собственные значения. Отметим без доказательства, что эта последовательность сходится к диагональной матрице, диагональные элементы которой равны собственным значениям всех матриц последовательности и поэтому являются собственными значениями исходной матрицы .

Покажем, каким образом можно реализовать рассмотренный алгоритм. Матрица задана. Параметр в программе задает число итераций. Полученный результат можно сравнить с собственными значениями, найденными с помощью оператораeig(A).

Программа 3.5

[Q,R]=qr(A);

m=input(‘ m=? ‘)

for i=1,m,

B=R*Q, pause,

[Q,R]=qr(B);

end

Задания к главе 3

Решить (методом Гаусса, QR-разложением и методом Зейделя) следующие системы линейных алгебраических уравнений . Вычислить первую, вторую и бесконечные нормы матрицы. Оценить относительные погрешности решения, считая, чтои. Представить программы и решение.

3.1. A=,b=3.2.A=,b=

  1. A=,b=3.4.A=,b=

  2. A=,b=3.6.A=,b=

  1. A=,b=3.8.A=,b=

3.9. A=,b=3.10.A=,b=.

4. Численная интерполяция

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

Соседние файлы в предмете Численные методы