Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций Моделирование систем.doc
Скачиваний:
52
Добавлен:
15.04.2019
Размер:
1.38 Mб
Скачать

7.9.Матрицы

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

имя MATRIX A,B,C,D,E,F,G

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

MYTAB MATRIX ,10,4

определяет матрицу с именем MYTAB, содержащую 10 строк и 4 столбца.

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

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

INITIAL MXj (a,b),значение

Здесь имя и j - соответственно имя и номер матрицы; a и b – номера соответственно строки и столбца, задаваемые константами; значение - присваиваемое элементу матрицы начальное значение, задаваемое также константой.

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

имя MSAVEVALUE A,B,C,D

В поле A указывается имя или номер матрицы, после которого, как и в блоке SAVEVALUE, может стоять знак + или -. В полях B и C указываются номера соответственно строки и столбца, определяющие изменяемый элемент матрицы. В поле D указывается величина, используемая для изменения заданного элемента матрицы. Например:

MSAVEVALUE 5,3,2,X1

MSAVEVALUE MTAB+,P$ROW,P$COL,1

Матрицы имеют единственный СЧА с названием MX, ссылка на который записывается в следующем виде:

MX$имя (a,b)

MXj (a,b)

Здесь имя и j - соответственно имя и номер матрицы; a и b – номера соответственно строки и столбца, задаваемые константами или ссылками на СЧА параметров транзактов. Например:

MX5(2,1)

MX$MTAB(P$ROW,P$COL)

7.10.Функции

Функции служат для отображения зависимостей между двумя СЧА. Основными видами функций в GPSS являются непрерывные (С) и дискретные (D). Функция описывается с помощью множества пар точек - координат. Непрерывная функция воспроизводится в виде ломаной кривой, отрезки которой соединяют соседние точечные значения. Дискретная функция имеет вид ступенчатой кривой.

Функцию описывают оператором FUNCTION. За ней помещают одну или несколько строк, содержащих координатные точки. Оператор имеет следующий вид:

ИМЯ FUNCTION А,В

Где А – СЧА, используемый в качестве аргумента функции, В содержит информацию о ее типе и о количестве точек, в которых задана функция.

Поскольку во многих случаях описываются функции случайного аргумента, в качестве операнда А часто используется СЧА rnj, где j – номер генератора случайных чисел, например: rn1.

Операнд В имеет следующий вид: в качестве префикса используется буква C, или D, а в качестве суффикса – число, соответствующее количеству точек (пар чисел), описывающих функцию.

Строки, содержащие пары чисел (значение аргумента, значение функции) (Xi, Yi), имеют следующий вид:

X1,Y1/X2,Y2/.../Xi,Yi/.../Xn,Yn

Причем, если Xi – случайные числа, обязательно условие: X1 < Х2 <...Xi <...<Хn.