Блок GENERATE
GENERATE - блок, через который транзакты входят в модель (порождаются). В одной модели может быть несколько различных таких блоков. Необходимую для данного блока информацию задает разработчик с помощью операндов. Сведения об этих операндах сведены в табл.3.1.
Операнды А и В в блоке являются основными (их наличие обязательно),операнды С, D и E - дополнительными. Все эти операнды не обязательно должны быть заданы явно. Но когда операнды заданы в виде констант, то они должны быть неотрицательными целыми числами. В некоторых версиях системы для операндов А и В допускаются также и вещественные числа. Целые числа должны иметь максимум 5 цифр, вещественные - 8 цифр, причем значение операнда A не должно быть меньше В.
Таблица 3.1
Операнды блока GENERATE
Операнд | Значение | Значение по умолчанию |
А | Средний интервал времени порождения (среднее время между последовательными приходами транзактов в блоке GENERATE) | Ноль |
B | Половина поля допуска равномерно распределенного интервала (половина размаха интервалов времени прибытия) | Ноль |
C | Смещение интервалов (момент времени,в который в блоке должен появиться первый транзакт) | Смещение отсутствует |
D | Ограничитель (граничное значение общего числа транзактов, которые могут войти в модель через данный блок в течение времени моделирования. Когда это число достигнуто, данный блок GENERATE перестает быть активным) | Бесконечность |
E | Уровень приоритета (уровень или класс приоритета каждого из транзактов, входящих в модель через данный блок. Всего существует 128 уровней, которые задаются числами от 0 до 127) | Ноль |
Примеры использования блока GENERATE:
GENERATE 15,3
Здесь заданы операнды А и В (15 и 3 соответственно).Такая запись означает, что интервал времени прибытия равен 15 плюс-минус 3, то есть интервалом времени прибытия является случайное число со средним значением, равным 15, и полем допуска, равным 6 (так как 3 - это половина поля допуска),т.е. интервал может быть выражен числами 12, 13, 14, 15, 16, 17 и 18.
GENERATE 10
Операнд В равен 0. Интервал времени прихода равен 10 плюс–минус 0, иначе говоря, интервал равен в точности 10. Таким образом может быть задано неслучайное значение интервалов времени.
GENERATE 3,3,10,5
Здесь не задан только операнд Е. В этом случае моментом первого прихода является значение 10.После этого интервалы времени прибытия находят из равномерного распределения 3±3 (иначе говоря, от 0 до 6 включительно). Однако только первые пять транзактов должны войти в модель через этот блок.
GENERATE 5,,2
Здесь заданы операнды А и С. Время первого прибытия задано числом 2. После этого приход транзактов будет осуществляться через каждые пять единиц времени. Так как никакое значение не использовано между двумя запятыми, это значит, что операнд В задан по умолчанию, а операнды D и Е отсутствуют. Наличие трех запятых подряд в данном примере говорило бы о том, что по умолчанию заданы операнды В и С, а операнд Е отсутствует.