Блок генерации транзакта GENERATE




 

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

 

Формат блока:

GENERATE <A>,<B>,<C>,<D>,<E>

 

Интервалы времени между транзактами, поступающими в модель, определяются содержимым полей операндов:

­ <A> – среднее время между поступлениями транзактов в модель, по умолчанию, среднее время равно 0;

­ <B> – модификатор времени (описан ниже);

­ <C> – начальная задержка, т.е. момент времени появления в модели первого транзакта, по умолчанию начальная задержка равна 0;

­ <D> – общее число транзактов, которые должны быть введены в модель, по умолчанию, в модель вводится неограниченное число транзактов;

­ <E> – приоритет транзакта (0..127), чем больше значение, тем выше приоритет транзакта, по умолчанию приоритет транзакта равен 0.

В поле <B> может быть задан модификатор времени одного из двух типов:

­ Модификатор-интервал – определяет целочисленную случайную величину T, принимающую равновероятные значения в диапазоне [<A> - <B>.. <A> + <B>]. Значение <B> должно быть меньше <A>. Например, блок GENERATE 9,2 определяет, что интервал времени между поступлением транзактов в модель, с равной вероятностью принимает значения 7, 8, 9, 10, 11.

­ Модификатор-функция – определяет интервал времени между поступлением транзактов в модель как целочисленную случайную величину T = <A> * <B>. В поле операнда <B> записывается СЧА – значение функции. Например, блок GENERATE 2, FN$EXPON определяет, что интервал времени между поступлениями транзактов в модель вычисляется как значение функции с именем EXPON, умноженное на 2.

В модели может быть несколько блоков GENERATE в соответствии с тем, какое количество паралелльных процессов имитирует модель.

 

Блок уничтожения транзакта TERMINATE

 

Формат блока:

TERMINATE <A>

 

Транзакты, попадающие в этот блок, выводятся из модели и больше не участвуют в процессе моделирования. В поле операнда <A> записывается либо целое число, либо ничего. Каждый раз, когда транзакт входит в блок TERMINATE, целое число, стоящее в поле операнда <A> вычитается из счетчика завершений, который устанавливается управляющей командой START. Как только значение счетчика завершений обнулится, моделирование закончится. Например, конструкция

TERMINATE 1

START 100

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

Если в поле операнда <A> ничего не указано, счетчик завершений не уменьшается и моделирование продолжается бесконечно.

 

Блок задержки движения транзакта ADVANCE

 

Формат блока:

ADVANCE <A>,<B>

 

Задержка движения транзакта во времени имитируется при попадании транзакта в блок ADVANCE, для которого в полях операндов <A> и <B> указываются соответственно среднее время задержки и модификатор времени, использование которого аналогично блоку GENERATE. Например,

ADVANCE 9, 2

ADVANCE 2, FN$EXPON

 

 

Управление продолжительностью моделирования. Организация таймеров

 

Длительность моделирования в программе на GPSS можно задать двумя способами.

1. Определить в управляющей команде START количество транзактов, которые необходимо обработать в модели (этот способ используется для простых моделей, содержащих единственный процесс):

GENERATE…

<программа модели>

TERMINATE 1

START 100

2. С помощью процесса-таймера определить отрезок модельного времени, в течение которого должно осуществляться моделирование. Процесс-таймер должен быть единственным на всю модель, поэтому только в нем в блоке TERMINATE задается непустое поле операнда <A>. Во всех остальных процессах поле операнда <A> в блоке TERMINATE должно быть пустым:

; 1-й процесс

GENERATE…

<программа модели>

TERMINATE

; n-й процесс

GENERATE…

<программа модели>

TERMINATE

; процесс-таймер

GENERATE,,,1

ADVANCE 100

TERMINATE 1

START 1

Процесс-таймер реализуется транзактом, который вводится в модель в начале моделирования, задерживается на 100 единиц модельного времени, затем выводится из модели, что приводит к завершению всех процессов модели.

 

 

Группа элементов, имитирующих оборудование

 

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

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2021-01-31 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: