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

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

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

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

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

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

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

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

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

Как бы ни было велико разнообразие способов графического описания моделей, четко просматриваются лишь две техники моделирования: структурное моделирование и мультидоменное физическое моделирование. Для поддержки структурного моделирования требуется решатель систем дифференциальных уравнений и блок-схемы [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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: