Запаковка матрицы
![]() |
![]() |
| Векторный
|
|
| в палитре | на схеме |
Описание
Блок реализует преобразование нескольких входных векторных сигналов в один векторный выходной сигнал согласно алгоритму:
или
где:
- y(t) – векторный выходной сигнал
- u i(t)– векторные входные сигналы
Входные векторы u i(t), интерпретируемые как строки или столбцы матрицы размера [N×M], преобразуются в один векторный выход y(t) (в зависимости от варианта запаковки: по строкам или по столбцам).
Входные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| inport_n | Порт для ввода строк/столбцов формируемой матрицы. Число входных портов зависит от числа строк/столбцов в свойствах блока. | Математическая |
Выходные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| outport | Порт для вывода сформированной матрицы. | Математическая |
Свойства
| Название | Имя | Описание | По умолчанию | Тип данных |
|---|---|---|---|---|
| Число строк в матрице | nrow | Число M. | 2 | Целое |
| Число столбцов в матрице | ncol | Число N. | 2 | Целое |
| Матрица распакована по | tx | Вариант "распаковки" матрицы входных сигналов (по строкам или по столбцам). | Столбцам | Перечисление |
| Матрицу запаковать по | ty | Вариант "запаковки" выходного сигнала (по строкам или по столбцам). | Столбцам | Перечисление |
Параметры
Блок не имеет параметров.
Промпт
//Описание блока, реализующего преобразование нескольких входных
//векторных сигналов в один векторный выходной сигнал
//Вариант запаковки по строкам:
//u(t) = [u1(t) = [u11(t), …, u1N(t)], u2(t) = [u21(t), …, u2N(t)], …,
// uM(t) = [uM1(t), …, uMN(t)]]
// ⇔ [[u11(t), …, u1N(t)], [u21(t), …, u2N(t)], …, [uM1(t), …, uMN(t)]]
// ⇒ y(t) = [u11(t), …, u1N(t), u21(t), …, u2N(t), uM1(t), …, uMN(t)]
// или
// y(t) = [u11(t), …, uM1(t), u21(t), …, uM2(t), u1N(t), …, uMN(t)]
//Вариант запаковки по столбцам:
//u(t) = [u1(t) = [u11(t), …, uM1(t)], u2(t) = [u12(t), …, uM2(t)], …,
// uN(t) = [u1N(t), …, uMN(t)]]
// ⇔ [[u11(t), …, uM1(t)], [u12(t), …, uM2(t)], …, [u1N(t), …, uMN(t)]]
// ⇒ y(t) = [u11(t), …, u1N(t), u21(t), …, u2N(t), uM1(t), …, uMN(t)]
// или
// y(t) = [u11(t), …, uM1(t), u12(t), …, uM2(t), u1N(t), …, uMN(t)]
// y(t) - векторный выходной сигнал
// u_i(t) - векторные входные сигналы
//Входные векторы u_i(t), интерпретируемые как строки или столбцы матрицы размера
//[N×M], преобразуются в один векторный выход y(t) (в зависимости от варианта
//запаковки: по строкам или по столбцам)
// nrow - число строк в матрице. Число M. По умолчанию равно 2
// ncol - число столбцов в матрице. Число N. По умолчанию равно 2
// tx - матрица распакована по. Вариант "распаковки" матрицы входных сигналов
//(по строкам или по столбцам). По умолчанию: Столбцам
// ty - матрицу запаковать по. Вариант "запаковки" выходного сигнала (по строкам
//или по столбцам). По умолчанию: Столбцам
//Входы: inport_n - порт для ввода строк/столбцов формируемой матрицы. Число
//входных портов зависит от числа строк/столбцов в свойствах блока
//Выходы: outport - порт для вывода сформированной матрицы
block: (
type = "Запаковка матрицы",
points=[(-200 , 0),(-184 , 0),(-200 , -16),(408 , 308)],
nrow = 2,
ncol = 2,
tx = Столбцам,
ty = Столбцам
),
Примечание:
- По умолчанию блок запаковывает два "двужильных" входных сигнала в матрицу размером [2×2]. При этом входные сигналы воспринимаются как строки матрицы и матрица запаковывается по строкам.
- Свойства посредством колонки "Формула" могут быть заданы при помощи локальных переменных модели (субмодели) в ее скрипте, при помощи глобальных сигналов проекта в пункте главного меню Сервис → Сигналы..., или сигналов подключаемой базы данных.

