Improved Python user interaction functions
Improvements in compiler front-end
Support for sensitivity analysis of DAEs using Sundials
Introduced new model concept, jmu-models.
Support for enumerations
Added support for enumerations to the same extent as Integers, except that arrays indexed with enumerations are not supported.
Systems which are structurally singular now generates an error message. Also, high-index systems, which are not yet supported, are reported as structurally singular systems.
A matching algorithm is used to automatically add initial equations to obtain a balanced DAE initialization system. If too
few initial equations are given, the algorithm will set the
fixed attribute to true for some of the differentiated variables in the model.
Introduced new model class
jmodelica.jmi.JMUModel which replaced
jmodelica.fmi.FMIModel changed name to
set_value have changed to
set, which have also been introduced for
Introduced JMU files which are compressed files containing files created during compilation.
Introduced new method
jmodelica.jmi.compile_jmu which compiles Modelica or Optimica models to JMUs. These JMUs are then used when creating a
JMUModel which loads the model in a Python object.
Removed possibility to compile models directly in high-level functions, initialize, simulate and optimize. Instead
compile_jmu should be used.
optimize are no longer functions under
jmodelica but methods of
New objects for options to
optimize have been introduced. The
solver_args parameters have therefore been removed. The options from
solver_args can now be found in the options object. Each algorithm for
optimize have their own options object.
Changed how the input trajectories are handled. The trajectories now have to be connected to an input variable as a 2-tuple. The first argument should be a list of variables or a single variable. The second argument should be a data matrix with the first column as the time vector and the following columns corresponding to the variables in the first argument.
Sensitivity calculations have been implemented when using the solver IDA from the Assimulo package. The sensitivity calculations are activated with the the option:
opts['IDA_options']['sensitivity'] = True
which calculates sensitivities of the states with respect to the free parameters.
In some cases, it is useful to be able to write the scaled simulation result when the option
enable_variable_scaling is set to true. Specifically, this supports debugging to detect if additional variables should have a nominal value. This
feature is available also for initialization and optimization.