Факторная квадратная матрица на более низкие и верхние треугольные компоненты
Математические функции / Матрицы и Линейная алгебра / Матричные Факторизации
dspfactors
Блоковые факторы LU-факторизации переставленная строкой версия квадратной входной матрицы A как A p = L *U, где L является нижней треугольной модулем матрицей, U, является верхней треугольной матрицей, и A p содержит строки A, переставленного, как обозначено индексом перестановки векторный P. Блок использует матрицу центра A p вместо точной входной матрицы A, потому что это улучшает числовую точность факторизации. Можно определить особенность входной матрицы A путем включения дополнительного выходного порта S. Когда A сингулярен, блок выводит 1
в порте S; когда A несингулярен, он выводит 0
.
Чтобы повысить эффективность, вывод блока LU Factorization в порте LU является составной матрицей, содержащей и более низкие треугольные элементы L и верхние треугольные элементы U. Таким образом вывод находится в другом формате, чем вывод
функции MATLAB® lu
, которая возвращает L и U как отдельные матрицы. Чтобы преобразовать вывод от порта LU
блока, чтобы разделить L и матрицы U, используйте следующий код:
L = tril(LU,-1)+eye(size(LU)); U = triu(LU);
Если вы сравниваете результаты, приведенные этими уравнениями к фактическому выводу функции lu
MATLAB, можно видеть немного отличающиеся значения. Эти различия происходят из-за погрешности округления и ожидаются.
Смотрите страницу ссылки на функцию lu
в документации MATLAB для получения дополнительной информации о LU-факторизациях.
Следующая схема показывает типы данных, используемые в блоке LU Factorization для сигналов фиксированной точки.
Можно установить продукт вывод, аккумулятор и типы выходных данных в диалоговом окне блока, как обсуждено ниже.
Вывод множителя находится в типе выходных данных продукта, когда вход действителен. Когда вход является комплексным, результат умножения находится в типе данных аккумулятора. Для получения дополнительной информации на комплексном выполняемом умножении, смотрите Типы данных Умножения.
Вертевшийся строкой матричный A p и индекс перестановки векторный P, вычисленный блоком, показывают ниже для 3х3 входной матрицы A.
Вывод LU
является составной матрицей, более низкий подтреугольник которой формирует L и чей верхний треугольник формирует U.
Смотрите Матричные Факторизации в Руководстве пользователя DSP System Toolbox™ для другого примера с помощью блока LU Factorization.
Main Tab
Выберите, чтобы вывести особенность входа в порте S, который выходные значения булева типа данных 1 или 0. Вывод 1 указывает, что текущий вход сингулярен, и вывод 0 указывает, что текущий вход несингулярен.
Data Types Tab
Задайте округляющийся режим для операций фиксированной точки как одно из следующего:
Floor
Ceiling
Convergent
Nearest
Round
Simplest
Zero
Для получения дополнительной информации смотрите округление режима.
Когда вы выбираете этот параметр, блок насыщает результат своей операции фиксированной точки. Когда вы очищаете этот параметр, блок переносит результат своей операции фиксированной точки. Для получения дополнительной информации на saturate
и wrap
, смотрите режим переполнения для операций фиксированной точки.
Задайте тип выходных данных продукта. Смотрите Типы данных с фиксированной точкой и Типы данных Умножения для рисунков, изображающих использование типа выходных данных продукта в этом блоке. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
. Для получения дополнительной информации об этом правиле смотрите, Наследовались через Внутреннее Правило.
Правило, которое наследовало тип данных, например, Inherit: Same as input
.
Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Product output.
Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.
Задайте тип данных аккумулятора. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа данных аккумулятора в этом блоке. Можно установить этот параметр на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
. Для получения дополнительной информации об этом правиле смотрите, Наследовались через Внутреннее Правило.
Правило, которое наследовало тип данных, например, Inherit: Same as input
.
Правило, которое наследовало тип данных, например, Inherit: Same as product output
.
Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Accumulator.
Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.
Задайте тип выходных данных. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа выходных данных в этом блоке. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Same as input
Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Output.
Смотрите Типы данных Управляющего сигнала (Simulink) для получения дополнительной информации.
Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на маске блока.
Golub, G. H. и К. Ф. ван Лоун. Матричные Вычисления. 3-й редактор Балтимор, MD: Johns Hopkins University Press, 1996.
Порт | Поддерживаемые типы данных |
---|---|
A |
|
Лютеций |
|
P |
|
S |
|