русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Основные операторы


Дата добавления: 2014-11-27; просмотров: 953; Нарушение авторских прав


1.FUNCTION (функция)

Программный блок-функция устанавливается в начале модели. С помощью функции записывается зависимость между параметрами или СЧА. В основном она используется для задания закона распределения случайной величины (для GPSS World не обязательна).

Формат: символ (номер или имя) FUNC A, B,

где в поле A устанавливается аргумент функции. Если это аргумент случайной функции, то в поле A устанавливается RN $.

В поле B записывается тип функции (C, D). За буквой C или D записывается количество пар точек. Далее перечисляются координаты точек по формату: x1, y1/x2, y2/x3, y3/…/xn, yn.

При записи пар точек необходимо соблюдать следующие условия:

- x (аргумент) должен обязательно возрастать;

- совпадения значений x не допускаются.

Например:

4 FUNC RN$2,C5

0,0/.2,10/.5,25/.8,10/1,0

Значения функции 4 распределены случайно в зависимости от данных генератора случайных чисел RN$2.

2. GENERATE (генерировать)

Программный блок предназначен для создания ТА с соответствующим набором атрибутов. Программный блок имеет только выход.

Формат: GENE A, B, C, D

В поле A записывается математическое ожидание интервала следования транзактов ( ).

B случае равномерного закона распределения в поле B записывается величина отклонения случайной величины от математического ожидания ( ). По умолчанию отклонение равно 0. Если закон отличается от равномерного, в поле B записывается закон распределения, установленный выше блоком FUNCTION.

В поле C устанавливается время появления на выходе генератора первого транзакта (t1).

В поле D записывается число транзактов, которое должен сформировать генератор.

Примечание. Если в поле B записана не функция, а интервал , то генератор выдаёт числа с равномерным законом распределения в интервале (A-B, A+B). Если в поле B записана функция FN$ (имя функции или номер), то генератор выдаёт случайные числа, равные (A*FN$), где A – математическое ожидание.



Например: 1.GENE 12,3,,2

Генератор генерирует ТА с интервалом от 9 до 15 единиц времени с приоритетом 2.

2. GENE 10,FN$EXP

Генератор генерирует ТА с интервалом, равным произведению значения функции FN$EXP на 10.

В GPSS World в библиотеку включено 24 закона вероятностных распределений. При вызове распределения требуется установить аргумент и его параметры.

Некоторые распределения вероятностей:

- Лапласа (Laplace);

- нормальное (Normal);

- Пирсона типа V (Pearson Type V);

- Пуассона (Poisson);

- равномерное (Uniform);

- экспоненциальное (Exponential).

Генератор задается в специальном формате. Например, генератор с экспоненциальным законом распределения (l=0,25) и с использованием генератора случайных чисел RN1 запишется в виде

GENERATE (Exponential(1,0,(1/0.25))).

3.TRANSFER (передать)

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

Формат: TRAN A, B, C, D

В поле A устанавливается условие (режим) передачи. В поле B указывается номер следующего блока по условию. В поле C указывается номер блока, в который должен перейти ТА, если блок, указанный в поле B, занят. В поле D записывается индекс, используемый в условии «ALL».

В поле А устанавливаются следующие условия.

1. «Пробел» (в поле A ничего не указывается). По этому условию ТА передаётся в блок, указанный в поле B, (безусловный переход). Если блок занят, ТА остаётся в предыдущем блоке (TRANSFER).

2. .N - по этому условию записывается вероятность, с которой ТА будет переходить в блок, указанный в поле C.

3. «ALL» - ТА пытается войти в блок B, если он занят, то в B+D, если и он занят, то в B+2D и т.д. до C.

4. «BOTH» - ТА пытается войти в блок B, если он занят, то в блок C, если блок C занят, то остаётся в предыдущем блоке (TRANSFER).

Например: 1. TRAN ,M1

Безусловная передача блоку с меткой М1.

2. TRAN .300,М1,М2

С вероятностью 0.7 ТА будут переданы блоку с меткой М1 и с вероятностью 0.3 – в блок М2.

4.SEIZE (занять)

С помощью этого оператора производится ввод ТА в устройство, имитирующее обслуживание.

Формат: SEIZ A

В поле A указывается номер или имя устройства.

5.ADVANCE (задержать)

Блок имитирует обслуживание путём выделения транзакту определённого времени нахождения в блоке.

Формат: ADVA A, B

В поле A указывается математическое ожидание времени обслуживания. В поле B – разброс времени обслуживания (аналогично блоку GENERATE).

Например: 1. ADVA 7, 2

Транзакт будет оставаться в блоке от 5 до 9 единиц времени.

2. ADVA 5, FN$1

Транзакт будет задержан на время, равное произведению значения функции FN$1 на 5.

6.ASSIGN (присвоить, изменить)

С помощью этого оператора параметрам ТА присваиваются определенные значения.

Формат: ASSI A, B

В поле A записывается имя параметра. Далее могут быть установлены +(-). В поле B – новое значение параметра или изменённое значение.

Примечание. Если в поле A после имени параметра не указаны знаки +(-), параметр принимает значение, указанное в поле B; если после имени параметра стоит «+», то параметр принимает значение (A+B); если «-»,то (A-B).

Например: 1. ASSI 2, 5

Присвоить параметру 2 значение 5.

2. ASSI 1+ , M$i

Добавить к значению параметра 1 время прохождения i-го ТА участка модели.

7.QUEUE (встать в очередь)

Оператор имитирует постановку ТА в очередь.

Формат: QUEU A, B

В поле A устанавливается имя очереди или её номер. В поле B – число одновременно вводимых транзактов в очередь. По умолчанию 1.

8.DEPART (покинуть очередь)

Оператор предназначен для вывода ТА из очереди.

Формат: DEPA A, B

В поле A устанавливается имя очереди. В поле B – число выводимых ТА (по умолчанию 1).

9.RELEASE (освободить устройство, реализовать)

Оператор предназначен для вывода из устройства обслуженного ТА.

Формат: RELE A

В поле A устанавливается имя или номер устройства.

 

 

10.TEST ( сравнение двух СЧА)

Оператор используется для передачи управления (ТА) по результатам сравнения двух СЧА.

Формат: TEST R A, B, C

В поле R устанавливаются условия сравнения

E – « = »; NE – « »; L – « < »; LE – « »; G – « > »; GE – « ».

В полях A, B записываются СЧА, подлежащие сравнению.

Если условие поля R выполнимо, то ТА входит в блок TEST и далее в блок по программе. Если условие не выполнено, ТА пытается войти в блок, указанный в поле C (метка перехода). Если блок C занят, то ТА не заходит в TEST, а ожидает выполнения условия.

11.MARK(отметить)

Формат: MARK A

Блок записывает в параметр, указанный в поле А, значение текущего времени. Если поле А свободно , то вместо времени создания ТА устанавливается текущее время.

Например: 1. MARK

Блок заменяет время входа транзакта в модуль на текущее значение.

2. MARK 3

Блок записывает текущее время в параметр 3.

12.TERMINARE (завершить)

Блок предназначен для уничтожения транзактов, прошедших через модель.

Формат: TERM A

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

Примечание. Если в поле A «пробел», то ТА уничтожается, но при этом содержимое счетчика оператора START не уменьшается. Используется это в тех случаях, если в модели необходимо задать время моделирования Т. Это достигается следующим образом. После оператора TERM с «пробелом» устанавливается группа операторов.

GENE Т

В поле Т записывается время моделирования (момент появления первого ТА).

TERM 1

13.START (начать)

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

Формат: STAR A, B, C

В поле A устанавливается число прогонов модели. В поле B – условие печати результатов. По умолчанию печатается стандартный отчёт. Если стоит NP, печать стандартного отчета отменяется. В поле C указывается число прогонов, через которые осуществляется промежуточная распечатка результатов. Поля оператора START в GPSS World заполняются в пункте меню «Command/ START».

Например: 1. START 400

Выполнить модель до 400 прогонов модели с печатью стандартного отчета.

2. START 100, ,10

Выполнить 100 прогонов модели с выводом отчета через каждые 10 завершений.

Пример моделирования



<== предыдущая лекция | следующая лекция ==>
Функциональные объекты | Технологической системы GPSS World


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.124 сек.