dsp. LowerTriangularSolver

Решите нижнее треугольное матричное уравнение

Описание

Объект LowerTriangularSolver решает LX = B для X, когда L является квадратной, нижней треугольной матрицей с одинаковым числом строк как B.

Решить LX = B для X:

  1. Создайте объект dsp.LowerTriangularSolver и установите его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Синтаксис

lowtriang = dsp.LowerTriangularSolver
lowtriang = dsp.LowerTriangularSolver(Name,Value)

Описание

пример

lowtriang = dsp.LowerTriangularSolver возвращает решатель линейной системы, lowtriang, используемый, чтобы решить линейную систему LX = B, где L является более низким (или более низкий модулем) треугольная матрица.

lowtriang = dsp.LowerTriangularSolver(Name,Value) возвращает решатель линейной системы, lowtriang, с каждым заданным набором свойств к заданному значению.

Свойства

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

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

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

Когда вы устанавливаете это свойство на true, решатель линейной системы заменяет элементы на диагонали входа, L, с единицами. Это свойство полезно, когда матрица L является результатом другой операции, такой как разложение LDL, которое использует диагональные элементы, чтобы представлять матрицу D.

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

Зависимости

Это свойство применяется только, когда вы устанавливаете свойство OverwriteDiagonal на false.

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

Задайте метод округления как Ceiling, Convergent, Floor, Nearest, Round, Simplest или Zero.

Задайте действие переполнения как Wrap или Saturate.

Задайте тип данных продукта как Full precision, Same as input или Custom.

Задайте фиксированную точку продукта как масштабированный объект numerictype с Signedness Auto.

Зависимости

Это свойство применяется только, когда вы устанавливаете свойство ProductDataType на Custom.

Задайте тип данных аккумулятора как Full precision, Same as first input, Same as product или Custom.

Задайте фиксированную точку аккумулятора как масштабированный объект numerictype с Signedness Auto.

Зависимости

Это свойство применяется только, когда вы устанавливаете свойство AccumulatorDataType на Custom.

Задайте тип выходных данных как Same as first input или Custom.

Задайте выходную фиксированную точку как масштабированный объект numerictype с Signedness Auto.

Зависимости

Это свойство применяется только, когда вы устанавливаете свойство OutputDataType на Custom.

Использование

Для версий ранее, чем R2016b, используйте функцию step, чтобы запустить Систему object™ алгоритм. Аргументы к step являются объектом, который вы создали, сопровождаемый аргументами, показанными в этом разделе.

Например, y = step(obj,x) и y = obj(x) выполняют эквивалентные операции.

Синтаксис

X = lowtriang(L,B)

Описание

пример

X = lowtriang(L,B) вычисляет решение, X, матричного уравнения LX = B, где L является квадратной, нижней треугольной матрицей с одинаковым числом строк как матричный B.

Входные параметры

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

Квадратная матрица Нижней треугольной размера M-by-M.

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

Типы данных: single | double | int8 | int16 | int32 | int64 | fi

Введите B в уравнении LX = B, где B является M-by-N матрица.

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

Типы данных: single | double | int8 | int16 | int32 | int64 | fi

Выходные аргументы

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

Решение LX = уравнение B, возвращенное как M-by-N выходная матрица. Объект использует только элементы в более низком треугольнике входа L и игнорирует верхние элементы. Когда вы устанавливаете OverwriteDiagonal на true, объект заменяет элементы на диагонали входа, L, с единицами.

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

Типы данных: single | double | int8 | int16 | int32 | int64 | fi

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

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

stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

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

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

lowtriang = dsp.LowerTriangularSolver;
u = tril(rand(4, 4));
b = rand(4, 1);

Проверяйте, что результатом является решение линейных уравнений.

x1 = u\b
x1 = 4×1

    0.5177
    4.5810
   -3.4853
    9.6147

x = lowtriang(u, b)
x = 4×1

    0.5177
    4.5810
   -3.4853
    9.6147

Алгоритмы

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

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

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

Системные объекты

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