ВУЗ:
Составители:
116
программном модуле, который в процессе моделирования осуществляет по-
следовательный вызов (активизацию) отдельных подпрограмм (процедур),
соответствующих отдельным модулям, и управляет обменом сигнальными
массивами между ними. В простейших программах с жесткими связями меж-
ду модулями взаимная синхронизация между ними осуществляется тем, в
каком порядке будут записаны в тексте программы вызовы соответствующих
процедур.
В
решении проблемы прогона многомодульных моделей возможны два
крайних подхода:
1. Последовательный прогон всех модулей на каждом шаге Δt. На каж-
дом шаге Δ
t последовательно (порядок активизации - это отдельная пробле-
ма) активизируется каждый модуль, его модельное время продвигается
("оживляется") на один шаг, при этом в межмодульном обмене фактически
участвуют одноэлементные (по времени) массивы. Другими словами, на каж-
дом шаге Δ
t модули обмениваются по одному элементу из каждого сигналь-
ного массива. Весь интервал модельного времени последовательно покрыва-
ется путем многократного повторения таких элементарных шагов.
Достоинство: продвижение сигнальных массивов через модули осуще-
ствляется минимальными порциями (по одному элементу), что позволяет с
максимальной точностью (при выбранном Δ
t) отследить распространение
переходных процессов вдоль цепочки последовательно соединенных моду-
лей. Это важно при наличии петель обратной связи.
Недостаток - большой объем вычислительных затрат на диспетчериза-
цию (переключение вызовов) модулей, так как эту работу приходится делать
для каждого элементарного шага Δ
t.
2. Последовательный прогон всех модулей на всем интервале модель-
ного времени t
M
. В отличие от предыдущего случая, здесь каждый модуль
активизируется только по одному разу и для него прогоняются все шаги мо-
дельного времени (от начала до конца). После полного прогона одного моду-
ля, активизируется следующий и т.д. При этом модули обмениваются сиг-
нальными массивами, длина которых соответствует всему интервалу модель-
ного времени.
Достоинство: минимизируются затраты машинного времени на диспет-
черизацию модулей - за все время прогона многомодульной модели каждый
модуль активизируется только по одному разу.
Недостаток - возникновение нежелательных эффектов в моделях с об-
ратными связями. У некоторых модулей в качестве входов используются вы-
ходы других модулей, которые к этому времени еще не были активизированы
(см., например, Рис. 4.5). Причем избежать такой коллизии нельзя при любом
порядке активизации модулей.
Страницы
- « первая
- ‹ предыдущая
- …
- 114
- 115
- 116
- 117
- 118
- …
- следующая ›
- последняя »