- 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.
- 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®.