Динамическая переменная

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

Если вам нужно задать какую-то постоянную характеристику - константу, то лучше сделать это не с помощью динамической переменной, а с помощью параметра.

 Чтобы добавить динамическую переменную
  1. Перетащите элемент Динамическая переменная  из палитры Системная динамика на диаграмму агента.

  1. Перейдите в панель Свойства.
  2. Задайте имя переменной в поле Имя
  3. Задайте формулу, определяющую значение переменной. Введите правую часть формулы в поле имя переменной =.

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

Для удобства работы AnyLogic поддерживает механизм быстрого добавления отсутствующих связей - когда вы закончите написание формулы, то увидите, что слева от строки формулы будет отображаться индикатор ошибки:


Щелкнув мышью по этому индикатору, вы увидите контекстное меню, в котором вам будет предложено создать отсутствующие связи с упоминаемыми элементами. Выбирая пункт меню, вы автоматически создаете соответствующую связь. 

  1. Если у переменной несколько размерностей, объявите ее массивом, выбрав флажок Массив и затем задайте уравнение (или несколько уранвений для различных срезов этого массива).
  2. Если вы задаете для переменных диаграммы потоков и накопителей единицы измерения, сделайте это и для этой динамической переменной, выбрав флажок Единицы измерения (сист. динамика) в секции Специфические и введя название единицы в поле. Более полную информацию о задании единиц измерения и проверке их соответствия в рамках модели вы можете найти здесь.
  3. Если вы создаете переменную, и не хотите, чтобы ее значение всегда определялось непрерывно вычисляемой формулой, а хотите задать для нее значение (имея возможность изменять его в дискретные моменты времени по ходу моделирования), установите флажок Константа. Переменная-константа будет отображаться на презентации с нарисованным поверх нее значком равенства: .
  4. Если вы создаете иерархическую модель, и хотите, чтобы эта переменная была вынесена на интерфейс объекта, выберите флажок На верхнем уровне. Если эта переменная будет связана с другой переменной и вы хотите, чтобы она постоянно принимала значения этой переменной, то выберите флажок Зависимая.
  5. При желании вы можете изменить цвет значка переменной, в свойстве Цвет.
Основные свойства

Имя – Имя динамической переменной. Имя используется для идентификации переменной и доступа к ней из формул других переменных.

Отображать имя – Если опция выбрана, то имя переменной будет отображаться в графическом редакторе.

Исключить – Если опция выбрана, то переменная будет исключена из модели.

Отображается на верхнем уровне – Если опция выбрана, то переменная будет видна на презентации типа агента, в который будет вложен данный агент.

Видимость – Если опция выбрана, то переменная будет отображаться на презентации во время выполнения модели.

Цвет – Здесь вы можете изменить цвет значка переменной.

Массив – Если опция выбрана, то эта переменная будет массивом. Свойства переменных типа массив отличаются от свойств скалярных переменных. Вместо одного поля, в котором задается формула, определяющая значение этой переменной, может присутствовать сразу несколько таких полей, позволяющих задавать различные формулы для различных подмассивов или отдельных элементов массива. Чтобы добавить новый раздел свойств для задания еще одной формулы, щелкните по кнопке Добавить формулу. Задание формул для элементов массивов и подмассивов описано здесь.

Зависимая – Если опция выбрана, то переменная будет постоянно принимать значение связанной с ней переменной.

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

имя переменной =Формула, в соответствии с которой будет высчитываться значение переменной с течением времени.
Если эта переменная - массив, то вы можете добавить дополнительные поля, позволяющие задать формулы для каких-то определенных элементов или подмассивов данного массива. Чтобы добавить новый раздел свойств для задания еще одной формулы, щелкните по кнопке Добавить формулу. Задание формул для элементов массивов и подмассивов описано здесь.

Размерности массива

Свойства, расположенные на странице Массив, доступны только в том случае, если данная переменная уже объявлена массивом. Для этого нужно установить флажок Массив в секции выше.

Возможные размерности – Список доступных в модели размерностей.

Выбранные размерности – Список размерностей, которые будут играть роль размерностей этого массива.

С помощью этих свойств задаются размерности массива.
Более подробная информация дана в разделе Задание переменной-массива

Специфические

Единицы измерения (сист. динамика)Если опция выбрана, то вы можете задать для переменной единицы измерения.

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

См. также

 Системная динамика

 Просмотр значений и графиков переменных

 Изменение значений переменных