modelBaseParticipant
Base model of active participant with prescribed flow direction
Extends from Buildings.Fluid.Interfaces.PartialTwoPortInterface (Partial model with two ports and declaration of quantities that are used by many models), Buildings.Fluid.Interfaces.TwoPortFlowResistanceParameters (Parameters for flow resistance for models with two ports), dhcSim.DHC.Submodules.TwoPortModules.Interfaces.TwoPortModulesParameters (Record of needed parameters for two port modules).
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialTwoPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal (from PartialTwoPortInterface) | Nominal mass flow rate | |
| Modelica.Units.SI.PressureDifference | dp_nominal (from TwoPortFlowResistanceParameters) | Pressure difference | |
| Advanced | |||
| Modelica.Units.SI.MassFlowRate | m_flow_small (from PartialTwoPortInterface) | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Advanced › Diagnostics | |||
| Boolean | show_T (from PartialTwoPortInterface) | false | = true, if actual temperature at port is computed |
| Flow resistance | |||
| Boolean | computeFlowResistance (from TwoPortFlowResistanceParameters) | true | =true, compute flow resistance. Set to false to assume no friction |
| Boolean | from_dp (from TwoPortFlowResistanceParameters) | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
| Boolean | linearizeFlowResistance (from TwoPortFlowResistanceParameters) | false | = true, use linear relation between m_flow and dp for any flow rate |
| Real | deltaM (from TwoPortFlowResistanceParameters) | 0.1 | Fraction of nominal flow rate where flow transitions to laminar |
| Dynamics | |||
| Modelica.SIunits.Time | tau (from TwoPortModulesParameters) | 10 | Time constant at nominal flow rate (used if energyDynamics or massDynamics not equal Modelica.Fluid.Types.Dynamics.SteadyState) |
| Initialization | |||
| Modelica.SIunits.Temperature | T_start (from TwoPortModulesParameters) | 273.15 + 20 | Start value of temperature |
| Dynamics › Equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics (from TwoPortModulesParameters) | Modelica.Fluid.Types.Dynamics.SteadyState | Type of energy balance: dynamic (3 initialization options) or steady state |
| Thermal load | |||
| Boolean | use_Q_flow_in | false | =true to use QLoad port |
| Boolean | use_TSet_in | false | =true to use TSet port |
| Boolean | fixedGradient | true | =true, to fixed gradient instead of fixed reflow temperature |
| Modelica.SIunits.HeatFlowRate | QLoad | 0.0 | Constant thermal load |
| Modelica.SIunits.Temperature | TSet | Medium.T_default | Reflow temperature |
| Modelica.SIunits.Temperature | TGrad | 10 | Temperature gradient |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a (from PartialTwoPort) | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b (from PartialTwoPort) | Fluid connector b (positive design flow direction is from port_a to port_b) | |
| Modelica.Blocks.Interfaces.RealInput | QLoad_in | ||
| Modelica.Blocks.Interfaces.RealInput | TSet_in | ||
| Modelica.Blocks.Interfaces.RealOutput | dp_out | Pressure drop | |
| Modelica.Blocks.Interfaces.RealOutput | Q_flow_out | Heat flow | |
| Modelica.Blocks.Interfaces.RealOutput | QRea_flow_out | Residuum heat flow |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | m_flow (from PartialTwoPortInterface) | port_a.m_flow | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) |
| Modelica.Units.SI.PressureDifference | dp (from PartialTwoPortInterface) | port_a.p - port_b.p | Pressure difference between port_a and port_b |
| Medium.ThermodynamicState | sta_a (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(inStream(port_a.h_outflow)), noEvent(inStream(port_a.Xi_outflow))) | Medium properties in port_a |
| Medium.ThermodynamicState | sta_b (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) else Medium.setState_phX(port_b.p, noEvent(port_b.h_outflow), noEvent(port_b.Xi_outflow)) | Medium properties in port_b |
| Modelica.SIunits.MassFlowRate | m_flow_calc | Calculated mass flow rate according to temperatures and load profile | |
| Modelica.SIunits.MassFlowRate | m_flow_max | Maximum mass flow rate of participant | |
| Modelica.SIunits.HeatFlowRate | Q_flow_abs | Absolute of heat flow rate | |
| Modelica.SIunits.SpecificEnthalpy | hIn | ||
| Modelica.SIunits.Temperature | TIn | ||
| Modelica.SIunits.SpecificEnthalpy | hSet | ||
| Buildings.Fluid.HeatExchangers.BaseClasses.PartialPrescribedOutlet | heaCoo | ||
| Buildings.Fluid.Movers.BaseClasses.IdealSource | ideSou | ||
| Modelica.Blocks.Sources.RealExpression | set_mFlow | ||
| Modelica.Blocks.Sources.RealExpression | set_TSet | ||
| Modelica.Blocks.Sources.RealExpression | set_dp | ||
| Modelica.Blocks.Math.Add | add | ||
| Modelica.Blocks.Sources.RealExpression | set_QFlow | ||
| Buildings.Fluid.FixedResistances.PressureDrop | res |