WOLFRAM SYSTEM MODELER

CustomizingModel

Customizing a system model

Wolfram Language

In[1]:=
SystemModel["Modelica.Fluid.UsersGuide.BuildingSystemModels.CustomizingModel"]
Out[1]:=

Information

This information is part of the Modelica Standard Library maintained by the Modelica Association.

Once a system model has been built, it is possible to obtain different approximations by appropriately setting the defaults in the System component (and/or the settings of specific components.

The Assumptions | allowFlowReversal parameter determines whether reversing flow conditions (i.e., flow direction opposite to design direction) are modelled or not. By default, reversing flow conditions are considered by the models, but this causes a significant increase of complexity in the equations, due to the conditional equations depending on the flow direction. If you know in advance that the flow in a certain component (or in the whole system) will always be in the design direction, then setting this parameter to false will produce a much faster and possibly more robust simulation code.

The flags in the Assumptions | Dynamics tab allow different degrees of approximation on the mass, energy, and momentum equations of the components.

  • DynamicFreeInitial: dynamic equations are considered (nonzero storage), no initial equations are provided, and the start values are used as guess values.
  • FixedInitial: dynamic equations are considered (nonzero storage) and initial equations are included, fixing the states to the start values provided by the component parameters.
  • SteadyStateInitial: dynamic equations are considered (nonzero storage), initial equations are included, declaring that the state derivatives are zero (steady-state initialization) and the start values are used as guess values for the nonlinear solver.
  • SteadyState: algebraic (or static) balance equations are considered (no storage) and the start values are used as guess values for the nonlinear solver.

It is then possible to neglect the storage of mass, momentum, and energy in the whole system (or just in parts of it) just by a few mouse clicks in a GUI, and also to change the type of initialization when considering dynamic models. Please note that some combinations of the options might be contradictory, and will therefore trigger compilation errors.