This is a listing of builtin Modelica functions, miscellaneous Modelica libraries stored in a git repository. There is also documentation for OpenModelica-specific scripting.
Note that not all libraries are supported or have been tested. Feel free to add bug reports either to OpenModelica (for compiler bugs) or to the GitHub projects for enhancements or bugs in the libraries. Older libraries may contain broken links and images (only libraries with modelica:// links produce good documentation). The Modelica Standard Library is the best supported package in OpenModelica.
Name | Description | Version |
---|---|---|
ADGenKinetics | Implementation of generalized kinetics for modeling biochemical reaction networks | |
ADMSL | ||
AES | ||
ATplus | ||
AdvancedNoise | A library with additional noise modules compatible to the Modelica standard library | 1.1.0 |
AixLib | 1.3.2 | |
AlgebraTestSuite | Nonlinear algebraic equation system benchmarks | |
Annex60 | Library with models for building energy and control systems | 1.0.0 |
ApproxSpline | Approximation spline library | 1.0.1 |
Arduino | Library to simulate sketches on a virtual Arduino Uno and to connect models to real-world circuits using the Firmata protocol | 0.3.0 |
AssertionLevel | ||
BLDC | Brushless DC drives | 1.9.0 |
BidiDCDC | Bidirectional DC/DC converter | 1.0.0 |
BioChem | 1.1.2 | |
BondGraph | ||
BondLib | Modelica library for Bond Graph modeling | 2.3 |
BrineProp | Media models for p-h-T-rho-eta properties of aqueous solutions of multiple salts and gases | 0.5.6 |
BuildSysPro | EDF's Modelica library for modelling buildings and energy systems | 3.4.0 |
BuildingControlLib | Library for building control | 0.1.0 |
BuildingSystems | Library for building energy and plant simulation | 2.0.0-beta |
Buildings | Library with models for building energy and control systems | 10.0.0 |
BusinessSimulation | A library for modeling & simulation of dynamical systems in the social sciences, e.g., business, economics, and ecology using the System Dynamics metaphor | 2.1.1 |
Chemical | Physical Chemistry | 1.4.0 |
ClaRa | Simulation of Clausius-Rankine Cycles | 1.8.1 |
ClaRa_Obsolete | ClaRa obsolete models package | 1.8.1 |
Clock | ||
Complex | Complex number with overloaded operators | 4.0.0 |
ComplexLib | Library for steady-state analysis of AC circuits within phasor domain, version 1.0 | |
ConPNlib | ||
Connections | ||
Correlation | defines correlation between two uncertainty variables | |
Credibility | Credibility Library - Version 0.1.0 | 0.1.0 |
DESLib | 1 | |
DataFiles | Functions for reading and writing data files (empty version) | 0.0.0 |
DeltaRobot | Library for modelling of Delta Robots | 1.0.2 |
DeployStructLib | ||
Design | Design (empty version) | 0.0.0 |
DisHeatLib | 1.2 | |
Distribution | ||
DriveControl | Library to demonstrate control of electrical drives | 4.0.0 |
DrivingCycles | Driving cycles of vehicles | 0.1.0 |
DroneLibrary | Modelica libray to model drones(UAVs) | 1.0.0 |
DymolaCommands | DymolaCommands (empty version) | 0.0.0 |
DynamicSelect | select static or dynamic expressions in the annotations | |
EHPTexamples | Package containing basic EV models | |
EHPTlib | Electric and Hybrid Power train library Rev Jan 2023 | 2.1.4 |
EMOTH | Electric Mobility OTH | 1.9.0 |
ElectricalEnergyStorage | Library for electric energy storages | 3.2.2 |
ElectroMechanicalDrives | Library for the simulation of electro mechanical drives and vehicles | 3.0.0 |
ExtendedPetriNets | Library to model timed, stochastic Petri nets and state transition diagrams, extended version. | |
ExternData | Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR, Excel XLS/XLSX or XML files | 3.0.3 |
ExternalLibrary | ||
ExternalMedia | 4.0.0 | |
ExternalMemoryLib | ||
ExternalObject | ||
ExtremumSeeking | 0.9.0 | |
IBPSA | Library with models for building energy and control systems | 3.0.0 |
Modelica | Modelica Standard Library - Version 4.0.0 | 4.0.0 |
ModelicaAdditions | Collection of Modelica libraries of DLR | 1.5 |
ModelicaServices | ModelicaServices (OpenModelica implementation) - Models and functions used in the Modelica Standard Library requiring a tool specific implementation | 4.0.0 |
Modelica_DeviceDrivers | Modelica_DeviceDrivers - A collection of drivers interfacing hardware like input devices, communication devices, shared memory, analog-digital converters and else | 2.1.1 |
Modelica_StateGraph2 | 2.0.2 | |
Modelica_Synchronous | Modelica_Synchronous (version 0.92.1) - Basic synchronous input/output control blocks that are triggered by clocks | 0.92.1 |
NcDataReader2 | Library to read interpolated data from netCDF files and DAP servers | 2.5.1 |
OMC_ARGS | ||
OMC_CLOCK | ||
OMC_NO_ARGS | ||
OMC_NO_CLOCK | ||
OpenModelica | OpenModelica internal definitions and scripting functions | OpenModelica 1.22.0~dev.02-2-ge84afdd |
SDF | Scientific Data Format (empty version) | 0.0.0 |
StateSelect | ||
Subtask | ||
TILMedia | TILMedia-Library with thermophysical properties of Fluids and Solids | 1.8.1 ClaRa |
Uncertainty | ||
UserInteraction | UserInteraction (empty version) | 0.0.0 |
VehicleInterfaces | VehicleInterfaces Library (Version 2.0.1) - Interface definitions and architectures for vehicle system modeling | 2.0.1 |
abs | Absolute value | |
acos | Inverse cosine (-1 <= u <= 1) | |
activeState | Return true if instance of a state machine is active, otherwise false | |
actualStream | ||
array | Constructs an array | |
asin | Inverse sine (-1 <= u <= 1) | |
assert | Check an assertion condition | |
atan | Inverse tangent | |
atan2 | Four quadrant inverse tangent | |
backSample | First activation of clock is shifted in time before activation of u | Modelica 3.3 |
cardinality | Number of connectors in connection | Deprecated |
cat | Concatenate arrays along given dimension | |
ceil | Round a real number towards plus infinity | |
change | Indicate discrete variable changing | |
classDirectory | Non-standard operator | Dymola / MSL 2.2.1 |
cos | Cosine | |
cosh | Hyperbolic cosine | |
cross | Cross product of two 3-vectors | |
delay | Delay expression | |
der | Derivative of the input expression | |
diagonal | Returns a diagonal matrix | |
div | Integer part of a division of two Real numbers | |
edge | Indicate rising edge | |
exp | Exponential, base e | |
fill | Returns an array with all elements equal | |
firstTick | Returns the interval between the previous and present tick of the clock of its argument | |
floor | Round a real number towards minus infinity | |
getInstanceName | Modelica 3.3 | |
hold | Conversion from clocked discrete-time to continuous time | Modelica 3.3 |
homotopy | Modelica 3.2 | |
identity | Identity matrix of given size | |
inStream | ||
initial | True if in initialization phase | |
initialState | Define inital state of a state machine | |
integer | Returns the largest integer not greater than x. The argument shall have type Real. The result has type Integer. [Note, outside of a when-clause state events are triggered when the return value changes discontinuously.]. | |
interval | Returns the interval between the previous and present tick of the clock of its argument | |
linspace | Real vector with equally spaced elements | |
log | Natural (base e) logarithm (u shall be > 0) | |
log10 | Base 10 logarithm (u shall be > 0) | |
matrix | Returns the first two dimensions of an array as matrix | |
max | ||
min | ||
mod | Integer modulus of a division of two Real numbers | |
ndims | Number of array dimensions | |
noClock | Clock of y=Clock(u) is always inferred | Modelica 3.3 |
noEvent | Turn off event triggering | |
ones | Returns a one array | |
outerProduct | Outer product of two vectors | |
pre | Refer to left limit | |
previous | Access previous value of a clocked variable | Modelica 3.3 |
Prints to stdout, useful for debugging. | OpenModelica extension | |
product | Product of all array elements | |
promote | ||
pure | Modelica 3.4 | |
reinit | Reinitialize state variable | |
rem | Integer remainder of the division of two Real numbers | |
rooted | ||
sample | Returns the interval between the previous and present tick of the clock of its argument | |
scalar | Returns a one-element array as scalar | |
semiLinear | ||
shiftSample | First activation of clock is shifted in time | Modelica 3.3 |
sign | Sign of real or integer number | |
sin | Sine | |
sinh | Hyperbolic sine | |
size | Returns dimensions of an array | |
skew | The skew matrix associated with the vector | |
smooth | Indicate smoothness of expression | |
spatialDistribution | Not yet implemented | Modelica 3.3 |
sqrt | Square root | |
subSample | Conversion from faster clock to slower clock | Modelica 3.3 |
sum | Sum of all array elements | |
superSample | Conversion from slower clock to faster clock | Modelica 3.3 |
symmetric | Returns a symmetric matrix | |
tan | Tangent (u shall not be -pi/2, pi/2, 3*pi/2, ...) | |
tanh | Hyperbolic tangent | |
terminal | True after successful analysis | |
ticksInState | Returns the number of clock ticks since a transition was made to the currently active state | |
timeInState | Returns the time duration as Real in [s] since a transition was made to the currently active state | |
transition | Define state machine transition | |
transpose | Transpose a matrix | |
vector | Returns an array as vector | |
zeros | Returns a zero array |
Name | Description | Version |
---|---|---|
MetaModelica | MetaModelica Language Extensions |