LU-факторизация

Факторная квадратная матрица на более низкие и верхние треугольные компоненты

Библиотека

Математические функции / Матрицы и Линейная алгебра / Матричные Факторизации

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.

A=[185912257]        P=(213)        AP=[912185257]

Вывод LU является составной матрицей, более низкий подтреугольник которой формирует L и чей верхний треугольник формирует U.

Смотрите Матричные Факторизации в Руководстве пользователя DSP System Toolbox™ для другого примера с помощью блока LU Factorization.

Параметры

Main Tab

Show singularity status

Выберите, чтобы вывести особенность входа в порте S, который выходные значения булева типа данных 1 или 0. Вывод 1 указывает, что текущий вход сингулярен, и вывод 0 указывает, что текущий вход несингулярен.

Data Types Tab

Rounding mode

Задайте округляющийся режим для операций фиксированной точки как одно из следующего:

  • Floor

  • Ceiling

  • Convergent

  • Nearest

  • Round

  • Simplest

  • Zero

Для получения дополнительной информации смотрите округление режима.

Saturate on integer overflow

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

Product output

Задайте тип выходных данных продукта. Смотрите Типы данных с фиксированной точкой и Типы данных Умножения для рисунков, изображающих использование типа выходных данных продукта в этом блоке. Можно установить его на:

  • Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule. Для получения дополнительной информации об этом правиле смотрите, Наследовались через Внутреннее Правило.

  • Правило, которое наследовало тип данных, например, Inherit: Same as input.

  • Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)

Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Product output.

Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.

Accumulator

Задайте тип данных аккумулятора. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа данных аккумулятора в этом блоке. Можно установить этот параметр на:

  • Правило, которое наследовало тип данных, например, 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) для получения дополнительной информации.

Output

Задайте тип выходных данных. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа выходных данных в этом блоке. Можно установить его на:

  • Правило, которое наследовало тип данных, например, Inherit: Same as input

  • Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)

Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Output.

Смотрите Типы данных Управляющего сигнала (Simulink) для получения дополнительной информации.

Lock data type settings against changes by the fixed-point tools

Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на маске блока.

Ссылки

Golub, G. H. и К. Ф. ван Лоун. Матричные Вычисления. 3-й редактор Балтимор, MD: Johns Hopkins University Press, 1996.

Поддерживаемые типы данных

ПортПоддерживаемые типы данных

A

  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • Фиксированная точка (подписался только),

  • 8-, 16-, и 32-битные целые числа со знаком

Лютеций

  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • Фиксированная точка (подписался только),

  • 8-, 16-, и 32-битные целые числа со знаком

P

  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • 32-битное беззнаковое целое

S

  • Булевская переменная

Расширенные возможности

Представлено до R2006a