Регистры | Registers
постройка сложный функций
Last updated
Was this helpful?
постройка сложный функций
Last updated
Was this helpful?
Используйте регистры для изменения состояния механизмов или влияния на поток ресурсов на основе вычисления нескольких входных данных, поступающих либо от механизмов на диаграмме, либо из ваших собственных входных данных во время пошагового прогона диаграммы.
Регистры могут быть passive
или interactive
. Задайте их состояние на панели «Functional», отметив «Interactive»
По умолчанию, регистры -passive
.
Passive
регистры могут собирать входные данные от нескольких исходных механизмов, вычислять их на основе формул и влиять на состояние других соединений или механизмов на диаграмме.
Каждому соединению состояния входа регистра присваивается буквенная метка. Используйте эти идентификаторы в качестве переменных в формуле, которую Регистр должен вычислить.
Для пассивных регистров метка используется для ввода формулы, которую вы хотите вычислить.
Регистр становится интерактивным
, когда на панели «Properties» в разделе «Functional» отмечен флажок «Interactive».
Метка интерактивного регистра выполняет косметическую функцию. Используйте его, чтобы описать, что означает регистр.
Используйте minimum
иmaximum
для установки значений, которые может принимать регистр.
После установки флажка «Interactive» для регистров становятся доступны два свойства:
В приведенном выше примере интерактивный регистр имеет заданное начальное значение 3 (Initial Value) и значение шага 2 (Step Value). При каждом взаимодействии регистр изменяет свое значение (в реальном времени во время пошагового прогона диаграммы) на +-2.
Установите флажок «Show in Chart» (опция также доступна в контекстном меню при щелчке правой кнопкой мыши), чтобы отобразить значения, принимаемые регистром на каждом временном шаге при запуске диаграммы.
В приведенном выше примере мы умножаем целевое значение. Для этого мы используем интерактивный регистр со значением шага, равным значению цели (Step Value и начальное значение источника). Чтобы иметь множитель целого числа x, мы использовали «100%» в качестве метки на соединении состояния.
Это приводит к тому, что цель умножается на количество шагов, которые пользователь интерактивно изменяет в регистре во время выполнения.
add(a,b)
складывает а и b
subtract(a,b)
вычитает b из a
multiply(a,b)
умножает a на b
divide(a,b)
делит a на b
square(a)
возвращает квадрат а
cube(a)
возвращает куб а
sqrt(a)
возвращает корень а
cbrt(a)
возвращает кубический корень а
pow(a,b)
возводит а в степень b
Если вы пытаетесь смоделировать сложные условные операторы, вы можете использовать регистры для вычисления условий. Вы можете найти пример решения в статье о том, как эмулировать устаревший компонент Artificial Player.
Обратите внимание, что когда диаграмма работает, регистр отображает вычисленный результат, перед запуском он отображает fx.
Регистры поддерживают формулы из библиотеки .
После установки флажка «Interactive» регистры становятся доступными для редактирования во время . Используйте стрелки вверх и вниз для взаимодействия и изменения значения регистра.
Дополнительные примеры использования функций math.js с регистрами см. на общедоступной диаграмме: , или File > New from Template > Framework: Register and math.js functions