Матриці зберігаючих комірок. Оголошення та ініціалізація матриць

Поняття зберігаючої комірки застосовується і до матриць. Це дає можливість упорядкувати значення, які потрібно зберегти у вигляді матриць. Матриця має бути попередньо описана за допомогою оператора MATRIX, що має наступний формат:

Name MATRIX А,В,С,[D],[E],[F],[G]

Мітка Name визначає назву матриці й повинна бути назвою (не може бути числом). Операнд А не використовується, оскільки залишений для сумісності з попередніми версіями GPSS. Операнди В, С, D, E, F, G можуть бути тільки цілими додатніми числами.

Операндом В задається число рядків матриці, а операндом С – число стовпців матриці. Операнди D, E, F, G задають максимальну кількість елементів у третьому, четвертому, п'ятому й шостому вимірах відповідно. Наприклад, команда

ObrM MATRIX,8,10

визначає матрицю з назвою ObrM, що містить 8 рядків і 10 стовпців.

Матриці мають єдиний СЧА з назвою MX, за допомогою якого можна звертатися до будь-якого елемента матриці. Значеннями рядків і стовпців можуть бути назви, цілими числами й параметрами транзактів. Наприклад:

МХ2(10,8)

MX$ObrM(P1,P$Hdd)

У першому прикладі визначається елемент матриці номер 2, що перебуває на перетині 10-го рядка й 8-го стовпця. У другому прикладі для визначення елемента матриці з назвою ObrM використовуються значення параметра номер 1 і параметр з назвою Hdd транзакта.

Якщо мітка Name матриці описується не назвою, а номером, то у цьому випадку для присвоєння матриці номера замість назви потрібно до запису команди визначення матриці використовувати команду EQU. Наприклад:

Mobr EQU 2

Mobr MATRIX,5,5

У даному прикладі назва матриці Mobr замінено на номер 2. Тоді до матриці потрібно звертатися МХ2. Якщо в команді MATRIX замість назви Mobr відразу записати число 2, то при компіляції виникне зупинка через помилку “Пропущена мітка оператора”.

Перед початком моделювання значення всіх елементів матриці дорівнюють нулеві. Для присвоєння початкових (ненульових) значень елементам матриці використовується оператор INITIAL. Наприклад:

INITIAL MX2(5,5),155

INITIAL MX$Mobr(2,8),-10.5

INITIAL MX$Transp(8,2),Koef

INITIAL BBC,55


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: