Пример 4.65

Рассмотрим модель одноканальной системы обслуживания:

В этом случае статистика по устройствам имеет такой вид:

Используем оператор EQU:

Теперь статистика по устройствам имеет такой вид:

Кроме рассмотренных выше, к операторам описания объектов относятся:

BVARIABLE – определяет булеву переменную;

FUNCTION – определяет функцию;

FVARIABLE – определяет действительную переменную c фик­сированной точкой;

MATRIX – определяет матрицу;

QTABLE – определяет таблицу для очереди;

STORAGE – определяет МКУ;

TABLE – определяет таблицу;

VARIABLE – определяет переменную. Все эти операторы были рассмотрены ранее. Отметим только, что в GPSS World возможности работы c матрицами расширены (уве­личена максимальная размерность матрицы c 2-х до 6). Поэтому опе­ратор MATRIX имеет следующий формат:

NAME MATRlX A,B,C,|D],[E],[F|[,G]

Метка NAME определяет имя матрицы.

Операнд А не используется (оставлен для совместимости c предыдущими версиями GPSS). Все остальные операнды должны быть только положительными целыми числами и задают размерность матрицы по соответствующему измерению:

В – задает максимальное значение индекса для первой размер­ности;

C – задает максимальное значение элементов для второй раз­мерности:

D – задает максимальное значение элементов для третьей раз­мерности;

E – задает максимальное значение элементов для четвертой раз­мерности:

F – задает максимальное значение элементов для пятой размер­ности;

G – задает максимальное значение элементов для шестой раз­мерности.

Только к первым двум размерностям матрицы можно обращать­ся в блоке MSAVEVALUE. В этом случае все отсутствующие раз­мерности предполагаются равными единице. Процедуры PLUS могут обращаться ко всем элементам любой матрицы. Если необходимо ис­пользовать матрицу размерностью больше, чем 2, надо создать одну или несколько процедур PLUS для обращения к ним. Матрица, определенная в операторе MATRIX, имеет глобальную область действия, т.е. доступна всем процедурам PLUS. Кроме того, может быть созда­на временная матрица c локальной областью действия (доступна только в процедуре PLUS, в которой она объявлена).

Матрицы никогда не удаляются из модели, однако, они могут быть переопределены другим оператором MATRIX.

Когда матрица создается впервые или когда используется ко­манда CLEAR ON, всем элементам задаются значения 0. При необ­ходимости можно использовать оператор INITIAL для задания элемента матрицы неопределенного состояния – UNSPECIFIED. Это полезно для сохранения результатов эксперимента. Когда такая мат­рица результатов передается библиотечной процедуре ANOVA, элементы UNSPECIFIED будут обработаны как отсутствующие данные, вместо нулевых значений.

Максимальный размер памяти, выделяемый для матриц, опреде­ляется в настройках параметров системы GPSS World.

Команда EXIT (ВЫХОД). Предназначен для завершения рабо­ты c системой GPSS World. Имеет следующий формат:

EXIT [А]

В результате выполнения команды EXIT система немедленно завершает работу. Операнд А является необязательным и использует­ся для управления сохранением модели и результатов моделирования. Он может принимать следующие значения:

0 или не указан – в окне сообщений появляется запрос на сохра­нение для каждого вновь созданного или измененного в сеансе моде­лирования файла;

1 – все файлы сохраняются без запроса;

– 1 – не сохраняются никакие файлы.

Диалоговые команды GPSS World. Могут быть включены в модель или введены в диалоговом окне команд – Command (в этом случае они называются диалоговыми командами). Любая имитация связана очередью команд. После трансляции модели при моделиро­вании все команды выстраиваются в очередь команд и выполняются одна за другой, пока этот процесс не будет приостановлен или пока не будут выполнены все команды.

Команды могут быть немедленными или поставленными в оче­редь. Немедленные команды, как HALT и SHOW, выполняются, как только они получены в процессе моделирования, другие команды ставятся в очередь. Они помещаются в конце списка команд, которые еще не были выполнены. Если при моделировании нет немедленных команд, то выполняется следующая команда из очереди команд. Если имитация выполняется и получена немедленная команда, то модели­рование временно приостанавливается для выполнения немедленной команды.

Команда HALT – особый случай. Мало того, что она немедлен­ная команда, но она также удаляет все оставшиеся команды из очереди команд. После выполнения команды HALT моделирование прекращается.

Обычно удобно поместить список часто используемых команд в текстовый файл. Тогда можно использовать команду INCLUDE (ВКЛЮЧИТЬ) для посылки объекту моделирования целой последо­вательности команд. Еще проще, можно загружать в функциональ­ную клавишу команду INCLUDE и выполнять целый список команд одиночным нажатием соответствующей клавиши.

Команда CONDUCT (ПРОВЕСТИ) начинает эксперимент. Ее формат:

CONDUCT |A|

Операнд А задает имя вызываемой процедуры эксперимента, написанной на языке PLUS. Операндом может быть только имя PLUS-процедуры. Данный операнд является необязательным.

Команда CONDUCT – немедленная команда, которая может быть послана только приостановленному процессу моделирования.

Эта команда запускает эксперимент и передает параметры к предварительно организованному эксперименту на языке PLUS для объекта моделирования. Если при моделировании используется тол: ко одиночный эксперимент без параметров, операнд А не требуется.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: