Improved Modelica compliance of the compiler front-end, including support for if equations and inner/outer declarations
Optimized performance and memory utilization of the compiler front-end
A new state selection algorithm with support for user defined state selections
A new function inlining algorithm for conversion of algorithmic functions into equations
Improvements to the CasADi-based collocation optimization algorithm, including support for terminal constraints
The following compliance improvements have been made:
Support for if equations
Support for inner/outer declarations
Expressions in der() operator
Function call equations in when equations
Limited support for String parameters. String parameters are now supported in the compiler front-end, although they are discarded in the code generation.
Also, many bug fixes and performance improvements in the compiler are included in this release.
There is a new function inlining algorithm for conversion of algorithmic functions into equations.
The compiler now support adding extra libraries as files, which makes it easier to compile a model using a structured library
not in the MODELICAPATH. Both Python functions compile_jmu and compile_fmu support this. For example, compiling A.B.Example from a library A in directory LibDir with compile_fmu, this can now be written as:
compile_fmu('A.B.Example', 'LibDir/A')Bengt-Arne Andersson
Christian Andersson
Tove Bergdahl
Magnus Gäfvert
Fredrik Magnusson
Jesper Mattsson
Tobias Mattsson
Iakov Nakhimovski
Jon Sten
Johan Ylikiiskilä
Johan Åkesson