dsp. LUFactor

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

Описание

Объект LUFactor включает квадратную матрицу в более низкие и верхние треугольные матрицы.

Включать квадратную матрицу в более низкие и верхние треугольные матрицы:

  1. Задайте и настройте свою Систему object™. Смотрите Конструкцию.

  2. Вызовите step, чтобы учесть квадратную матрицу согласно свойствам dsp.LUFactor. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

При запуске в R2016b, вместо того, чтобы использовать метод step, чтобы выполнить операцию, заданную Системным объектом, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполняют эквивалентные операции.

Конструкция

lu = dsp.LUFactor возвращает Системный объект LUFactor, lu, который учитывает перестановку строки квадратной входной матрицы A как AP = LU, где L является нижней треугольной модулем матрицей, и U является верхней треугольной матрицей. Вертевшийся строкой матричный Ap содержит строки A, переставленного, как обозначено индексом перестановки векторный P. Эквивалентным кодом MATLAB® является Ap = A(P,:).

lu = dsp.LUFactor('PropertyName',PropertyValue,...) возвращает объект LUFactor, lu, с каждым заданным набором свойств к заданному значению.

Свойства

ExceptionOutputPort

Установите на true, чтобы вывести особенность входа

Установите это свойство на true выводить особенность входа как значения логического типа данных true или false. Вывод true указывает, что текущий вход сингулярен, и вывод false указывает, что текущий вход несингулярен.

 Свойства фиксированной точки

Методы

шагРазложите матрицу на более низкие и верхние треугольные матрицы
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

развернуть все

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным синтаксисом step. Например, myObject (x) становится шагом (myObject, x).

Разложите квадратную матрицу на более низкие и верхние компоненты.

lu = dsp.LUFactor;
x = rand(4)
x = 4×4

    0.8147    0.6324    0.9575    0.9572
    0.9058    0.0975    0.9649    0.4854
    0.1270    0.2785    0.1576    0.8003
    0.9134    0.5469    0.9706    0.1419

[LU, P] = lu(x);
L = tril(LU,-1)+diag(ones(size(LU,1),1));
U = triu(LU);
y = L*U
y = 4×4

    0.9134    0.5469    0.9706    0.1419
    0.9058    0.0975    0.9649    0.4854
    0.8147    0.6324    0.9575    0.9572
    0.1270    0.2785    0.1576    0.8003

Перепроверьте, равняется ли y переставленному x

xp = x(P,:)
xp = 4×4

    0.9134    0.5469    0.9706    0.1419
    0.9058    0.0975    0.9649    0.4854
    0.8147    0.6324    0.9575    0.9572
    0.1270    0.2785    0.1576    0.8003

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока LU Factorization. Свойства объектов соответствуют параметрам блоков.

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

Смотрите также

Представленный в R2012a