Распаковка матрицы





| Векторный | Си |
в палитре на схеме

Описание

Блок реализует преобразование одного входного векторного сигнала на несколько векторных выходных сигналов согласно алгоритму:

или

где:
  • y(t) – векторный выходной сигнал
  • u(t) – векторный входной сигнал

Входной вектор u(t), интерпретируемый как матрица размера [N×M] и "запакованная" по строкам или столбцам (в зависимости от варианта запаковки), преобразуется в M или N векторных выходов y j(t) (в зависимости от варианта распаковки: по строкам или по столбцам).

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

Имя Описание Тип линии связи
inport Порт для входного векторного сигнала. Математическая

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

Имя Описание Тип линии связи
outport_n Выходной порт для строки матрицы. Количество выходов блока равно количеству строк или столбцов входной матрицы, в зависимости от настроек свойств блока. Математическая

Свойства

Название Имя Описание По умолчанию Тип данных
Число строк в матрице nrow Число M. 2 Целое
Число столбцов в матрице ncol Число N. 2 Целое
Матрица запакована по tx Вариант запаковки входной матрицы: по строкам или по столбцам. Столбцам Перечисление
Матрицу распаковать по ty Вариант "распаковки" на выходе входной матрицы. Столбцам Перечисление

Параметры

Блок не имеет параметров.

Промпт

//Описание блока, реализующего преобразование одного входного
//векторного сигнала на несколько векторных выходных сигналов
//Вариант распаковки по строкам:
//u(t) = [[u11(t), …, u1N(t)], [u21(t), …, u2N(t)], …, [uM1(t), …, uMN(t)]]
//  ⇒ y(t) = [y1(t) = [u11(t), …, u1N(t)], y2(t) = [u21(t), …, u2N(t)], …,
//            yM(t) = [uM1(t), …, uMN(t)]]
//Вариант распаковки по столбцам:
//y(t) = [y1(t) = [u11(t), …, uM1(t)], y2(t) = [u12(t), …, uM2(t)], …,
//        yN(t) = [u1N(t), …, uMN(t)]]
// y(t) - векторный выходной сигнал
// u(t) - векторный входной сигнал
//Входной вектор u(t), интерпретируемый как матрица размера [N×M] и "запакованная"
//по строкам или столбцам (в зависимости от варианта запаковки), преобразуется
//в M или N векторных выходов y_j(t) (в зависимости от варианта распаковки:
//по строкам или по столбцам)
// nrow - число строк в матрице. Число M. По умолчанию равно 2
// ncol - число столбцов в матрице. Число N. По умолчанию равно 2
// tx - матрица запакована по. Вариант запаковки входной матрицы: по строкам
//или по столбцам. По умолчанию: Столбцам
// ty - матрицу распаковать по. Вариант "распаковки" на выходе входной матрицы.
//По умолчанию: Столбцам
//Входы: inport - порт для входного векторного сигнала
//Выходы: outport_n - выходной порт для строки матрицы. Количество выходов блока
//равно количеству строк или столбцов входной матрицы, в зависимости от настроек
//свойств блока

block: (
  type = "Распаковка матрицы",
  points=[(-200 , 0),(-184 , 0),(-200 , -16),(408 , 308)],
  nrow = 2,
  ncol = 2,
  tx = Столбцам,
  ty = Столбцам
  ),
Примечание:
  1. По умолчанию блок распаковывает матрицу размером [2×2] и формирует два выходных сигнала (размерностью 2 каждый). При этом матрица запакована и распаковывается по строкам.
  2. Свойства посредством колонки "Формула" могут быть заданы при помощи локальных переменных модели (субмодели) в ее скрипте, при помощи глобальных сигналов проекта в пункте главного меню Сервис → Сигналы..., или сигналов подключаемой базы данных.