Регистры | Registers

постройка сложный функций

Используйте регистры для изменения состояния механизмов или влияния на поток ресурсов на основе вычисления нескольких входных данных, поступающих либо от механизмов на диаграмме, либо из ваших собственных входных данных во время пошагового прогона диаграммы.

Регистры могут быть passive или interactive. Задайте их состояние на панели «Functional», отметив «Interactive»

По умолчанию, регистры -passive.

Пассивный Регистр

Passive регистры могут собирать входные данные от нескольких исходных механизмов, вычислять их на основе формул и влиять на состояние других соединений или механизмов на диаграмме.

Каждому соединению состояния входа регистра присваивается буквенная метка. Используйте эти идентификаторы в качестве переменных в формуле, которую Регистр должен вычислить.

Свойства

Метка

Для пассивных регистров метка используется для ввода формулы, которую вы хотите вычислить.

Интерактивные регистры

Регистр становится интерактивным, когда на панели «Properties» в разделе «Functional» отмечен флажок «Interactive».

Свойства

Метка

Метка интерактивного регистра выполняет косметическую функцию. Используйте его, чтобы описать, что означает регистр.

Ограничения

Используйте minimum иmaximum для установки значений, которые может принимать регистр.

Значение

После установки флажка «Interactive» для регистров становятся доступны два свойства:

В приведенном выше примере интерактивный регистр имеет заданное начальное значение 3 (Initial Value) и значение шага 2 (Step Value). При каждом взаимодействии регистр изменяет свое значение (в реальном времени во время пошагового прогона диаграммы) на +-2.

Показать на графике

Установите флажок «Show in Chart» (опция также доступна в контекстном меню при щелчке правой кнопкой мыши), чтобы отобразить значения, принимаемые регистром на каждом временном шаге при запуске диаграммы.

Примеры

1. Умножение целевого значения

В приведенном выше примере мы умножаем целевое значение. Для этого мы используем интерактивный регистр со значением шага, равным значению цели (Step Value и начальное значение источника). Чтобы иметь множитель целого числа x, мы использовали «100%» в качестве метки на соединении состояния.

Это приводит к тому, что цель умножается на количество шагов, которые пользователь интерактивно изменяет в регистре во время выполнения.

2. Использование math.js

Базовые операции

  1. add(a,b) складывает а и b

  2. subtract(a,b) вычитает b из a

  3. multiply(a,b) умножает a на b

  4. divide(a,b)делит a на b

Экспоненциальные функции

  1. square(a) возвращает квадрат а

  2. cube(a) возвращает куб а

  3. sqrt(a) возвращает корень а

  4. cbrt(a) возвращает кубический корень а

  5. pow(a,b) возводит а в степень b

3. Условные операторы

Если вы пытаетесь смоделировать сложные условные операторы, вы можете использовать регистры для вычисления условий. Вы можете найти пример решения в статье о том, как эмулировать устаревший компонент Artificial Player.

Last updated