Факторная произвольная матрица в унитарную и верхнюю треугольные компоненты
Математические функции/матрицы и линейная алгебра/матричные факторизации
dspfactors
Блок факторизации QR использует последовательность преобразований Домохозяина для триангуляции входной матрицы A. Блок вызывает перестановку столбца входной матрицы A в виде
Ae = QR
Матрица Ae поворота столбца содержит столбцы А, переставленные, как указано содержимым вектора Е перестановки длины-N.
Ae = A(:,E) % Equivalent MATLAB code
Блок выбирает вектор перестановки столбцов E, который гарантирует, что диагональные элементы матрицы R расположены в порядке уменьшения величины.
| i = j
Размер матриц Q и R зависит от установки параметра Output size:
При выборе Economy для выходного размера Q представляет собой унитарную матрицу M-by-min (M, N), а R представляет собой верхнюю треугольную матрицу min (M, N) -by-N.
[Q R E] = qr(A,0) % Equivalent MATLAB code
При выборе Full для выходного размера Q является унитарной матрицей M-на-М, а R является верхней треугольной матрицей M-на-N.
[Q R E] = qr(A) % Equivalent MATLAB code
Блок обрабатывает неориентированный векторный ввод длины-M как матрицу M-by-1.
QR-факторизация является важным инструментом для решения линейных систем уравнений из-за хороших свойств распространения ошибок и обратимости унитарных матриц:
Q -1 = Q'
где Q' представляет собой комплексное сопряженное транспонирование Q.
В отличие от факторизаций LU и Cholesky, матрица A не должна быть квадратной для QR-факторизации. Однако факторизация QR требует вдвое больше операций, чем факторизация LU (гауссово исключение).
Параметр Output size блока факторизации QR имеет две настройки: Economy и Full. Когда входная матрица A M-by-N имеет такие размеры, что M > N, размеры выходных матриц Q и R различаются в зависимости от установки параметра выходного размера. Если, однако, размер входной матрицы A таков, что M ≤ N, выходные матрицы Q и R имеют одинаковые размеры, независимо от того, установлен ли выходной размер в Economy или Full.
Вход в блок факторизации QR в следующей модели является 5около-2 матрица A. При изменении параметра «Размер выходного документа» Economy кому Full, размеры выходных данных блока факторизации QR также изменяются.
Откройте модель путем ввода ex_qrfactorization_ref в командной строке MATLAB ®.
Дважды щелкните блок QR Factorization, задайте для параметра Output size значение Economyи запустите модель.

Блок факторизации QR выводит 5около-2 матрица Q и a 2около-2 матрица R.
Измените параметр Output size блока факторизации QR на Full и повторно запустите модель.

Блок факторизации QR выводит 5около-5 матрица Q и a 5около-2 матрица R.
Укажите размер выходных матриц Q и R:
Economy - Когда выбран этот выходной размер, блок выводит M-на-мин (M, N) унитарную матрицу Q и min (M, N) -на-N верхнетреугольную матрицу R.
Full - Когда выбран этот выходной размер, блок выводит М-на-М унитарную матрицу Q и М-на-N верхнетреугольную матрицу R.
Interpreted execution (по умолчанию)
Моделирование модели с помощью интерпретатора MATLAB. Этот параметр сокращает время запуска и обеспечивает более высокую скорость моделирования по сравнению с Code generation.
Code generation
Моделирование модели с использованием сгенерированного кода C. При первом запуске моделирования Simulink ® генерирует код C для блока. Код C используется повторно для последующего моделирования, если модель не изменяется. Этот параметр требует дополнительного времени запуска, но обеспечивает более быстрое последующее моделирование.
Голуб, Г. Х. и К. Ф. Ван Займ. Вычисления матрицы. 3-й ред. Балтимор, доктор медицинских наук: Johns Hopkins University Press, 1996.
| Порт | Поддерживаемые типы данных |
|---|---|
Вход |
|
Продукция |
|