- •Введение
- •1. Основные понятия системы рдо
- •2. Необходимые объекты модели
- •2.1. Объект типов ресурсов
- •2.2. Объект ресурсов
- •2.3. Объект образцов операций
- •2.4. Объект операций
- •2.5. Объект точек принятия решений
- •2.6. Объект прогона
- •3. Дополнительные объекты модели
- •3.1. Объект констант, функций и последовательностей
- •3.2. Объект кадров анимации
- •4. Объекты трассировки и сбора статистики
- •4.1. Объект трассировки
- •4.2. Объект требуемой статистики
- •4.3. Объект результатов
- •5. Работа в среде рдо
- •5.1. Окна редактора и имитатора исм рдо
- •5.2. Зарезервированные слова
- •5.3. Глобальные переменные и стандартные функции
- •6. Демонстрационные примеры
- •6.1. Моделирование экзамена
- •6.2. Моделирование игры
- •7. Содержимое каталога рдо
- •Литература
- •Оглавление
2.6. Объект прогона
В объекте прогона указывают ряд необходимых для управления прогоном данных и режимов. Этот объект состоит из двух частей. Первая часть содержит имена необходимых объектов и режимы прогона. Первой лексемой объекта должно быть зарезервированное слово Model_name, за которым после знака равенства должно следовать имя модели. Имя модели это простое имя, оно не должно совпадать с ранее определенными именами. Далее в первой части объекта в произвольном порядке записываются дескрипторы, описывающие имена объектов и режимы.
Формат дескрипторов следующий:
<зарезервированное_слово> = <значение>
Ниже приведены имена зарезервированных слов и возможных значений с пояснениями.
Resource_file задает имя объекта ресурсов. Значением является имя объекта ресурсов без расширения.
OprIev_file задает имя объекта операций. Значением является имя объекта операций без расширения.
Frame_file задает имя объекта кадров. Значением является имя объекта кадров без расширения. Если дескриптор не указан, кадры не загружаются и не могут быть отображены.
Statistic_file задает имя объекта описания результирующих показателей. Значением является имя объекта требуемой статистики без расширения. Если дескриптор не указан, результирующие показатели не собираются.
Results_file задает имя объекта результатов. Значением является имя объекта результатов без расширения. Если дескриптор не указан, объект не создается.
Trace_file задает имя объекта трассировки. Значением является имя объекта трассировки без расширения. Если дескриптор не указан, объект не создается.
Show_mode задает режим отображения при запуске модели. Режимы задаются одним из следующих зарезервированных слов:
NoShow режим без отображения;
Monitor режим монитора;
Animation режим отображения состояния (анимации).
Значение по умолчанию NoShow.
Frame_number задает номер кадра из числа описанных в объекте кадров для отображения при запуске модели, если указан соответствующий режим. Номер задается константой целого типа. Значение по умолчанию равно 1.
Show_rate задает временной масштаб отображения. Указывается вещественной численной константой, равной отношению темпа отображения к модельному времени. Например, при Show_rate = 60.0 отображение будет производиться в 60 раз быстрее, т.е. один час модельного времени будет отображаться за одну минуту. Значение по умолчанию 60.0.
Run_StartTime задает модельное время, устанавливаемое в начале прогона. Указывается вещественной численной константой. Значение по умолчанию 0.0.
Trace_StartTime задает время начала выдачи информации в объект трассировки. Указывается вещественной численной константой. Значение по умолчанию 0.0.
Trace_EndTime задает время окончания выдачи информации в объект трассировки. Указывается вещественной численной константой. Значение по умолчанию 10.0Е+30.
В первой части объекта прогона обязательно указание имен объектов ресурсов и операций (если используется объект операций, а не точек принятия решений). Остальные дескрипторы могут отсутствовать. В этом случае используется значение по умолчанию.
Во второй части объекта задают в произвольном порядке точки останова, условие окончания прогона, новые начальные значения констант, параметров ресурсов и баз генераторов последовательностей.
Задание условия окончания прогона имеет формат:
Terminate_if <логическое выражение>
Прогон будет автоматически завершен в тот момент, когда значением указанного логического выражения станет ИСТИНА. Например:
Terminate_if Time_now >= 5.0 or
Зачет1.Опрошено_студентов >= 20 and
Зачет2.Опрошено_студентов >= 20
Если условие окончания прогона не задано, автоматического завершения прогона не происходит.
Механизм точек останова служит для повышения удобства отладки моделей. Формат описания точки останова следующий:
Break_point <имя_точки_останова> <логическое_выражение>
Имя точки останова это простое имя, оно не должно совпадать с ранее определенными именами. Логическое выражение задает условие, которому должно удовлетворять состояние системы. В тот момент, когда указанное логическое выражение приобретает значение ИСТИНА, происходит прерывание моделирования с выдачей соответствующей информации и РДО-имитатор переходит в режим монитора.
Формат задания нового значения символьных констант:
<имя_константы> = <новое_значение>
Имя константы это одно из имен констант, описанных в объекте констант (объект констант, функций и последовательностей будет рассмотрен в следующей главе). Новое значение символьной константы задается целой или вещественной численной константой либо именем значения в соответствии с типом константы.
Формат задания нового значения параметров ресурсов:
<имя_ресурса>.<имя_параметра> = <новое_значение>
Имя ресурса это одно из имен ресурсов, заданное в объекте ресурсов. Имя параметра одно из имен параметров, описанных в объекте типов ресурсов для соответствующего типа. Новое значение задают целой или вещественной численной константой либо именем значения в соответствии с типом параметра.
Формат задания нового начального значения базы генераторов:
<имя_последовательности>.Seed = <значение>
Имя последовательности это одно из имен, указанных в объекте констант при описании последовательностей. Оно идентифицирует последовательность, для которой задается значение базы. Значение задают численной константой целого типа в диапазоне [2147483647, 2147483647].
В данной главе были описаны необходимые объекты, которые обязательно должны входить в состав модели. В следующей главе рассматривается ряд необязательных, но полезных в ряде применений объектов.