Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МОДЕЛИРОВАНИЕ ПРОЦЕССОВ И СИСТЕМ / Консп_лекц_МПиС_бак_очн_14г(нужно от 16 стр.).doc
Скачиваний:
118
Добавлен:
21.03.2016
Размер:
2.3 Mб
Скачать

7. Непрерывное имитационное моделирование

7.1. Общие положения

При непрерывном имитационном моделировании поведение исследуемого объекта обычно отображается, помимо прочего, набором уравнений - алгебраических, разностных или дифференциальных. Уравнения помещаются в особую процедуру STATEв порядке, определяемом языком программирования и позволяющем производить

Инициализация переменных

Планирование событий

Извлечение первого события

Обновление TNOW

Обработка события

Отчет по прогону

Итоговый отчет

Нет

Да

Да

Нет

Планированиепоступления в следующий узел

Нет

Освобождение действия

Да

Да

Нет

Рис. 6.1. Алгоритм работы процессно-ориентированной модели

вычисления, не приводящие к неопределенностям.

Зависимые переменные модели составляют группу переменных состояния (структурных переменных) SS(I), имеющих начальное значениеSSL(I). РасчетSS(I) ведется либо по типуSS(I) =f(SSL(I),TNOW) (общая алгебраическая форма), либо в виде разностного уравнения:SS(I) =SSL(I)+ +DTNOW*RATE(I), гдеRATE(I) - темп (скорость) изменения переменнойSS(I). В дифференциальных уравнениях вместоRATE(I) используется переменнаяDD(I) - производная отSS(I) - с начальным значениемDDL(I) в моментTTLAS(конец предыдущего шага времени):

SS(I) =SSL(I) +,

где DTFUL- шаг интегрирования.

На любом временном отрезке интегрирования DTFULобычно процедураSTATEвызывается несколько раз для уточнения производнойDD(I), поэтому модельное время продвигается с шагомDTNOW, составляющим часть отDТFUL. Последний, в свою очередь, зависит от ряда условий. Поэтому в общем случаеDTNOW=f(DТFUL), аDDFUL=min[DTACC,TTSAV-TTLAS,TNEXT-TTLAS], гдеDTACC- шаг интегрирования, гарантирующий точность (зависит от метода численного решения уравнений) и меняющийся, с учетом текущей погрешности расчетов, в пределах отDTMINдоDTMAX(задаются пользователем);TTSAV- момент сбора статистических данных;TNEXT- время свершения ближайшего основного события.

Если в модели возможны структурные события, их время возникновения предсказать невозможно. Поэтому DDFULне учитывает указанные события и их времена. Однако после проведения всех требуемых расчетов шагаDTFULв случае выполнения условий возникновения событий интервалDTFULвычитается изTNOW, уменьшается, и проверка условий продолжается, как было изложено ранее. Следует обратить внимание на то, что при неопределенности инициализации переменных (например, они еще не известны) в правой части выражения

DDFUL=min[TTSAV-TTLAS,TNEXT-TTLAS] всем неизвестным переменным необходимо задать максимально возможные значения.

Если численное интегрирование не используется, продвижение модельного времени выполняется по какому-либо упрощенному алгоритму, не учитывающему DDFUL, например, путем последовательного наращиванияTNOWс шагомDTNOW=min[TTSAV-TTLAS,TNEXT-TTLAS]. В более простых ситуациях шагDTNOWможет быть постоянным.