Теория систем автоматического регулирования

       

Графический интерфейс программ математического моделирования динамических систем


Графический интерфейс — это самое "слабое место" программ математического моделирования динамических систем. Попробуем разобраться с тем, что может понимать русскоязычный специалист под скромным английским термином диаграмма (diagram), если с помощью неё требуется представить описание модели системы на том или ином уровне в графической форме:

Блок-схемы или около десятка именованных направленных графов.

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

Гибридные карты состояния или импульсные потоковые графы, графы переходных состояний.

Графы алгоритмов программ.

Структурные схемы, функциональные схемы, мнемосхемы.

И многое другое.

Разнообразие впечатляет. Однако цель перечисления не в потрясении воображения читателя, а в том, чтобы подвести к мысли о том, что задача создания графического интерфейса непроста и не соответствует квалификации разработчиков моделирующих программ. Конечный пользователь должен понимать, что без кооперации усилий нескольких фирм эту задачу не решить (спрос пользователя рождает предложение). С задачей качественного отображения всего перечисленного, в любых масштабах, на любых устройствах ввода вывода, могут справиться лишь редакторы векторной графики — это их прямая задача. Дополнительным требованием к претенденту на её выполнение является открытость объектной архитектуры и наличие документации.

Как бы ни было велико разнообразие способов графического описания моделей, четко просматриваются лишь две техники моделирования: структурное моделирование и мультидоменное физическое моделирование. Для поддержки структурного моделирования требуется решатель систем дифференциальных уравнений и блок-схемы [3]. Для поддержки мультидоменного физического моделирования требуется итерационный решатель систем алгебро-дифференциальных уравнений и схемы физические принципиальные [4]. Другие виды графов либо мало эффективны, либо являются предками направленных и ненаправленных графов соответственно. Моделирование же управляемое событиями не является новой техникой моделирования, а лишь дополняет названные совокупностью методов переключения и синхронизации фрагментов моделей в процессе симуляции, обеспечивая тем самым программный контроль над потоком. Т.е. программный контроль над процессом прогонки массива MathBlock[i] или его фрагментов в режиме симуляции:

Листинг 3

Пока (не случилось любое событие) Циклически исполнять фрагмент модели

for (i=0; i < numBlock-10; i++) MathBlock[i]->Calc(); Если (случилось такое событие) Исполнить фрагмент модели

for (i=numBlock-10; i < numBlock; i++) MathBlock[i]->Calc(); ... ' Использован синтаксис языка Си, дабы не усложнять список интерфейсов в табл. 2



Содержание раздела