Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
gpss_Методич_пособие_Дорошенко.doc
Скачиваний:
6
Добавлен:
01.04.2025
Размер:
363.52 Кб
Скачать

Initial Ячейка1, Значение1,…, Ячейка к, ЗначениеК

Изменение значения ячейки можно выполнить применением блоков

SINCREMENT A,B,C SDECREMENT A,B,C

где А – номер ячейки, В – добавляемое или соответственно вычитаемое значение, С – тип ячейки.

Примеры.

INITIAL XH$1,77,XF$2,555,XL$3,3.81; первой (полусловной) ячейке присваивается начальное значени 77, второй (полнословной) – целое 555, третьей – вещественное 3.81.

SAVEVALUE 2+, P$3; вторая ячейка увеличивается на значение третьего параметра транзакта, вошедшего в данный блок.

SAVEVALUE 3-, FN$EXP,XL; третья ячейка уменьшается на значение функции EXP.

SAVEVALUE 5,3; значение 3 заносится в полнословную ячейку 5.

SINCREMENT 1,2; первая ячейка увеличивается на 2.

SDECREMENT Р$2,XH$3,H; ячейка, номер которой равен значению второго параметра транзакта, уменьшается на значение третьей ячейки.

SINCREMENT 4,V$5,XL; четвертая ячейка (в которой чисо представлено в форме с плавающей точкой) увеличивается на значение пятой переменной.

SDECREMENT 6,FN$EXP; шестой ячейке присваивается значение функции EXP, которая должна быть описана по соответствующей форме.

2.7. ТАБЛИЦЫ

Для сбора статистических данных о различных отчетах модели и для представле-ния их в стандартной табличной форме используют таблицы. Занесение информации в таблицу осуществляется в момент входа очередного транзакта в блок TABULATE A,B, где А – имя или номер таблицы, B – вес, указывающий, сколько раз значение должно быть занесено во взвешенную таблицу (по умолчанию В=1).

Описание структуры таблицы и типа данных (СЧА), заносимых в таблицу, осуществляется в разделе объявления данных по форме

num TABLE A, B, C, D, E

где num – имя или номер таблицы (совпадает с полем А блока TABULATE A,B) ;

А – поле, в котором может быть записан либо аргумент таблицы, т.е. заносимая в таблицу величина и аргумент таблицы может сопровождаться знаком "-" (минус), либо признаки режима формирования данных в таблице: режим IA –промежуточный интервал; режим RT – интенсивность прихода;

B – верхняя граница нижнего интервала;

C – ширина интервала;

D – число интервалов;

E – интервал времени ( только для RT - режима ).

При входе транзакта в блок TABULATE, которой ссылается на таблицу num, аргумент А этой таблицы вычисляется и заносится в эту таблицу. При этом если за операндом А стоит знак "-", то в таблицу заносится разность двух соседних значений табулируемой величины. Если в поле А указан режим IA, в таблицу заносится интервал времени между приходом двух транзактов в блок TABULATE.

Стандартные числовые атрибуты таблиц:

TB$j - среднее значение фиксируемой в таблице j переменной;

TC$j - число входов в таблицу j;

TD$j - стандартное среднеквадратичное отклонение табулируемой переменной.

Примеры.

Tab1 TABLE P$3,0,5,10

Когда транзакт входит в блок TABULATE, который ссылается на таблицу Tab1, в нее заносится соответствующее значение параметра 3 этого транзакта.

Tab2 TABLE P$3-,0.5,10

Когда транзакт входит в блок TABULATE, который ссылается на таблицу Tab2, в нее заносится разность между значениями параметра 3 текущего и предшествующего транзакта.

Tab3 TABLE IA,0,5,10

Когда транзакт входит в блок TABULATE, который ссылается на таблицу Tab3, в нее заносятся интервалы времени между последовательными приходами текущего и предыдущего транзакта.

2.8. ФУНКЦИИ И ПЕРЕМЕННЫЕ

Функции служат для отображения зависимостей между двумя величинами. В GPSS имеется группа из восьми стандартных (встроенных) функций RN$i, i = 1,...,8, при обращении к каждой из которых вычисляется непрерывная случайная величина, обозначаемая далее через Х, заданная на интервале (0, 1) и имеющая равновероятное распределение. Эти функции можно использовать для получения значений случайных величин, распределенных по некоторому другому закону. Зависимость произвольно задаваемой случайной величины Y от Х следует в GPSS-программе представить в виде конечной последовательности значений пар "аргумент Х, функция У" по такой форме:

Имя_функции FUNCTION RN$i, тип_ функции [; комментарий]

Последовательность пар координат (точек), разделяемых знаком "/"

В GPSS предусмотрено два типа функций: непрерывные ( Сn ) и дискретные (Dn), где n - количество точек, задаваемых парами координат Х,Y. Графически непрерывная функция может быть представлена в виде последовательности прямолинейных отрезков, которые соединяют соседние точки на плоскости Х,Y, т.е. для непрерывной функции методом линейной интерполяции определяется значение Y в любой точке заданного интервала значений Х. Дискретная функция определена только в задаваемых точках.

Примеры.

F1 FUNCTION Р$3,D4; дискретная функция F1, зависит от параметра 3 транзакта

0,5/1,9/2,4/3,10; параметр 3 принимает значения 0,1,2,3, функция F1 – значения 5,9,4,10

*

F2 FUNCTION RN$1,C3; непрерывная функция F2 зависит от значений RN$1

.2,300/.5,700/1,1000; при RN$1, принимающем значения от 0 до 0.2, F2 получает

* значения от 0 до 300 в соответствии с линейной зависимостью Y от X: Y=1500*X.

*

PP FUNCTION V$3,D3; дискретная функция PP зависит от переменной номер 3

2,V$4/3,V$5/6,FN$PUAS; при V$3=2 значения функции PP вычисляются

*по формуле, записываемой для переменной V$4, при V$3=3 – по формуле, *записываемой для переменной V$5, при V$3=6 функция РР принимает

*значение функции PUAS.

Переменные применяются для определения значений по формулам, состоящим из СЧА или СЛА и соответствующих операций. В GPSS-программе целочисленные и булевы переменные описываются оператором VARIABLE, а переменные с плавающей точкой – оператором FVARIABLE, которые имеют формат:

Имя_переменной VARIABLE формула

В формуле могут использоваться операции сложить +, вычесть -, умножить *, разделить /, разделить по модулю @, найти отношение =, >, <, >=, <=.

Примеры.

11 FVARIABLE XH$1*FN$EXP/XH$2+1

15 VARI XH$6-XH$8

V1 VARIABLE XH$1*(P$1-1)

V2 VARI P$2+FN$NORM

V3 FVAR S$MON*XF$5/10;

V4 FVAR V$V2+3.5; переменная V4 вычисляется как сумма значения переменной V2 и числа 3.5.

5 FVAR FN$EXP*3.14

Примечание.

В приведенных выше примерах имена переменных V1,V2,V3,V4 должны быть объявлены. Переменные в первой, второй и в последней строке не объявляются и задаются номерами 11,15, 5.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]