25 October 2026
Validated against the Modelica reference results
How ModOnda is compared with the Modelica Standard Library's published reference results, example by example, what the numbers mean, and where the references themselves look wrong.

A simulator that is fast but wrong is worse than useless. So every release of ModOnda is checked against the one set of answers the Modelica community agrees on: the reference results that ship with the Modelica Standard Library.
What is compared
The Modelica Standard Library (MSL) 4.1.0 has 534 example models that come with reference results, published by the Modelica Association. Every one of them is simulated in ModOnda and compared with its reference, signal by signal.
The comparison uses a tolerance tube: an example matches when its signals stay inside a band around the reference curve. The tube is 2e-3 wide, in the style of the csv-compare convention, and each example gets 120 seconds to finish.
The result
On the latest full run:
| Result | Examples |
|---|---|
| Match the reference | 517 |
| Run, but differ from the reference | 16 |
| Stop with an error | 0 |
| Hit the 120 second limit | 1 |
That is 517 of 534 matching (96.8%), and 533 of 534 running to the end. The numbers change as the solvers do, and they can go down as well as up when a fix for one model moves another.
Some packages are fully matched: Modelica.Media matches 21 of 21 examples and Modelica.Clocked 77 of 77. Some are not. Modelica.Fluid is the weakest, at 16 of 23, because most start-up transients of its larger systems still fail or differ. We would rather you read that here than find it out in your own model.
When the reference is the one that looks wrong
Seven of the examples that differ are documented exceptions. They run to the end, and the evidence says the reference results are off, not the simulation. For example:
- In
Electrical.Analog.Examples.Lines.CompareLineTrunks, OpenModelica 1.27.1 agrees with ModOnda on the travelling-wave front at 716.3 µs, so the reference is the outlier. - In
Fluid.Examples.AST_BatchPlant.Test.TankWithEmptyingPipe1, the reference is about 34 tube widths from the exact closed-form solution, while ModOnda matches it.
These seven are not counted as matches, and they are not hidden behind a wider tolerance. The reasoning for each is on the Modelica Standard Library page of the documentation, so you can disagree with it.
Check it yourself
You do not have to take our word for any of this. Every example is in the package browser under Modelica, and each opens with one click:
Press Simulate, plot the variables, and compare them with the Modelica Standard Library's own documentation of the example. If you know one of these models better than we do and you think a verdict is wrong, tell us.