OpenModelica — универсальное свободное открытое программное обеспечение для моделирования, симуляции, оптимизации и анализа сложных динамических систем. Наиболее полно среди открытых проектов покрывает функционал Matlab Simulink и Dymola. Основано на языке Modelica.

Активно развивается Open Source Modelica Consortium, некоммерческой неправительственной организацией. Open Source Modelica Consortium является совместным проектом RISE SICS East AB и Линчёпингского университета.

OpenModelica используется в академической среде и на производстве. В промышленности используется в области оптимизации энергоснабжения, автомобилестроении и водоочистке, робототехнике.

Включает блоки

механики электрики электроники электродвигатели гидравлики термодинамики элементы управления и т. д.

По своим возможностям приближается к таким вычислительным средам как Matlab Simulink, Scilab xCos, имея при этом значительно более удобное представление системы уравнений исследуемого блока (фактически без существенного преобразования и без сведения к форме Коши, остаётся лишь задать начальные условия и записать уравнения в скоростях).

Имеется возможность компилировать код блоков для дальнейшего внедрения в Matlab и Scilab xCos, а также подключать Matlab-блоки к OpenModelica.

Полностью совместима с библиотеками Modelica.

Инструменты и Приложения

Компилятор

OpenModelica Compiler (OMC) является компилятором Modelica, транслирующим код Modelica в код языка C, включая классы, функции и переменные из программ пользователя или библиотек. Компилятор также включает интерпретатор Modelica для интерактивного использования и вычисления выражений (аналогами являются Scilab, xMaxima и т. д.). Поддерживаются решатели ОДЕ и дифференциальных уравнений в частных производных.

Редактор OpenModelica Connection Editor — открытый и свободный редактор с графическим интерфейсом для создания, правки и симуляции моделей на языке Modelica и отображения результатов в графическом виде (графики или визуализация движения).

Командная строка OpenModelica Shell (OMShell) — интерактивная командная строка, которая парсит и интерпретирует команды и выражения Modelica для вычисления, симуляции, построения графиков и т. п. Имеется история команд и функция автодополнения.

Записная книжка OpenModelica Notebook (OMNotebook) является легковесным аналогом OMEdit, используется преимущественно для оформления документации и обучения. Так же как в командной строке, возможно производить вычисления, симуляцию и построение графиков с отображением внутри записной книжки.

OpenModelica Python Interface (OMPython) OMPython — соответственно, предоставляет возможность проведения вычислений динамических систем на языке Python.

Modelica Development Tooling (MDT)

Плагин для Eclipse.

См. также Modelica Dymola JModelica.org Wolfram SystemModeler SimulationX Simulink

Примечания

Категория:Декларативные языки программирования Категория:Объектно-ориентированное программирование