modelDelayFirstOrder
Delay element, approximated by a first order differential equation
Extends from IDEAS.Fluid.MixingVolumes.MixingVolume (Mixing volume with inlet and outlet ports (flow reversal is allowed)).
Information
This model approximates a transport delay using first order differential equations.
The model consists of a mixing volume with two ports. The size of the
mixing volume is such that at the nominal mass flow rate
m_flow_nominal,
the time constant of the volume is equal to the parameter tau.
The heat flux connector is optional and need not be connnected.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | prescribedHeatFlowRate (from PartialMixingVolume) | false | Set to true if the model has a prescribed heat flow at its heatPort. If the heat flow rate at the heatPort is only based on temperature difference, then set to false |
| Boolean | simplify_mWat_flow (from PartialMixingVolume) | true | Set to true to cause port_a.m_flow + port_b.m_flow = 0 even if mWat_flow is non-zero |
| Modelica.Units.SI.Volume | V (from PartialMixingVolume) | Volume | |
| Dynamics › Conservation equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics (from LumpedVolumeDeclarations) | Modelica.Fluid.Types.Dynamics.DynamicFreeInitial | Type of energy balance: dynamic (3 initialization options) or steady state |
| Modelica.Fluid.Types.Dynamics | substanceDynamics (from LumpedVolumeDeclarations) | energyDynamics | Type of independent mass fraction balance: dynamic (3 initialization options) or steady state |
| Modelica.Fluid.Types.Dynamics | traceDynamics (from LumpedVolumeDeclarations) | energyDynamics | Type of trace substance balance: dynamic (3 initialization options) or steady state |
| Advanced › Dynamics | |||
| Modelica.Fluid.Types.Dynamics | massDynamics (from LumpedVolumeDeclarations) | energyDynamics | Type of mass balance: dynamic (3 initialization options) or steady state, must be steady state if energyDynamics is steady state |
| Initialization | |||
| Medium.AbsolutePressure | p_start (from LumpedVolumeDeclarations) | Medium.p_default | Start value of pressure |
| Medium.Temperature | T_start (from LumpedVolumeDeclarations) | Medium.T_default | Start value of temperature |
| Medium.MassFraction[Medium.nX] | X_start (from LumpedVolumeDeclarations) | Medium.X_default | Start value of mass fractions m_i/m |
| Medium.ExtraProperty[Medium.nC] | C_start (from LumpedVolumeDeclarations) | fill(0, Medium.nC) | Start value of trace substances |
| Medium.ExtraProperty[Medium.nC] | C_nominal (from LumpedVolumeDeclarations) | fill(1E-2, Medium.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
| Dynamics | |||
| Real | mSenFac (from LumpedVolumeDeclarations) | 1 | Factor for scaling the sensible thermal mass of the volume |
| Advanced | |||
| Boolean | initialize_p (from PartialMixingVolume) | not Medium.singleState | = true to set up initial equations for pressure |
| Modelica.Units.SI.MassFlowRate | m_flow_small (from PartialMixingVolume) | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Boolean | use_C_flow (from MixingVolume) | false | Set to true to enable input connector for trace substance |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal (from PartialMixingVolume) | Nominal mass flow rate | |
| General › Ports | |||
| Integer | nPorts (from PartialMixingVolume) | 0 | Number of ports |
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialMixingVolume) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal. Used only if model has two ports. |
| Delay time | |||
| Modelica.Units.SI.Time | tau | 60 | Time constant at nominal flow |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Vessels.BaseClasses.VesselFluidPorts_b[nPorts] | ports (from PartialMixingVolume) | Fluid inlets and outlets | |
| Modelica.Blocks.Interfaces.RealOutput | U (from PartialMixingVolume) | Internal energy of the component | |
| Modelica.Blocks.Interfaces.RealOutput | m (from PartialMixingVolume) | Mass of the component | |
| Modelica.Blocks.Interfaces.RealOutput[Medium.nXi] | mXi (from PartialMixingVolume) | Species mass of the component | |
| Modelica.Blocks.Interfaces.RealOutput[Medium.nC] | mC (from PartialMixingVolume) | Trace substance mass of the component | |
| Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a | heatPort (from MixingVolume) | Heat port for heat exchange with the control volume | |
| Modelica.Blocks.Interfaces.RealInput | C_flow (from MixingVolume) | Trace substance mass flow rate added to the medium |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Medium.Temperature | T (from PartialMixingVolume) | Medium.temperature_phX(p = p, h = hOut_internal, X = if Medium.reducedX then cat(1, Xi, {1 - sum(Xi)}) else Xi) | Temperature of the fluid |
| Modelica.Units.SI.Pressure | p (from PartialMixingVolume) | if nPorts > 0 then ports[1].p else p_start | Pressure of the fluid |
| Modelica.Units.SI.MassFraction[Medium.nXi] | Xi (from PartialMixingVolume) | XiOut_internal | Species concentration of the fluid |
| Medium.ExtraProperty[Medium.nC] | C (from PartialMixingVolume) | COut_internal | Trace substance mixture content |
Revisions
-
July 12, 2024, by Michael Wetter:
Moved parametertauto the main parameter tab.
This is for #1906. -
March 7, 2022, by Michael Wetter:
Setfinal massDynamics=energyDynamics.
This is for #1542. -
September 14, 2013, by Michael Wetter:
RenamedV0toV_nominalto use consistent notation. -
September 24, 2008, by Michael Wetter:
Changed base class fromModelica.FluidtoIDEASlibrary. This was done to track the auxiliary species flowmC_flow. -
September 4, 2008, by Michael Wetter:
Fixed bug in assignment of parametersta0. The earlier implementation required temperature to be a state, which is not always the case. -
March 17, 2008, by Michael Wetter:
First implementation.