This repository contains the Modelica Language Specification, hosted at https://github.com/modelica/ModelicaSpecification. Development is organized within the Modelica Association Project Language (MAP-Lang) according to the project rules.
Modelica® is a language for modeling of cyber-physical systems, supporting acausal connection of components governed by mathematical equations to facilitate modeling from first principles. It provides object-oriented constructs that facilitate reuse of models, and can be used conveniently for modeling complex systems containing, e.g., mechanical, electrical, electronic, magnetic, hydraulic, thermal, control, electric power or process-oriented subcomponents.
Version | Link | Published | Changes |
---|---|---|---|
3.7-dev | Master branch HTML PDF | not yet | Search |
3.6 | 3.6 branch HTML PDF | 2023 | Search HTML |
3.5 | 3.5 branch HTML PDF | 2021 | HTML |
3.4 | 3.4 branch HTML PDF | 2017 | HTML |
3.3rev1 | 2014 | HTML | |
3.2rev2 | 2013 | HTML | |
3.2rev1 | 2012 | HTML | |
3.3 | 2012 | HTML | |
3.2 | 2010 | HTML | |
3.1 | 2009 | HTML | |
3.0 | 2007 | HTML | |
2.2 | 2005 | HTML | |
2.1 | 2004 | HTML | |
2.0 | 2002 | HTML | |
1.4 | 2000 | HTML | |
1.3 | 1999 | HTML | |
1.2 | 1999 | HTML | |
1.1 | 1998 | HTML | |
1.0 | 1997 |
- If you find an error and are not certain that you can correct it, first check that it is not already reported and then open an issue describing it in detail - focusing on why it should be changed.
- If you are confident that you can correct the issue, fork this repository and create a pull-request and in the pull-request explain the issue and the correction; you will also have to sign a CLA.
- Significant extensions are handled as Modelica Change Proposals (MCPs). This can start as a simple description of the proposed extension. It will then be worked on to have a rationale explaining how the change help users, and demonstrating that it can be implemented efficiently; and finally a pull-request with the changes.
For more details, see the Development Process. A list of MCPs can be found here: RationaleMCP.
CLA: Contributor's license agreement. (Details to follow.)
How to edit and generate final documents
- Read the style guide.
- For online editing you can use www.overleaf.com (details to follow)
- The pdf-documents are generated with pdflatex, which is part of most LaTeX installations, we used http://miktex.org/download
- The HTML-documents are generated with LaTeXML. That is more complicated to install - and can optionally be skipped:
- First you need perl, we used http://strawberryperl.com/
- And then the official LaTeXML package (0.8.5 or later): http://dlmf.nist.gov/LaTeXML/get.html#SS4.SSS0.Px1 or https://github.com/brucemiller/LaTeXML
- The exact commands are in the Makefile
It is also possible to get a preview in the pull request. There will be a link to the status check, which checks that the documents can be generated and gives you an option to download them.