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.
|3.6-dev||Master branch HTML PDF||not yet|
|3.5||3.5 branch HTML PDF||2021|
|3.4||3.4 branch HTML PDF||2017|
More Info on released versions: https://www.modelica.org/documents
- 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.
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.