OPTIMICA Compiler Toolkit 1.2 is part of Modelon’s 2018.1 release.
New versions of Modelon libraries are sold and distributed directly from Modelon, as well as approved resellers.
- A Modelica compiler compliant with the Modelica language specification 3.2.2 and supporting the full Modelica Standard Library version 3.2.2 build 3. The compiler generates Functional Mock-up Units (FMUs), including Model Exchange and Co-simulation as well as version 1.0 and 2.0 of the FMI standard.
- Dynamic simulation algorithms for integration of large-scale and stiff systems. Algorithms include CVode and Radau among others.
- Dynamic optimization algorithms based on collocation for solving optimal control and estimation problems. Dynamic optimization problems are encoded in Optimica, an extension to Modelica.
- A derivative-free model calibration algorithm to estimate model parameters based on measurement data.
- A non-linear solver for solving large-scale systems of equations arising, e.g., in steady-state applications. Efficient and robust steady-state problem formulation is enable by Hand Guided Tearing, which enables user specified selection of residuals and iteration variables.
- Support for encrypted and licensed Modelica libraries.
- Support for state-of-the-art numerical algorithms for dynamic optimization, notably the HSL solver MA57 that provides improved robustness and performance.
- A compiler API is available to extract information, e.g., packages, models, parameters and annotations, from Modelica libraries.
- Scripting APIs in Python and MATLAB® are available to script automation of compilation, simulation and optimization of Modelica and FMI models.
The OPTIMICA Compiler Toolkit is available in two versions:
- OPTIMICA Compiler Toolkit Base version which supports compilation of FMUs and dynamic simulation in Python and MATLAB® (with the addition of FMI Toolbox for MATLAB®) as well as dynamic optimization based on open source solvers.
- OPTIMICA Compiler Toolkit Full version which in addition supports steady-state computations, including Hand-Guided Tearing in Modelica models and non-linear solver integration in MATLAB®.
In addition, a license option for the linear solver MA57 is available for industrial grade dynamic optimization applications.
- Full String support
- Added functionality for obfuscating variable names in FMU
- Added functionality for hiding internal variables in the FMU
- Changed default FMI version to FMI 2.0 when compiling FMUs through Python
- Updated bundled GCC compiler to GCC-TDM-5.1 which enables support for 64bit FMUs using GCC
- Support for 64bit Python
- Support for steady-state computations from Python
- Changed default result format to a binary format when simulating FMUs from Python
- Support for OPC communication
- Improved Hand-Guided Tearing by allowing initial parameter variability in hold expressions
Compiler API Updates
- Improved access control for encrypted libraries
- Improved library license checks
- Improved handling of primitive types and enumerations
- Improved SVG rendering
- Added a representation of modifiers which enables the retrieval of modification points for classes and components