modparc Documentation Status Updates

modparc is a Modelica parser in Python based on parser combinator.


Install the package from PyPI:

$ pip install modparc

To parse a Modelica source file “”:

import modparc
model_definition = modparc.parse_file("")

To list all the equations in the model_definition instance:

all_equations ='Equation')
for equation in all_equations:
    print(equation.code())  # The code of the equation as string

To get the name of the model loaded:

print(  # get the name of the stored class
print(model_definition.class_type())  # get the type of the class


  • Experimentally parses Modelica Standard Library 3.2.1
  • Search element of a certain class

Known Issues

  • Handling tokenization of Q-IDENT and comments, which comes first?
  • Assertion syntax not defined in Modelica specification
  • Default recursion depth is not enough for long vector literals
  • Cyclic import is neccessary for the Modelica syntax definition


This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

The test cases used code from the `ModelicaByExample library (MIT License by Michael Tiller)`_.