Суммирование элементов вектора





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

Описание

Блок реализует суммирование всех элементов векторных входных сигналов. Выход – скалярная величина (по умолчанию):

где:
  • u1 i(t), u 2 i(t), … – элементы векторов входных сигналов блоков (элементы векторов u 1(t)
  • u 2(t),…), y(t) – выходной сигнал блока
  • a 1, a 2, … – весовые коэффициенты входов

Если задано свойство суммировать через k>1 элементов, то размерность выходного сигнала равна k.

Например, алгоритм блока для k=2:

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

Имя Описание Тип линии связи
vector_n Порт для входного n-го вектора. Количество входов равно числу элементов вектора весовых коэффициентов в свойствах блока. Математическая

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

Имя Описание Тип линии связи
result Порт для результирующего значения. Математическая

Свойства

Название Имя Описание По умолчанию Тип данных
Весовые коэффициенты входов a Числа a 1, a 2, …, на которые умножаются значения входных портов блока. Число входных портов блока равно размерности этого параметра. [1] Массив
Суммировать через (количество элементов) nsum Целое число k, показывающее через сколько элементов во входных векторах осуществлять суммирование элементов. Размерность выходного сигнала равна этому числу. 1 Целое

Параметры

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

Промпт

//Описание блока, реализующего суммирование всех элементов
//векторных входных сигналов. Выход - скалярная величина (по умолчанию):
//y(t) = a1·Σu1i(t) + a2·Σu2i(t) + …
// u1i(t), u2i(t), … - элементы векторов входных сигналов (элементы векторов
//u1(t), u2(t), …)
// y(t) - выходной сигнал блока
// a1, a2, … - весовые коэффициенты входов
//Если задано свойство суммировать через k > 1 элементов, то размерность
//выходного сигнала равна k
//Например, алгоритм блока для k = 2:
//y1 = a1·(u11(t) + u13(t) + u15(t) + …) + a2·(u21(t) + u23(t) + u25(t) + …) + …
//y2 = a1·(u12(t) + u14(t) + u16(t) + …) + a2·(u22(t) + u24(t) + u26(t) + …) + …
// a - весовые коэффициенты входов. Числа a1, a2, …, на которые умножаются
//значения входных портов блока. Число входных портов блока равно размерности
//этого параметра. По умолчанию [1]
// nsum - суммировать через (количество элементов). Целое число k, показывающее,
//через сколько элементов во входных векторах осуществлять суммирование элементов.
//Размерность выходного сигнала равна этому числу. По умолчанию равно 1
//Входы: vector_n - порт для входного n-го вектора. Количество входов равно числу
//элементов вектора весовых коэффициентов в свойствах блока
//Выходы: result - порт для результирующего значения

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