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

Function-Call Split

Страница в процессе разработки.

Компонент, разделяющий function-call сигнал на несколько частей.

Тип: FunctionCallSplit

Путь в библиотеке:

/Basic/Ports & Subsystems/Function-Call Split

Описание

Блок Function-Call Split позволяет function-call сигналу разветвляться и вести к нескольким function-call подсистемам.

Function-call подсистема, подключенная к выходному порту блока Function-Call Split, отмеченному точкой, выполняется раньше подсистем, подключенных к другим выходным портам. Если зависимости данных между подсистемами не поддерживают указанный порядок выполнения, блок Function-Call Split возвращает ошибку. Чтобы устранить эту ошибку, рекомендуется использовать блок Unit Delay. Добавление этого блока задерживает соответствующий вызов функции, тем самым устраняя цикл зависимости данных.

Чтобы отобразить порядок выполнения function-call подсистем, подключенных к ветвям заданного function-call сигнала, в настройках редактора Engee на вкладке Отладка в разделе Отображение информации установите флажок рядом с параметром Порядок выполнения блоков.

Следующая модель показывает, как использовать блок Unit Delay для обхода ошибки зависимости данных, вызванной блоком Function-Call Split. Блок разрывает цикл зависимостей данных между подсистемами f1 и g1. Модель обеспечивает последовательное выполнение f1 перед g1. На данном этапе выполнения подсистема f1 использует выходные данные g1, вычисленные на предыдущем этапе выполнения.

ex function call test 003

Ограничения

Блок Function-Call Split имеет следующие ограничения:

  • Все function-call подсистемы, подключенные к данному function-call сигналу, должны находиться на одном и том же уровне иерархии моделей.

  • Нельзя напрямую подключать разветвленные function-call подсистемы и их дочерние элементы непосредственно к инициатору вызова функций.

  • Function-call подсистемы, подключенные к ветвям function-call сигнала, не могут иметь множественных (мультиплексированных) источников сигналов.

  • От компонентов Merge нельзя принимать function-call сигналы и передавать итоговый сигнал на вход блока Function-Call Split.

Порты

Вход

# IN_1 — строка вызова функции
скаляр

Details

Блоки Function-Call Generator, Engee Function или Hit Crossing могут быть источниками событий вызова функций.

Типы данных

Float64

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

Да

Выход

# test — function-call сигнал
скаляр

Details

Строка вызова функции, подключенная к function-call подсистеме.

Типы данных

Float64

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

Да

# OUT_2 — function-call сигнал
скаляр

Details

Строка вызова функции, подключенная к function-call подсистеме.

Типы данных

Float64

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

Да

Параметры

Основные

# Icon shape — выбор формы иконки блока
distinctive | round

Details

Выбор формы иконки блока.

Параметр может принимать следующие значения:

  • distinctive — прямоугольная иконка блока;

  • round — круглая иконка блока.

Программное использование

Параметр блока: IconShape

Тип: character vector

Значения: 'distinctive' | 'round'

По умолчанию: 'distinctive'

Значения

distinctive | round

Значение по умолчанию

distinctive

Имя для программного использования

IconShape

Настраиваемый

Нет

Вычисляемый

Нет

# Number of output ports — указание количества выходных портов
Int64 integer

Details

Указание количества выходных портов function-call сигнала.

Параметр может принимать следующие значения:

  • 2 — два выходных порта вызова функций;

  • integer — целое число.

Программное использование

Параметр блока: NumOutputPorts

Тип: character vector

Значения: '2' | 'integer'

По умолчанию: '2'

Значение по умолчанию

2

Имя для программного использования

NumOutputPorts

Настраиваемый

Нет

Вычисляемый

Да

# Output port layout — выбор порядка расположения выходных портов
default | reverse

Details

Выбор порядка расположения выходных портов вызова функции в зависимости от того, какой порт первым обеспечивает вызов функции (такой порт отмечен точкой на иконке блока).

Параметр может принимать следующие значения:

  • default — верхний порт первым обеспечивает вызов функции;

  • reverse — нижний порт первым обеспечивает вызов функции.

Программное использование

Параметр блока: OutputPortLayout

Тип: character vector

Значения: 'default' | 'reverse'

По умолчанию: 'default'

Значения

default | reverse

Значение по умолчанию

default

Имя для программного использования

OutputPortLayout

Настраиваемый

Нет

Вычисляемый

Нет

Характеристики блока

Типы данных

FunctionCallEvent

Прямое прохождение

нет

Многомерные сигналы

нет

Сигналы переменного размера

нет

Обнаружение пересечений нуля

нет