Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по самому GPSS - для студентов.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
153.76 Кб
Скачать

Сохраняемые величины и матрицы сохраняемых величин

Для хранения в памяти отдельных числовых значений и массивов таких значений используются сохраняемые величины и матрицы сохраняемых величин.

Сохраняемые величины  могут использоваться в модели для хранения исходных данных, которые надо изменять при различных прогонах модели, промежуточных значений и результатов моделирования. В начале моделирования все сохраняемые величины устанавливаются равными 0. Для установки отличных от 0 начальных значений сохраняемых величин используется оператор INITIAL, имеющий следующий формат:

INITIAL X$имя, значение

Initial Xj, значение

Здесь  имя  и  j  - соответственно имя и номер сохраняемой величины, а  значение  0- присваиваемое ей начальное значение (константа).

Для изменения сохраняемых величин в процессе моделирования служит блок SAVEVALUE (сохранить величину), имеющий следующий формат:

  SAVEVALUE A, B

В поле A указывается номер или имя сохраняемой величины, в которую записывается значение операнда B. Если в поле A после имени (номера) сохраняемой величины стоит знак + или -, то значение операнда B добавляется или вычитается из текущего содержимого сохраняемой величины. Например:

SAVEVALUE 5,Q$LINE

SAVEVALUE NREF+,1

Сохраняемые величины имеют единственный СЧА с названием X, значением которого является текущее значение соответствующей сохраняемой величины.

Изменим пример на стр. 18 так, чтобы исходные данные модели были заданы сохраняемыми величинами и результат моделирования фиксировался также в сохраняемой величине:

INITIAL X$TARR,100

INITIAL X$TSRV,60

STO2 STORAGE 2

GENERATE X$TARR,30

ENT1 GATE SNF STO2,REFUS

ENTER STO2

ADVANCE X$TSRV,25

LEAVE STO2

OUT TERMINATE 1

REFUS TRANSFER .1,,COUT

ADVANCE 250,30

TRANSFER ,ENT1

COUT SAVEVALUE NREF+,1

TRANSFER ,OUT

 Матрицы  сохраняемых величин дают возможность упорядочить сохраняемые значения в виде матриц m*n, где m - число строк, n – число столбцов матрицы. Каждая матрица должна быть перед началом моделирования определена с помощью оператора MATRIX (определить матрицу), имеющего следующий формат:

  MATRIX A,B,C,[D],[E],[F],[G]

Поле A оператора не используется и сохранено в GPSSW для совместимости со старыми версиями GPSS. В полях B и C указываются соответственно число строк и столбцов матрицы, задаваемые константами. Например, оператор

MTAB MATRIX ,10,2

определяет матрицу с именем MTAB, содержащую десять строк и два столбца.

В начале моделирования элементы всех определенных матриц устанавливаются равными 0. Для установки отличных от 0 начальных значений отдельных элементов матриц используется оператор INITIAL, имеющий следующий формат:

INITIAL MX$имя ( 1a,b 0), значение