Имитационное моделирование на языке GPSS. Методическое пособие по дисциплине "Компьютерное моделирование". Алтаев А.А. - 35 стр.

UptoLike

Составители: 

35
S1MULATE Начало моделирования
GENERATE 25,4
SPLIT 8,THAT Разделение обоймы и шариков
SEIZE 1
ADVANCE 4,1 Контроль обоймы
RELEASE 1
TRANSFER ,FINAL
THAT SEIZE 2
ADVANCE 2,1 Контроль шариков
RELEASE 2
GATHER 8
FINAL ASSEMBLE 9 Комплектация
SEIZE 3
ADVANCE 4,2 Сборка
RELEASE 3
TERMINATE 1
START 80
END 3
Блок MATH предназначен для синхронизации продвижения двух транзактов одного
ансамбля, движущихся по разным путям. Для синхронизации необходимы два блока
MATCH, находящиеся в соответствующих местах блок-диаграммы и называемые
сопряженными. В поле А каждого
блока MATCH указывается метка сопряженного ему
блока. При подходе транзакта к блоку MATCH проверяется наличие в сопряженном ему
блоке транзакта из того же ансамбля. Если в обоих блоках имеются транзакты одного
ансамбля, то они одновременно пропускаются через блоки MATCH. Если в сопряженном
блоке нет ни одного транзакта данного ансамбля, то поступивший транзакт будет
ожидать
поступления транзакта того же ансамбля в сопряженный блок MATCH, после чего они
оба будут пропущены в следующие за блоками MATCH блоки.
Одна и та же пара блоков MATCH может одновременно синхронизировать любое
число пар транзактов из разных ансамблей. Транзакты одного ансамбля также могут
синхронизировать в любом числе пар блоков MATCH. Следует отметить, что блок
MATCH может быть сопряжен сам себе. При этом его действие будет аналогично
действию блока GATHER с параметром 2 в поле А. Рассмотрим соответствующие
примеры использования блока MATCH
ААА MATCH BBB
…..
ВВВ MATCH ААА
(в этом случае транзакт ААА будет ожидать прихода члена того же ансамбля в блок
MATCH с меткой ВВВ);
ССС MATCH CCC
(здесь транзакт будет
ждать прихода члена того же ансамбля в этот же блок MATCH).
Пример 2.8. Построить программу модели прохождения 500 деталей. Детали
поступают с интервалом времени (300 ± 50) единиц. Обработку производят двое рабочих,
которые выполняют по две операции. После первой операции, выполняемой первым
рабочим со временем (70 ± 20) единиц и вторым со временем (60 ± 30) единиц,
производится операция сверки, время выполнения которой
принимается равным нулю.
После сверки выполняется вторая операция первым рабочим со временем (20 ± 10) единиц
и вторым — (50 ± 20) единиц. Затем третий рабочий производит сборку изделия из этих
             S1MULATE             Начало моделирования
             GENERATE 25,4
             SPLIT     8,THAT     Разделение обоймы и шариков
             SEIZE     1
             ADVANCE 4,1          Контроль обоймы
             RELEASE   1
             TRANSFER ,FINAL
THAT         SEIZE     2
             ADVANCE 2,1    Контроль шариков
             RELEASE   2
             GATHER    8
FINAL        ASSEMBLE 9     Комплектация
             SEIZE     3
             ADVANCE 4,2    Сборка
             RELEASE   3
             TERMINATE 1
             START     80
             END       3

   Блок MATH предназначен для синхронизации продвижения двух транзактов одного
ансамбля, движущихся по разным путям. Для синхронизации необходимы два блока
MATCH, находящиеся в соответствующих местах блок-диаграммы и называемые
сопряженными. В поле А каждого блока MATCH указывается метка сопряженного ему
блока. При подходе транзакта к блоку MATCH проверяется наличие в сопряженном ему
блоке транзакта из того же ансамбля. Если в обоих блоках имеются транзакты одного
ансамбля, то они одновременно пропускаются через блоки MATCH. Если в сопряженном
блоке нет ни одного транзакта данного ансамбля, то поступивший транзакт будет ожидать
поступления транзакта того же ансамбля в сопряженный блок MATCH, после чего они
оба будут пропущены в следующие за блоками MATCH блоки.
   Одна и та же пара блоков MATCH может одновременно синхронизировать любое
число пар транзактов из разных ансамблей. Транзакты одного ансамбля также могут
синхронизировать в любом числе пар блоков MATCH. Следует отметить, что блок
MATCH может быть сопряжен сам себе. При этом его действие будет аналогично
действию блока GATHER с параметром 2 в поле А. Рассмотрим соответствующие
примеры использования блока MATCH
   ААА MATCH               BBB
       …..
   ВВВ      MATCH          ААА
   (в этом случае транзакт ААА будет ожидать прихода члена того же ансамбля в блок
MATCH с меткой ВВВ);
       ССС MATCH CCC
   (здесь транзакт будет ждать прихода члена того же ансамбля в этот же блок MATCH).
   Пример 2.8. Построить программу модели прохождения 500 деталей. Детали
поступают с интервалом времени (300 ± 50) единиц. Обработку производят двое рабочих,
которые выполняют по две операции. После первой операции, выполняемой первым
рабочим со временем (70 ± 20) единиц и вторым со временем (60 ± 30) единиц,
производится операция сверки, время выполнения которой принимается равным нулю.
После сверки выполняется вторая операция первым рабочим со временем (20 ± 10) единиц
и вторым — (50 ± 20) единиц. Затем третий рабочий производит сборку изделия из этих

                                                                                   35