OpenModelica

OpenModelica
Тип Моделирование, симуляция, оптимизация систем
Разработчик Open Source Modelica Consortium (OSMC)
Написана на C, C++, MetaModelica
Операционные системы Linux, Windows, OS X
Последняя версия 1.22.2 (21 февраля 2024; 10 месяцев назад (2024-02-21))
Репозиторий github.com/OpenModelica/OpenModelica
Лицензия OSMC Public License, EPL, GPL (free software)
Сайт openmodelica.org
Логотип Викисклада Медиафайлы на Викискладе

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

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

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

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

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

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

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

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

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

Компилятор

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

Редактор

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

Командная строка

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

Записная книжка

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

OpenModelica Python Interface (OMPython)

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

Modelica Development Tooling (MDT)

Плагин для Eclipse.

См. также

Примечания

  1. Administrator Welcome to OpenModelica - OpenModelica (брит. англ.). openmodelica.org. Дата обращения: 24 мая 2017. Архивировано 14 июля 2018 года.
  2. OpenModelica/OpenModelica (англ.). GitHub. Дата обращения: 24 мая 2017. Архивировано 3 марта 2018 года.
  3. «OSMC Home page». Дата обращения: 25 мая 2019. Архивировано 25 декабря 2017 года.
  4. Svensk forskning för hållbar tillväxt| RISE. Дата обращения: 25 мая 2019. Архивировано 25 мая 2019 года.
  5. ABB Power Plant optimization. Дата обращения: 25 мая 2019. Архивировано 19 апреля 2018 года.
  6. Wolfram modeler. Дата обращения: 25 мая 2019. Архивировано 9 июля 2015 года.
  7. Mike operations. Дата обращения: 25 мая 2019. Архивировано 25 мая 2019 года.
  8. Advanced Interactive OpenModelica Compiler (OMC) - OpenModelica. Дата обращения: 25 мая 2019. Архивировано 1 ноября 2020 года.
  9. Adeel, Asghar, Syed; Sonia, Tariq. Design and Implementation of a User Friendly OpenModelica Graphical Connection Editor (англ.) : journal. — 2010.
  10. Administrator OpenModelica Connection Editor (OMEdit) - OpenModelica (брит. англ.). openmodelica.org. Дата обращения: 24 мая 2017. Архивировано 6 июня 2017 года.