About
Introduction
Elements
Interpreter
Example 1
Example 2
Example 3
Example 4
Example 5
Example 6
Example 7
Regimes example
Example n
Canonical form
Discussion

Proof of concept implementation

The implementation will process and run models defined using the proposed elements. It is mainly focused on model processing and validation. In particular, as well as handling type and component inheritance, it performs dimensionality checks on all equations to identify any inconsistencies.

It has a limited ability to run models, but only with the simplest possible (forward Euler) integration scheme. It doesn't do any symbolic manipulations and expressions are evaluated by visiting their parse trees.

After running a model, it opens a window to display the results and only exits when this window is closed.

Download

It is all in Java, packaged as an executable jar file:

To run it you need a java runtime environment. Then from the command line:
java -jar lems-x.x.x.jar model.xml
where model.xml is the file containing the main model.

The first example, example1.xml is a self-contained model with definitions, components and the simulation settings all in one file. After downloading, this model can be run by executing:
java -jar lems-x.x.x.jar example1.xml

The other models use multiple files. They can all be downloaded together as examples.zip which unpacks to create a lems-examples folder from which the examples can be run.