Сумматор
![]() |
![]() |
| Векторный | Си
| ST |
|
| в палитре | на схеме |
Описание
Блок векторизован, реализует операцию алгебраического поэлементного суммирования входных сигналов с учетом весовых коэффициентов:
где y(t) – выходной сигнал блока; u 1(t), u 2(t), …, u n(t) – входные сигналы; a 1, a 2, a 3, …, a n – весовые коэффициенты для каждого входного сигнала блока.
Входные сигналы могут быть векторами u 1=[u 11, u 1 2, …, u 1 m], u 2=[u 2 1, u 22, …, u 2 m] … u n=[u n 1, u n 2, …, u n m], размерности которых должны быть одинаковы, в этом случае на выходе будет также вектор:
где y i(t) – i-ый элемент выходного векторного сигнала блока; u 1 i(t), u 2 i(t) – i-ый элемент первого, второго и т.д. входного сигнала.
Входные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| + | Входной порт для одного из слагаемых. Количество входных портов равно числу (n) элементов вектора весовых множителей в свойствах блока. Имя порта может быть изменено блоком, в зависимости от значения весового коэффициента. | Математическая |
Выходные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| sum | Выходной порт для результата суммирования. | Математическая |
Свойства
| Название | Имя | Описание | По умолчанию | Тип данных |
|---|---|---|---|---|
| Весовые множители для каждого из входов | a | Вектор действительных чисел, на которые умножаются значения входных сигналов блока. Число входных портов блока равно размерности этого массива. | [1, 1] | Массив |
Параметры
Блок не имеет параметров.
Промпт
//Описание блока, реализующего операцию алгебраического поэлементного
//суммирования входных сигналов с учётом весовых коэффициентов:
//y(t) = a1·u1(t) + a2·u2(t) + a3·u3(t) + … + an·un(t)
//Блок векторизован
// u1(t), u2(t), …, un(t) - входные сигналы
// a1, a2, a3, …, an - весовые коэффициенты для каждого входного сигнала блока
// a - весовые множители для каждого из входов. Вектор действительных чисел, на
//которые умножаются значения входных сигналов блока. Число входных портов блока
//равно размерности этого массива
//Входные сигналы могут быть векторами u1 = [u11, u12, …, u1m],
//u2 = [u21, u22, …, u2m], …, un = [un1, un2, …, unm], размерности которых должны
//быть одинаковы. В этом случае на выходе будет также вектор:
//y_i(t) = a1·u1i(t) + a2·u2i(t) + a3·u3i(t) + … + an·uni(t), i = 1…m
// y_i(t) - i-й элемент выходного векторного сигнала блока
// u1i(t), u2i(t), … - i-й элемент первого, второго и т.д. входного сигнала
//Входы: + - входной порт для одного из слагаемых. Количество входных портов равно
//числу (n) элементов вектора весовых множителей в свойствах блока. Имя порта может
//быть изменено блоком, в зависимости от значения весового коэффициента
//Выходы: sum - выходной порт для результата суммирования
block: (
type = "Сумматор",
points=[(-200 , 0),(-184 , 0),(-200 , -16),(408 , 308)],
a = [1, 1]
),
- По умолчанию блок формирует выходной сигнал, равный сумме двух входных сигналов (весовых коэффициентов два, и оба равны 1).
- Свойства посредством колонки "Формула" могут быть заданы при помощи локальных переменных модели (субмодели) в ее скрипте, при помощи глобальных сигналов проекта в пункте главного меню Сервис → Сигналы..., или сигналов подключаемой базы данных.

