LDL Factorization

Факторный квадрат Эрмитовых положительно определенных матриц в нижние, верхние и диагональные компоненты

  • Библиотека:
  • DSP System Toolbox/Математические функции/Матрицы и линейная алгебра/матричные факторизации

  • LDL Factorization block

Описание

Блок LDL-разложение уникально влияет на квадратный эрмитов положительный вход матрицу S как

S=LDL*

где L - нижняя треугольная квадратная матрица с элементами диагонали единицами, D - диагональ матрица, и L* - эрмитова (комплексная сопряженная) транспозиция L. Используются только диагональный и нижний треугольник матрицы входа. Любой мнимый компонент диагональных элементов игнорируется.

LDL-разложение требует половины расчета Гауссова удаления (LU-разложение) и всегда является стабильным. Это более эффективно, чем факторизация Холесского, потому что это избегает вычисления квадратных корней диагональных элементов.

Порты

Вход

расширить все

Входной сигнал, заданный как квадратная матрица.

Алгоритм требует, чтобы вход был квадратным и гермитов положительно определен. Когда вход не положительно определен, блок реагирует так, как задан параметром Non-positive definite input.

Если вход является фиксированной точкой, он должен быть подписан фиксированной точкой с степенью двойки и нулевым смещением.

Типы данных: single | double | int8 | int16 | int32 | fixed point

Выход

расширить все

Выходом является составная матрица с элементами нижнего треугольника lij из L, диагональными элементами dij из D и элементами верхнего треугольника, uij из L*, где L является нижней треугольной квадратной матрицей, которая имеет единицу диагонали элементах, D является диагональю матрицей, и L* - эрмитова (комплексная сопряженная) транспозиция L.

Формат выхода показан ниже для матрицы 5 на 5.

Типы данных: single | double | int8 | int16 | int32 | fixed point

Параметры

расширить все

Главная вкладка

Задайте действие, когда происходят непозитивные определенные матричные входы:

  • Ignore - Продолжите вычисление и не выдавайте предупреждение. Этот выход не является допустимым факторизацией. Частичное факторизация присутствует в левом верхнем углу выхода.

  • Warning - отображение предупреждающего сообщения в MATLAB® Командное окно и продолжите симуляцию. Этот выход не является допустимым факторизацией. Частичное факторизация присутствует в левом верхнем углу выхода.

  • Error - Отобразите диалоговое окно ошибки и завершите симуляцию.

Вкладка «Типы данных»

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

  • Floor

  • Ceiling

  • Convergent

  • Nearest

  • Round

  • Simplest

  • Zero

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

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

Укажите промежуточный тип данных о продукте. Как показано в разделе Преобразование с Фиксированной Точкой в Расширенных Возможностях, выход умножителя переводится в промежуточный тип данных продукта, прежде чем в него умножается следующий элемент входа. Можно задать тип данных:

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

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

Также можно задать тип данных Intermediate product при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant.

Для получения дополнительной информации смотрите Задать типы данных Используя Data Type Assistant (Simulink).

Product output задает тип данных выхода операции продукта в блоке LDL Factorization.

  • Inherit: Inherit via internal rule - Блок наследует тип выходных данных продукта на основе внутреннего правила. Дополнительные сведения об этом правиле см. в разделе Наследование через внутреннее правило.

  • Inherit: Same as input - Блок задает тип выходных данных продукта, который должен совпадать с типом входных данных.

  • fixdt([],16,0) - блок задает автоматический тип данных с двоичной точкой с фиксированной точкой, который имеет размер слова 16 бит и длину дроби 0.

Для получения дополнительной информации смотрите Типы данных умножения и Преобразование с Фиксированной Точкой в Расширенных Возможностях.

Также можно задать тип данных Product output при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant.

Дополнительные сведения о помощнике по типам данных см. в разделе «Задание типов данных с использованием помощника по типам данных» (Simulink).

Accumulator задает тип данных выхода операции накопления в блоке LDL Factorization.

  • Inherit: Inherit via internal rule - Блок наследует тип данных аккумулятора на основе внутреннего правила. Дополнительные сведения об этом правиле см. в разделе Наследование через внутреннее правило.

  • Inherit: Same as input - Блок задает тип данных аккумулятора таким же, как и тип входных данных.

  • Inherit: Same as product output - Блок задает тип данных аккумулятора таким же, как и тип выходных данных продукта.

  • fixdt([],16,0) - блок задает автоматический тип данных с двоичной точкой с фиксированной точкой, который имеет размер слова 16 бит и длину дроби 0.

Для рисунков о том, как использовать тип данных аккумулятора в этом блоке, смотрите Преобразование с Фиксированной Точкой в Расширенных Возможностях.

Также можно задать тип данных Accumulator при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant.

Дополнительные сведения о помощнике по типам данных см. в разделе «Задание типов данных с использованием помощника по типам данных» (Simulink).

Output задает тип данных выхода блока LDL Factorization. Для получения дополнительной информации о типе выходных данных смотрите раздел 'Преобразование с фиксированной точкой' в Extended Capabilities.

  • Inherit: Same as input - Блок задает тип выходных данных, совпадающий с типом входных данных.

  • fixdt([],16,0) - блок задает автоматический тип данных с двоичной точкой с фиксированной точкой, который имеет размер слова 16 бит и длину дроби 0.

Также можно задать тип данных Output при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant.

Дополнительные сведения о помощнике по типам данных см. в разделе «Задание типов данных с использованием помощника по типам данных» (Simulink).

Задайте минимальное значение, которое может вывести блок. Simulink® программное обеспечение использует это минимальное значение для выполнения:

  • Проверка области значений симуляции. См. «Задание диапазонов сигнала» (Simulink).

  • Автоматическое масштабирование типов данных с фиксированной точкой.

Задайте максимальное значение, которое может вывести блок. Программное обеспечение Simulink использует это максимальное значение для выполнения:

  • Проверка области значений симуляции. См. «Задание диапазонов сигнала» (Simulink).

  • Автоматическое масштабирование типов данных с фиксированной точкой.

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

Характеристики блоков

Типы данных

double | fixed point | integer | single

Прямое сквозное соединение

no

Многомерные сигналы

no

Сигналы переменного размера

no

Обнаружение пересечения нулем

no

Ссылки

[1] Голубь, Г. Х. и К. Ф. Ван Кредит. Матричные расчеты. 3-й эд. Балтимор, доктор медицинских наук: Johns Hopkins University Press, 1996.

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

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