математическое моделирование. Т 1 МАТ. Моделирование. Литература по теме 197 Вопрос Узловые операторы. 201 Вопрос Текст программной модели смо. 202 Вопрос Сборка и запуск исполнительного модуля модели. 205
Скачать 1.51 Mb.
|
modbeg поставить номер узла-очереди, то можно автоматически получать график изменения среднего времени нахождения транзактов в этой очереди. Функция serv (Р1, Р2, Р3, Р4, Р5, Р6, Р7, Р8) описывает узел, имитирующий одно- или многоканальный обслуживающий прибор. Может использовать или не использовать дисциплину обслуживания на основе абсолютных приоритетов. Имеет стек для хранения прерванных транзактов. Функция имеет следующие параметры: Р1- символическое имя узла (строка длиной до 14 символов типа char); Р2- число обслуживающих каналов, l < Р2<32767; Р3- дисциплина обслуживания; возможные значения: abs, используется приоритетная дисциплина, с прерыванием обслуживания менее приоритетного транзакта более приоритетным; при этом после ухода приоритетного транзакта возможно одно из двух: дообслуживание прерванного транзакта с прерванного места; возобновление обслуживания прерванного транзакта заново. none, используется бесприоритетная дисциплина. Р4 - тип функции распределения интервала времени обслуживания транзакта в канале узла, возможные значения: norm - нормальное распределение; unif - равномерное распределение; expo - экспоненциальное распределение; erln - обобщенное распределение Эрланга; beta - треугольное распределение; none -если интервал обслуживания является детерминированной величиной. Р5- величина (типа float), зависящая от типа функции распределения: математическое ожидание интервала времени обслуживания транзакта (при Р4= norm, unif, expo); математическое ожидание одного слагаемого этого интервала (при Р4= erln); минимальное значение интервала (при Р4= beta); постоянная величина этого интервала (при Р4= none). Р6 - величина (типа float), зависящая от типа функции распределения: среднеквадратичное отклонение времени обслуживания (Р4= norm); максимальное отклонение от среднего времени обслуживания (Р4= unif); значение zero (Р4 = expo, none); число слагаемых, распределенных по экспоненциальному закону и входящих в случайный интервал обслуживания (если Р4= erln, то Рб > 0); наиболее вероятное значение интервала времени обслуживания транзакта (при P4=beta). Р7- величина (типа float), зависящая от типа функции распределения: максимально возможное значение интервала времени обслуживания транзакта (P4=beta); значение zero (Р4= norm, unif, expo, erln, none). Р8- номер узла (типа int), в который передается обслуженный транзакт (узел-приемник). Функция term (Р1) описывает узел-терминатор, который удаляет из модели входящий в него транзакт и фиксирует время его существования начиная с момента выхода этого транзакта из генератора. Функция имеет один параметр: Р1- символическое имя узла (строка длиной до 14 символов типа char). Если в качестве параметра Р8 подставить в modbeg номер узла- терминатора, то можно автоматически получать график потока транзактов, поступающих на его вход. Вопрос 4. Сборка и запуск исполнительного модуля модели. Сгенерированный в результате описания модели файл с исходным текстом (<имя модели>.срр) используется в качестве основы для получения работающей программы. Для этого необходимо выполнить следующую последовательность шагов. Создать на жестком диске рабочую папку для будущего проекта. Перенести в рабочую папку файл модели <имя модели>.срр. Открыть приложение Microsoft Visual С++. Создать проект: File \cnv-> Projects -> Win32 Application. В окне Locaton посредством кнопки ... | (Browse) указать путь к файлу модели <модель>. cpp. В окне Project name указать имя проекта (латинскими буквами) и нажать кнопку OK. В открывшемся окне оставить неизменными установку по умолчанию для типа проекта (Empty application) и нажать кнопку OK. 5) Внести в проект файлы, необходимые для построения объектного кода модели (в таблице указаны папки, в которых обычно хранятся файлы):
Вставка выполняется командой Add Files To Folder / Add Files To Project контекстного меню, вызываемого правым щелчком мыши после установки курсора на имя проекта (предварительно должна быть выбрана вкладка д FiieView J в окне проектов). 6) Построить исполняемый файл модели. • Выполняется одним из следующих способов: o Build Rebuild All главного меню Visual Studio. o Нажатием функциональной клавиши F7. o Нажатием значка ы панели инструментов. Если в окне отчета о процессе построения появится сообщение 0 errors, можно запустить программную модель с помощью одного из следующих способов: • Build Execute ModelPro.exe. Нажатием комбинации функциональных клавиш Ctrl + F5. -if' Процесс Pilgrim-5 Нажатием значка * панели инструментов. Установка параметров запуска модели и сам запуск производятся с помощью окна запуска. В частности, если требуется наблюдать график задержки по выбранной при построении графа модели очереди в динамике, то перед запуском программной модели нужно выбрать в меню Результаты пункт Динамика задержек в очереди (рис. 34Рис.). g шщ Настройки Моделирование Результаты Помощь
Рис. 34. Задание динамического отображения очереди Можно также выбрать режим динамического построения графика потока в транзактов в терминаторе (меню Результаты пункт Динамика потока). gimm После установки всех необходимых значений параметров в меню Моделирование нужно выбрать пункт Запуск модели (рис. 35). Процесс Pilgrim-5 Настройки Моделирование Результаты Помощь
Рис. 35. Запуск имитационной модели 140 Из общего меню модельного окна осуществляется также управление режимами трассировки, которая может помочь в отладке модели. В частности, имеется возможность (рис. 35): выйти в режим трассировки после наступления конкретного события; перейти в трассировку, если какой-то транзакт входит в определенный - узел или выходит из него; отслеживать путь определенного транзакта по графу модели; выйти в режим трассировки по показанию модельного таймера. Вопрос 5. Результаты моделирования. Основные результаты запуска программной модели помещаются в таблицу, которая содержится в файле с параметрами задаваемыми оператором modend. На рис. 36 приводится пример таблицы с результатами моделирования для модели СМО:
Рис. 36. Результаты моделирования для модели СМО Строки таблицы представляют собой узлы модели, а столбцы - входные и выходные её параметры. В столбцах записываются:
|