class Overview "Overview"
    extends Modelica.Icons.Information;

    annotation (Documentation(info = "<html>\n<p>\nThe Modelica.Fluid library provides basic interfaces and\ncomponents to model 1-dimensional thermo-fluid flow in networks of pipes.\nIt is not the intention that this library covers all\napplication cases because the fluid flow area is too large and\nbecause for special applications it is possible to implement\nlibraries with simpler component interfaces.\nInstead, the goal is that the Modelica.Fluid library provides\na <strong>reasonable set of components</strong> and that it <strong>demonstrates</strong>\nhow to implement components of a fluid flow library in Modelica,\nin particular to cope with difficult issues such as connector\ndesign, reversing flow and initialization. It is planned to\ninclude more components in the future. User proposals are\nwelcome.\n</p>\n<p>\nThis library has the following main features:\n</p>\n<ul>\n<li> The connectors Modelica.Fluid.Interfaces.FluidPort_a/_b are designed\n     for one-dimensional flow of a <strong>single substance</strong>\n     or of a <strong>mixture of substances</strong> with optional <strong>multiple phases</strong>.\n     All media models from Modelica.Media can be utilized when\n     connecting components. For one substance media, the additional arrays for\n     multiple\n     substance media have zero dimension and are therefore removed\n     from the code during translation. The general connector definition\n     therefore does not introduce an overhead for special cases.<br>&nbsp;</li>\n<li> All the components of the Modelica.Fluid library are designed\n     that they can be utilized for all media models from\n     Modelica.Media if this is possible. For example, all media can\n     be utilized for the Modelica.Fluid.Sensors/Sources components.\n     For some components only special media are possible, since additional\n     functionality is required. For example,\n     Modelica.Fluid.Components.Evaporator requires a two phase medium\n     (extending from Modelica.Media.Interfaces.PartialTwoPhaseMedium).\n     <br>&nbsp;</li>\n<li> In order to simplify the initialization in the components,\n     there is the restriction that only media models are supported\n     that have T, (p,T), (p,h), (T,X), (p,T,X) or (p,h,X) as\n     independent variables. Other media models would be possible,\n     e.g., with (T,d) as independent variables. However, this requires\n     to rewrite the code for the component initialization.\n     (Note, T is temperature, p is pressure, d is density,\n     h is specific enthalpy, and X is a mass fraction vector).\n     <br>&nbsp;</li>\n<li> All components work for <strong>incompressible</strong> and <strong>compressible</strong> media.\n     This is implemented by a small change in the initialization of a\n     component, if the medium is incompressible. Otherwise, the equations\n     of the components are not influenced by this property.<br>&nbsp;</li>\n<li> All components allow fluid flow in both directions, i.e.,\n     <strong>reversing flow</strong> is supported. However, it is possible to declare that\n     the flow through a component only has the design direction, in order to\n     obtain faster simulation code.<br>&nbsp;</li>\n<li> Two or more components can be connected together. This means that\n     the pressures of all connected ports are equal and the mass flow rates\n     sum up to zero. Specific enthalpy, mass fractions and trace substances are\n     mixed according to the mass flow rates.<br>&nbsp;</li>\n<li> The <strong>momentum balance</strong> and the <strong>energy balance</strong> are only fulfilled exactly if\n     <strong>two ports of equal diameter</strong> are connected. In all other cases, the balances\n     are approximated, because kinetic and friction effect are neglected. An explicit fitting\n     or junction should be used if these are important for the specific problem at hand.\n     In all circuits where friction dominates, or components such as pumps determine the flow rate,\n     kinetic pressure is typically irrelevant. You can consider the\n     <a href=\"modelica://Modelica.Fluid.Examples.Explanatory.MomentumBalanceFittings\">Modelica.Fluid.Examples.Explanatory.MomentumBalanceFittings</a> model (and its documentation)\n     to see one case where the momentum balance essentially depends on kinetic pressure,\n     so it is necessary to use explicit fittings in order to obtain correct results.\n     <br>&nbsp;</li>\n<li> Given the above-mentioned limitations, there is no restriction how components can be connected\n     together. The resulting simulation performance however often strongly depends on the\n     model structure and modeling assumptions made. In particular the direct connection of\n     fluid volumes generally results in high-index DAEs for the pressures. The direct\n     connection of flow models generally results in systems of implicit nonlinear algebraic\n     equations.<br>&nbsp;</li>\n</ul>\n</html>"));
end Overview;