Разработка средств моделирования систем
- TRIANGULAR(Stream,Min,Max,Mode) и возвращает строку содержащую описание этой функции с уже заданными пользователем параметрами.
- Метод stringfUNIFORM() задает параметры функции UNIFORM(Stream,Min,Max) и возвращает строку содержащую описание этой функции с уже заданными пользователем параметрами.
4.2 Класс GPSSOperatori
- Описываются переменные целого типа nF, nST, n
Fas, nQ, ответственные за номер используемой функции, номер многоканального устройства, номер одноканального устройства, номер очереди соответственно.
- МетодGENERATE задаёт параметры оператора GENERATE и возвращает строковое значение этого оператора с заданными пользователем значениями параметров.
На первом этапе определяется промежуток времени между появлениями транзактов. Он может быть: постоянным, случайным, заданным функцией, зависящим от функции, а также не задан.
При промежутке времени между появлениями транзактов заданном функцией или зависящем от функции, определяется, какой будет функция: стандартной или пользовательской, в зависимости от этого вызываются функцииFStandи FUNCTIONсоответственно.
На втором этапе определяется время задержки появления первого транзакта. Оно может быть: задано или не задано.
На третьем этапе определяется предельное число транзактов.Оно так же может быть: задано или не задано.
На четвёртом этапе определяется приоритет транзактов. Он может быть: задан или не задан.
- Метод ADVANCE задаёт параметры оператора ADVANCE и возвращает строковое значение этого оператора с заданными пользователем значениями параметров.
В методе определяется время задержки транзакта. Оно может быть: постоянным, случайным, заданным функцией, зависящим от функции.
При времени задержки транзакта заданном функцией или зависящем от функции, определяется, какой будет функция: стандартной или пользовательской, в зависимости от этого вызываются функцииFStandи FUNCTIONсоответственно.
- Метод ENTER возвращает строку содержащую операторы языка имитационного моделирования GPSS, описывающие многоканальное устройство.
На первом этапе в файл GPSStext.txt (файл для записи сгенерированного текста программы на языке имитационного моделирования GPSS) записывается описание многоканального устройства, то есть его имя и количество каналов.
На втором этапе определяется, на каком шаге программы пользователь желает получить статистику: нахождение транзакта в очереди перед ОУ, нахождение транзакта в ОУ, общее время обработки транзакта, а также возможен вариант без сбора статистики.
На третьем этапе записывается оператор захвата многоканального устройства с названием этого устройства и количеством захвачиваемых каналов.
На четвёртом этапе происходит переход на генерацию текста оператора ADVANCE .
На пятом этапе записывается оператор освобождения многоканального устройства с названием этого устройства и количеством освобождаемых каналов.
- Метод SIZE возвращает строку содержащую операторы языка имитационного моделирования GPSS, описывающие одноканальное устройство.
На первом этапе определяется, на каком шаге программы пользователь желает получить статистику: нахождение транзакта в очереди перед ОУ, нахождение транзакта в ОУ, общее время обработки транзакта, а также возможен вариант без сбора статистики.
На втором этапе записывается оператор захвата одноканального устройства с названием этого устройства.
На третьем этапе происходит переход на генерацию текста оператора ADVANCE .
На четвертом этапе записывается оператор освобождения одноканального устройства с названием этого устройства.
- Метод FUNCTION задаёт параметры оператора FUNCTION и возвращает строковое значение этого оператора с заданными пользователем значениями параметров.
В файл GPSStext.txtна первом этапе записывается номер генератора случайного числа; на втором этапе тип функции; на третьем число точек и их координаты.
- Метод Fstandartопределяет, какая стандартная функция будут вызываться, то есть обращается в класс FuncStandart, и возвращает строку, содержащую описание этой функции.
4.3 Класс GPSSText
- Переменные oper, ukazat, matrix типа vectorнаходящиеся в области private,определяют операторы принадлежащие узлам, указатели на узлы, матрицу переходов от одного узла к другому соответственно.
- Метод Matrix генерирует матрицу переходов от одного узла к другому, а также определяет, какие операторы принадлежат узлам.
На первом этапе определяется оператор на соответствующем узле.
На втором этапе в соответствии с номером узла, определяется, какая строка будет генерироваться в матрице.
Если узел содержит генератор, одноканальное либо многоканальное устройство, то в столбец с номером узла, в который переходит дальше транзакт, записывается 1, в остальные столбцы записывается 0.
Если узел вероятностный, то в столбцы с номерами узлов, на которые совершается переход, записывается соответствующая вероятность, в остальные столбцы записываются нули.
Если узел является терминатором, то в соответствующую строку записываются все нули.
Причем, при каждом описании узла, в вектор operзаписывается оператор, соответствующий узлу.
- Метод Programma окончательно генерирует текст программы, написанной на языке имитационного моделирования GPSS.
На первом этапе вызывается метод Matrix, который заполняет матрицу переходов и вектор операторов.
На втором этапе определяются узлы, на которых будут стоять указатели.
На третьем генерируется программа в соответствии с матрицей, операторами и указателями.
В конце программы выводится текст, подтверждающий корректное ее завершение, а также название файла, хранящего текст программы, написанной на языке имитационного моделирования GPSS.
5 ИСПЫТАНИЕ И ТЕСТИРОВАНИЕ СИСТЕМЫ
Для испытания и тестирования системы мы рассмотрели четыре контрольных модели.
С помощью программы, написанной на MicrosoftVisualStudioC++, мы получили GPSSтекст и сохранили его в файлGPSStext.txt.
Запустив сгенерированную программув GPSSWorld мы получили отчёт.
Рассмотрим тестовые четыре модели.
Модель 1(рисунок 5.1)
2
1
Рисунок 5.1
Система включает в себя два узла:
1 узел – генератор с постоянным законом поступления заявок и с заданной задержкой первой заявки (транзакта).
2 узел – одноканальное обслуживающее устройство с постоянным законом распределения времени обслуживания заявок.
Другие рефераты на тему «Программирование, компьютеры и кибернетика»:
Поиск рефератов
Последние рефераты раздела
- Основные этапы объектно-ориентированного проектирования
- Основные структуры языка Java
- Основные принципы разработки графического пользовательского интерфейса
- Основы дискретной математики
- Программное обеспечение системы принятия решений адаптивного робота
- Программное обеспечение
- Проблемы сохранности информации в процессе предпринимательской деятельности