OpenModelica
Utvecklare | Open Source Modelica Consortium (OSMC) |
---|---|
Stabil frisättning | 1.19.2 / 9 juli 2022
|
Förvar | |
Skrivet i | C , C++ , MetaModelica |
Operativ system | Linux , Windows och OS X |
Typ | Dynamisk simulering och optimering |
Licens | OSMC Public License, EPL , GPL ( fri programvara ) |
Hemsida |
OpenModelica är en fri och öppen källkodsmiljö baserad på modellspråket Modelica för modellering, simulering, optimering och analys av komplexa dynamiska system. Denna programvara är aktivt utvecklad av Open Source Modelica Consortium, en ideell, icke-statlig organisation. Open Source Modelica Consortium drivs som ett projekt av RISE SICS East AB i samarbete med Linköpings universitet .
OpenModelica används i akademiska och industriella miljöer. Industriella applikationer inkluderar användningen av OpenModelica tillsammans med proprietär mjukvara inom områdena kraftverksoptimering, fordonsindustri och vattenrening.
Verktyg och applikationer
OpenModelica Compiler (OMC)
OpenModelica Compiler (OMC) är en Modelica -kompilator som översätter Modelica till C-kod, med en symboltabell som innehåller definitioner av klasser, funktioner och variabler. Sådana definitioner kan vara fördefinierade, användardefinierade eller erhållna från bibliotek. Kompilatorn inkluderar också en Modelica-tolk för interaktiv användning och utvärdering av konstanta uttryck. Delsystemet inkluderar också faciliteter för att bygga simuleringskörbara filer kopplade till utvalda numeriska ODE- eller DAE-lösare. OMC:n är skriven i MetaModelica, ett enhetligt ekvationsbaserat semantiskt och matematiskt modelleringsspråk och är bootstrapped .
OpenModelica Connection Editor (OMEdit)
OpenModelica Connection Editor är ett grafiskt användargränssnitt med öppen källkod för att skapa, redigera och simulera Modelica-modeller i text- och grafiska lägen. OMEdit kommunicerar med OMC genom ett interaktivt API, begär modellinformation och skapar modeller/kopplingsdiagram baserat på Modelica-anteckningarna. Implementeringen är baserad på C++ och Qt-biblioteket .
OpenModelica Shell (OMShell)
OpenModelica Shell (OMShell) är ett interaktivt kommandoradsgränssnitt som analyserar och tolkar kommandon och Modelica-uttryck för utvärdering, simulering, plottning etc. Sessionshanteraren innehåller också enkla historikfaciliteter och komplettering av filnamn och vissa identifierare i kommandon.
OpenModelica Notebook (OMNotebook)
OpenModelica Notebook (OMNotebook), är en lättviktsredigerare i Mathematica -stil för Modelica som implementerar interaktiv WYSIWYG -förverkligande av Literate Programming, en form av programmering där program integreras med dokumentation i samma dokument.
OMNotebook används främst för undervisning och gör det möjligt att blanda hierarkiskt strukturerad text med celler som innehåller Modelica-modeller och uttryck. Dessa kan utvärderas, simuleras och plottas med resultaten som visas direkt i OMNotebook.
OpenModelica Python Interface (OMPython)
OMPython är ett Python-gränssnitt som gör det möjligt för användare att komma åt modellerings- och simuleringsmöjligheterna hos OpenModelica från Python. Den använder CORBA (omniORB) eller ZEROMQ för att kommunicera med OpenModelica scripting API.
OpenModelica Matlab Interface (OMMatlab)
OMMatlab är ett Matlab-gränssnitt som ger åtkomst till modellerings- och simuleringsmöjligheterna för OpenModelica från Matlab. Den använder ZEROMQ för att kommunicera med OpenModelicas kompilator-API.
Modelica Development Tooling (MDT)
MDT är ett Eclipse -plugin som integrerar OpenModelica-kompilatorn med Eclipse. Den tillhandahåller en redigerare för avancerad textbaserad modellredigering med kodhjälp. MDT interagerar med OpenModelica-kompilatorn genom ett befintligt CORBA- baserat API och används främst i utvecklingen av OpenModelica-kompilatorn.