QR-разложение

Материал из testwiki
Перейти к навигации Перейти к поиску

Шаблон:Значения термина QR-разложение матрицы — представление матрицы в виде произведения унитарной (или ортогональной матрицы) и верхнетреугольной матрицы. QR-разложение является основой одного из методов поиска собственных векторов и чисел матрицы — QR-алгоритмаШаблон:Sfn.

Определение

Матрица A размера n×m, где nm, с комплексными элементами может быть представлена в виде

A=QR,

где Q — матрица размера n×m с ортонормированными столбцами, а R — верхнетреугольная матрица размера m×m. При n=m матрица Q унитарная. Если при этом A невырождена, то QR-разложение единственно и матрица R может быть выбрана так, чтобы её диагональные элементы были положительными вещественными числами. В частном случае, когда матрица A состоит из вещественных чисел, матрицы Q и R также могут быть выбраны вещественными, причём Q является ортогональнойШаблон:Sfn.

По аналогии, если A — матрица размера n×m, где nm, то она может быть разложена как

A=LP,

где матрица L порядка nнижнетреугольная, а матрица P размера n×m имеет ортонормированные строкиШаблон:Sfn.

Алгоритмы

QR-разложение может быть получено различными методами. Проще всего оно может быть вычислено, как побочный продукт в процессе Грама — ШмидтаШаблон:Sfn. На практике следует использовать модифицированный алгоритм Грама ― Шмидта, поскольку классический алгоритм обладает плохой численной устойчивостьюШаблон:Sfn.

Альтернативные алгоритмы для вычисления QR-разложения основаны на отражениях Хаусхолдера и вращениях ГивенсаШаблон:Sfn.

Пример QR-разложения

Рассмотрим матрицу:

A= (124332413)

Через a1,a2,a3 обозначим векторы-столбцы заданной матрицы A. Получаем следующий набор векторов:

a1=(134), a2=(231), a3=(423)

Далее, применяем алгоритм ортогонализации Грама — Шмидта и нормируем полученные вектора, получаем следующий набор:

e1=(26263262642626), e2=(373614361433361436143436143614), e3=(913913971391393139139)

Из полученных векторов e1,e2,e3 составляем по столбцам матрицу Q из разложения:

Q=(26263736143614913913932626333614361471391394262634361436143139139). Полученная матрица является ортогональной, это означает, что Q1=QT.

Найдем матрицу R из выражения R=Q1A=QTA:

R=(263213+9261121302021807+99361456218070031139) — искомая верхнетреугольная матрица.

Получили разложение A=QR.

Примечания

Шаблон:Примечания

Литература

Шаблон:Math-stub Шаблон:Векторы и матрицы