Modelica Documentation

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
 AdvancedNoise A library with additional noise modules compatible to the Modelica standard library 1.0.1
 AixLib 0.9.1
 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.1.0
 BioChem 1.0.2
 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 2015.12
 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 7.0.0
 Chemical Physical Chemistry 1.4.0-alpha2
 Complex Complex number with overloaded operators 4.0.0
 ComplexLib Library for steady-state analysis of AC circuits within phasor domain, version 1.0
Correlation defines correlation between two uncertainty variables
 DESLib 1
 DisHeatLib 1.2
 DriveControl Library to demonstrate control of electrical drives 3.1.0
DynamicSelect select static or dynamic expressions in the annotations
 EMOTH Electric Mobility OTH 1.4.0
 ElectricalEnergyStorage Library for electric energy storages 3.2.2
 ElectroMechanicalDrives Library for the simulation of electro mechanical drives and vehicles 2.2.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 2.6.0
 FCSys Modelica fuel cell library 0.2.6
 FCSysTest Library to test components of FCSys
 FMITest Library of models to test connected FMUs in a Modelica tool
 FailureModes A collection of examples of failure modes for Modelica models 1.2.1
 FastBuildings Low order building simulation models 0.0
 FaultTriggering Library for Fault Triggering 0.6.6
 Greenhouses The Greenhouses Modelica Library
 HanserModelica Educational open source library on <html><a href="">Modelica, electrical engineering and polyphase electrical machines</a></html> 1.1.0
 HelmholtzMedia Data and models of real pure fluids (liquid, two-phase and gas)
 IBPSA Library with models for building energy and control systems 3.0.0
 IDEAS Integrated District Energy Assessment Simulation 2.1.0
 IdealizedContact Idealized Contact Library 0.2.0
 IndustrialControlSystems Modelica Industrial Control Systems Library 1.1.0
 InstantaneousSymmetricalComponents Sensors
 KeyWordIO Read and write data files with key words 0.9.0
 LinearMPC Modelica predictive control library (by the Institute of Automatic Control, RWTH Aachen University) 1
 MEV Models of the Multiple Emergency Ventilator 1.0.1
 MVEMLib 1.0.1
 ManualTracking Modelica manual tracking library
 MessagePack MessagePack is an efficient binary serialization format for multiple languages. 0.1.1
 Modelica Modelica Standard Library - Version 4.0.0 4.0.0
 ModelicaADS Library for socket communication in Modelica using the ADS protocol (
ModelicaAdditions Collection of Modelica libraries of DLR 1.5
 ModelicaByExample 0.5.
 ModelicaCompliance A semantics compliance suite for the Modelica language 3.2
 ModelicaDEVS Discrete Event Systems Library 1
 ModelicaReference Modelica Reference 4.0.0
 ModelicaServices ModelicaServices (OpenModelica implementation) - Models and functions used in the Modelica Standard Library requiring a tool specific implementation 4.0.0
 ModelicaTest Library to test components of package Modelica - Version 4.0.0 4.0.0
 ModelicaTestOverdetermined 3.2.2
 Modelica_DeviceDrivers Modelica_DeviceDrivers - A collection of drivers interfacing hardware like input devices, communication devices, shared memory, analog-digital converters and else 2.0.0-dev
 Modelica_EnergyStorages Library for electric energy storages 3.2.1
 Modelica_LinearSystems2 Modelica_LinearSystems2 (version 2.4.0-rc.1) - Analysis, Synthesis and Modeling of Continuous and Discrete Linear Systems 2.4.0
 Modelica_Noise Modelica_Noise version 1.0-Beta.1 (Library for random numbers and noise signals; now included in the Modelica Standard Library 3.2.2) 1.0 Beta.1
 Modelica_Requirements Modelica_Requirements (Version 0.6) - Defining requirements formally and checking them when simulating 0.6
 Modelica_StateGraph2 Modelica_StateGraph2 (Version 2.0.3) - Modeling of continuous-time state machines 2.0.3
 Modelica_Synchronous Modelica_Synchronous (version 0.93.0) - Basic synchronous input/output control blocks that are triggered by clocks 0.93.0
 NcDataReader2 Library to read interpolated data from netCDF files and DAP servers 2.5.0
 Nuclear nuclear reactor simulations
 ObjectStab ObjectStab - A Modelica Library for Power System Stability Studies 1.1 Dev
 ObsoleteModelica3 Library that contains components from Modelica Standard Library 2.2.2 that have been removed from version 3.0 3.2.3
 ObsoleteModelica4 Library that contains components from Modelica Standard Library 3.2.3 that have been removed from version 4.0.0 4.0.0
 OpenBLDC Simulation base package
 OpenHPL 1.1.1
 OpenHydraulics A free Modelica library that can be used to model hydraulic components and circuits. 1.0
 OpenIPSL Open-Instance Power System Library 2.0.0-dev
OpenModelica OpenModelica internal definitions and scripting functions OpenModelica 1.18.0~dev-216-g91c7501
 Optimisers Model-based optimisation library 0.1
 PNlib 2.2
 PVSystems A Modelica library for photovoltaic system and power converter design 0.6.3
 PhotoVoltaics 1.6.0
 PhotoVoltaics_TGM 1.6.0
 Physiolibrary Modelica library for Physiology (version 2.3.2-beta) 2.3.2-beta
 Physiomodel Mammalian physiology model 1.0.1
 PlanarMechanics Library to model 2-dimensional, planar mechanical systems 1.5.0
 PlanarMechanicsTest "Library to test components of package Modelica - Version 1.4.1" 1.5.0
 PowerFlow Library for electrical power flow calculations 0.3
 PowerGrids 1.0.0
 PowerSystems Library for electrical power systems 1.0.0
 PraxisSimulationstechnik Library of example and solution models from Peter Junglas' book "Praxis der Simulationstechnik"
 QCalc Modelica units based on quantity calculus
 QCalcTests Tests for QCalc
QSSFluidFlow Library for modeling of quasi-steady-state fluid flow with constant fluid density.
 RealTimeCoordinationLibrary Components for defining clocks, time constraints, and invariants. 1.0.4
 SMPS Building blocks for modeling of switched - mode power converters.
 ScalableTestSuite A library of scalable Modelica test models 1.11.5
 Servomechanisms Servomechanism
 SiemensPower SiemensPower 2.2
 SolarTherm 0.2
 Soltermica Solar thermal systems Modelica library
 Spot Power-systems SPOT 0.706.1
 SpotExamples Spot examples 0.706.1
 StreamConnectors A simple library to learn the basics of stream connectors
 SystemDynamics System Dynamics Library (Version 2.1.1) 2.1.1
 TestDerivative Test of functions with user defined derivatives
 ThermalSeparation Thermal Separation Library 0.2
 ThermoPower Open library for thermal power plant simulation 3.1
 ThermoSysPro 3.2
 VehicleInterfaces VehicleInterfaces Library (Version 1.2.5) - Interface definitions and architectures for vehicle system modeling 1.2.5
 WasteWater Modelica WasteWater Library 2.1.0
 Wavelet Modelica Wavelet Library
 WindPowerPlants Library of wind power plants 1.3.0
 XogenyTest Stand-alone library to facilitate assertion-based testing of Modelica code 1.1
abs Absolute value
acos Inverse cosine (-1 <= u <= 1)
activeState Return true if instance of a state machine is active, otherwise false
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
 iPSL iTesla Power System Library 1.1.0
identity Identity matrix of given size
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
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
print Prints to stdout, useful for debugging. OpenModelica extension
product Product of all array elements
reinit Reinitialize state variable
rem Integer remainder of the division of two Real numbers
sample Returns the interval between the previous and present tick of the clock of its argument
scalar Returns a one-element array as scalar
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
wbEHPTlib Electric and Hybrid Power train library Rev March 2019
 wbEHVpkg Package containing basic EV models
zeros Returns a zero array

Builtin Environment

Name Description Version
MetaModelica MetaModelica Language Extensions

Generated at 2021-04-12T01:01:31Z by OpenModelicaOpenModelica 1.18.0~dev-216-g91c7501 using GenerateDoc.mos. Offline version (tar.xz) (zip).