Function Inlining in Modelica Models
Additional info: Key=papa_etal2012mathmod project=langopt,LCCC-modeling
The equation-based Modelica language allows the modeller to specify custom functions. The body of a function is an algorithm that contains procedural code to be executed when the function is called. This language feature is useful for many applications; however, the insertion of a function often prevent model optimizations that require the model to be formulated in purely declarative form by equations only. This paper discusses several non-trivial cases in which the function call and the corresponding algorithmic code can be transformed into an equivalent purely equation-based model, thus allowing further optimization. The inlining algorithms presented in the paper go well beyond the state of the art in commercial and open-source Modelica tools.
- Technology and Engineering
Vienna International Conference on Mathematical Modelling 2012