Документация Engee

LU Solver

Решение системы линейных уравнений с квадратной матрицей коэффициентов с использованием LU-разложения.

LU Solver

Описание

Блок LU Solver решает систему линейных уравнений с использованием LU-разложения:

  • — входной сигнал на порту A в виде квадратной матрицы коэффициентов на .

  • — входной сигнал на порту B в виде матрицы на .

  • — решение системы уравнений в виде матрицы на .

Порты

Вход

A — входная квадратная матрица A
матрица M на M

Входная квадратная матрица в уравнении размером на . Входные порты A и B должны иметь одинаковое количество строк.

Типы данных: Float32, Float64

Поддержка комплексных чисел: Нет

B — входная матрица B
матрица M на N | вектор M на 1

Матрица в уравнении размером на или вектор размером на 1.

Если задан вектор длиной , то блок обрабатывает его как матрицу на 1. Входы A и B должны иметь одинаковое количество строк.

Типы данных: Float32, Float64

Поддержка комплексных чисел: Нет

Выход

X — решение системы уравнений
матрица M на N | вектор M на 1

Блок находит решение уравнений в виде матрицы размером на или вектора размером на 1. Размер матрицы такой же, как размер матрицы .

Типы данных: Float32, Float64

Поддержка комплексных чисел: Нет

Алгоритмы

Алгоритм LU-разложения рассчитывает вариант квадратной входной матрицы с переставленными строками как:

,

где

  • — матрица с переставленными строками, порядок перестановок определяется вектором перестановок ;

  • — нижняя треугольная матрица с единичными диагональными элементами (унитреугольная матрица);

  • — верхняя треугольная матрица.

Если заменить матричные множители в исходном уравнении на , то получим

,

где — вариант матрицы с переставленными строками.

Результирующее уравнение будет иметь вид:

.

При замене на получается две системы уравнений с треугольными матрицами:

,

.

Дополнительные возможности

Генерация Си кода: Да