Внутреннее представление гибридной модели
Переход от математической к компьютерной модели требует минимальных дополнительных знаний предметного пользователя об особенностях системы моделирования. В отличие от известных отечественных и зарубежных систем моделирования, ИСМА отличается простой и естественной формой представления моделей и не требует от пользователя дополнительных знаний в области программирования, в частности, объектноориентированного подхода.
При реализации новой архитектуры инструментальной среды разработано внутреннее представление модели гибридной системы (HSM, hybrid system model). Данное представление является результатом работы интерпретаторов с входных языков системы. На рисунке 2.15 приведена UML-диаграмма [6] классов HSM.
Рисунок 2.15 - Диаграмма классов внутреннего представления ГС
Модель (HMModel) представляет собой базовый класс HSM и содержит два элемента: таблицу переменных (HMVariableTable) и автомат [39] гибридной системы (HMStateAutomata). Таблица переменных является хранилищем всех переменных модели (в рамках глобального состояния). Переменная модели (HMVariable) - это обобщенное понятие, охватывающее всевозможные сущности, представляющие собой источник числовых значений. Выделяются следующие переменные, унаследованные от HMVariable: уравнения (HMEquation) и функции (HMFunction).
Все уравнения объединяет наличие правой части - объекта класса выражение (HMExpression). В случае дифференциального уравнения (HMDerivativeEquation) задаются начальные условия в виде константы (HMConst).
Константы (HMConst) являются тоже разновидностью уравнений. Обусловлено это тем, что при определении константы возможно задавать значение через выражение (вычисляемое на этапе семантического анализа). Частный случай констант - безымянные константы (HMUnnamedConst).
Данный класс введен для того, чтобы быть оберткой для числовых значений, встречающихся в модели (как в выражениях, так и в описательных конструкциях).Во всех уравнениях активно используются выражения (HMExpression). Они представляют упорядоченую последовательность из токенов выражения (EXPToken). Токенами выражения могут быть как операнды (EXPOperand), так и операторы (EXPOperator). Оператор (EXPOperator) - это инструкция, описывающая некоторую операцию над одним или несколькими операндами. Выделится три типа операторов: арифметический, логический и сравнение. Кроме того операторы делятся по арности - количеству операндов с которыми они работают. Используются два типа арности: унарный и бинарный. Каждый оператор имеет приоритет, определяемый в соответствии с таблицей 2.1.
Таблица 2.1 - Приоритет операций
| Приоритет | Название группы операторов | Обозначения |
| 1 | Унарные арифметические | + - |
| 2 | Унарный логический | ! |
| 3 | Умножение, деление | * / |
| 4 | Сложение, вычитание | + - |
| 5 | Операции сравнения | >>=
Еще по теме Внутреннее представление гибридной модели:
-
Автоматизированные информационные системы -
Математическое и программное обеспечение вычислительных машин -
-
Биология -
Ветеринария -
География -
Деловое общение -
Журанлистика -
Информатика, вычислительная техника и управление -
История -
Конфликтология -
Криминалистика -
Литературоведение -
Маркетинг -
Медицина -
Политология -
Право РФ -
Право України -
Психология -
Реклама, PR -
Религиоведение -
Технические науки -
Физика -
Филология -
Философия -
Финансы -
Экология -
Экономика -
Юриспруденция -
|