Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебное пособие_методы решения СЛАУ.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
799.74 Кб
Скачать

2.2.3 Два выбора подпространств

В разделе 2.2.2 были рассмотрены методы наискорейшего спуска, в котором подпространства K и L были связаны соотношением K=L, и наискорейшего уменьшения невязки который основан на соотношении L=AK. Сами подпространства являлись одномерными, в качестве базиса K выступал вектор невязки. В этих случаях задача проектирования эквивалентна задаче минимизации функционалов. Как оказывается, подобные утверждения справедливы и в гораздо более общих случаях, которые имеют важное значение при построении более сложных и эффективных методов.

Так если матрица A симметрична и положительно определенна, то задача проектирования решения СЛАУ (1.1) на любое подпространство K ортогонально к нему самому (т.е. ортогонально к пространству L=K) является эквивалентной задаче минимизации ||xx*||A2 на пространстве K. Для произвольной невырожденной матрицы A задача проектирования решения СЛАУ (1.1) на любое подпространство K ортогонально подпространству L=AK, эквивалентна задаче минимизации ||rx||22 на подпространстве K.

2.2.4 Подпространства Крылова

При построении и реализации проекционных методов важную роль играют так называемые подпространства Крылова, часто выбираемые в качестве K. Подпространством Крылова размерности m, порожденным вектором и матрицей A называется линейное пространство

Km(, A)=span{, A, A2,…,Am–1}.

(2.21)

В качестве вектора обычно выбирается невязка начального приближения r0; тогда выбор подпространства L и способ построения базисов подпространств полностью определяет вычислительную схему метода.

К идее использования подпространств Крылова можно прийти, например, следующим образом. При построении релаксационных методов использовалось представление матрицы A в виде A=DEF. Было также показано, что методы Якоби-Зейделя являются частными случаями класса методов, основанного на расщеплении A в виде разности (2.9) двух матриц K и R. Тогда исходная система (1.1) может быть записана в виде

Kx=b+Rx=b+(KA)x,

что позволяет построить итерационный процесс

Kxk+1=Kxk+(bAxk),

или, что то же самое,

xk+1=xk+K–1rk.

(2.22)

Если выбрать K=I и R=IA, тогда процесс (2.22) будет сведен к виду

xk+1=xk+rk,

(2.23)

откуда следует

xk=x0+r0+r1+…+rk–1.

(2.24)

Умножив обе части (2.23) слева на (–A) и прибавив к ним b, получится

bAxk+1=bAxkArk=rkArk,

что позволяет найти выражение для невязки на k-ой итерации через невязку начального приближения:

rk=(IA)rk–1=(IA) kr0.

(2.25)

После подстановки (2.25) в (2.24) получается

xk=x0+ r0,

т.е. k  span{r0, Ar0, …,Ak-1r0}=Kk(r0, A). Из (2.25) следует, что в методах, использующих подпространства Крылова, невязка на k-ой итерации выражается через начальную невязку некоторым матричным полиномом.

2.2.5 Базис подпространства Крылова. Ортогонализация Арнольди

Для построения базиса в пространстве Крылова Km(1, A) можно применить следующий подход. Сначала находят векторы 1=1, 2=A1, 3=A21=A2,…, m=Am–11=Am–1. По определению (2.21),

Km(1, A)=span{1, 2,…, m}.

Далее переходят от {1, 2,…, m} к {1, 2,…, m}, применив процедуру ортогонализации

k+1=k–1 ,

(2.26)

и затем пронормировав полученные векторы. Предполагая, что предыдущие k векторов уже построены, т.е.

i,j (1i, jk): (i,j)= .

(2.27)

Тогда (2.26) можно записать

k+1=Ak .

Для выполнения условия ортогональности k+1 ко всем предыдущим векторам, умножают это равенство скалярно на j (jk) и приравнивая результат к нулю

(Ak, j)–

(2.28)

С учетом (2.27) отсюда легко получить выражение для коэффициентов j

j=(Ak, j).

Описанный метод может быть оформлен в виде следующей процедуры, называемой ортогонализацией Арнольди.

Алгоритм ортогонализации Арнольди

Входные данные: 1, такой что ||1||2=1; A; m

Выполнять для j=1,…, m

=Aj

Выполнять для i=1,…, j

hij=(, i)

=hiji

увеличить i

hj+1, j=||||2

Если hj+1, j=0, то КОНЕЦ. Базис построен.

j+1=/hj+1, j

увеличить j

Для коэффициентов ортогонализации здесь введена двойная индексация, с учетом которой внутренний цикл алгоритма алгебраически записывается как

hj+1, j j+1=Aj .

(2.29)

Коэффициенты ортогонализации hi,j можно объединить в виде матрицы H, дополнив в ней недостающие позиции нулями. При этом, как видно из алгоритма, для заданной размерности пространства m генерируется m+1 векторов. Последний вектор m+1 (возможно, нулевой) в матричном представлении означает расширение базиса V одним дополнительным столбцом, т.е.

Vm=[1|2|…|m];

Vm+1=[1|2|…|m|m+1].

Соответствующий вектору m+1 коэффициент hm+1,m означает расширение матрицы H одной дополнительной строкой (возможно, нулевой).

Пусть – это матрица (m+1)m матрица коэффициентов hm+1,m, а матрица Hm – та же самая матрица без последней строки, имеющая размерность mm. Тогда непосредственно из описания алгоритма Арнольди и (2.29) следует, что матрица Hm является матрицей в верхней форме Хессенберга, (матрица называется верхней хессенберговой или верхней почти треугольной, если ее ненулевые элементы расположены только в ее верхнем треугольнике, на диагонали и на поддиагонали) и для нее справедливы соотношения

AVm=Vm+1 =VmHm+memT;

(2.30)

VmTAVm=Hm.

(2.31)

Кроме того, вследствие ортонормальности базиса {j} имеет место равенство

VTk=ek.

(2.32)