modelTankCuboid
This is a cuboid tank in an acceleration field for the special case of the liquid surface normal to xz-plane.
Extends from ThermofluidStream.Undirected.Boundaries.Internal.PartialTankUndirected (Partial Tank model for media that are partial gas and incompressible liquid. Supports undirected flows).
Information
In order to ensure that the surface is level is perpendicular to the xz-plane, the acceleration in y-direction is neglected.
To specify the acceleration vector, please use the AccelerationBoundary component.
The tank works only with media that have gas and incompressible parts contained in them.
Beware: This is a new addition to the library. It may be subject to design reconsiderations in future versions
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | useHeatport (from PartialTankUndirected) | false | If true heatport is added |
| SI.Area | A (from PartialTankUndirected) | 1 | Contact area of volume with medium |
| SI.CoefficientOfHeatTransfer | U (from PartialTankUndirected) | 200 | Heat transfer coefficient to medium |
| Medium.AbsolutePressure | p_ref (from PartialTankUndirected) | 1e5 | Reference pressure of tank when volume is measured |
| SI.BulkModulus | K (from PartialTankUndirected) | 5e7 | Bulk modulus of tank (used also for stiffness modulation) |
| Initialization | |||
| Boolean | initialize_pressure (from PartialTankUndirected) | true | If true: initialize Pressure |
| Medium.AbsolutePressure | p_start (from PartialTankUndirected) | Medium.p_default | Initial Pressure |
| Boolean | initialize_energy (from PartialTankUndirected) | false | Initialize specific inner energy with temperature or specific enthalpy condition |
| Medium.Temperature | T_start (from PartialTankUndirected) | Medium.T_default | Initial Temperature |
| Boolean | use_hstart (from PartialTankUndirected) | false | True: specific enthalpy condition instead of Temperature |
| Medium.SpecificEnthalpy | h_start (from PartialTankUndirected) | Medium.h_default | Initial specific enthalpy |
| Boolean | initialize_Xi (from PartialTankUndirected) | false | If true: initialize mass fractions |
| Medium.MassFraction[Medium.nXi] | Xi_0 (from PartialTankUndirected) | Medium.X_default[1:Medium.nXi] | Initial mass fraction |
| Boolean | initialize_LiquidMass (from PartialTankUndirected) | true | If true: initialize with mass of the liquid medium component. Initialize_Xi must be false. |
| SI.Mass | M_liq_start (from PartialTankUndirected) | 0 | Initial mass of the liquid |
| Advanced | |||
| Utilities.Units.Inertance | L (from PartialTankUndirected) | dropOfCommons.L | Inertance at inlet and outlet |
| Medium.MassFlowRate | m_flow_assert (from PartialTankUndirected) | -dropOfCommons.m_flow_reg | Assertion threshold for negative massflows |
| Boolean | usePreferredMediumStates (from PartialTankUndirected) | false | Use medium states instead of the ones differentiated in this component |
| Medium.MassFlowRate | m_flow_reg (from PartialTankUndirected) | dropOfCommons.m_flow_reg | Regularization threshold of mass flow rate |
| SI.Length | outletTransition (from PartialTankUndirected) | 0.01 | Width of band for smooth transition between gas and liquid at outlet |
| Boolean | chaoticLife (from PartialTankUndirected) | false | Allows small gas bubbles to go from inlet through liquid even if staticHead is positive, experimental. Large increase in simulation time. |
| SI.Volume | gasBubbleVolume (from PartialTankUndirected) | 0.0001 | Tuning parameter for size of gas bubbles |
| Advanced › Damping | |||
| Real | k_volume_damping (from PartialTankUndirected) | dropOfCommons.k_volume_damping | Damping factor multiplicator |
| General › Geometry | |||
| SI.Length[3] | tankCenter (from PartialTankUndirected) | {0, 0, 0} | Position of the tank center |
| Integer | N_inlets (from PartialTankUndirected) | 2 | Number of inlets |
| Integer | N_outlets (from PartialTankUndirected) | 2 | Number of outlets |
| Integer | N_rears (from PartialTankUndirected) | 2 | Number of rears |
| Integer | N_fores (from PartialTankUndirected) | 2 | Number of fores |
| SI.Length[N_inlets,3] | inletPositions (from PartialTankUndirected) | {{0, 0, 0} for i in 1:N_inlets} | Positions of all inlets |
| SI.Length[N_outlets,3] | outletPositions (from PartialTankUndirected) | {{0, 0, 0} for i in 1:N_outlets} | Positions of all outlets |
| SI.Length[N_rears,3] | rearPositions (from PartialTankUndirected) | {{0, 0, 0} for i in 1:N_rears} | Positions of all rears |
| SI.Length[N_fores,3] | forePositions (from PartialTankUndirected) | {{0, 0, 0} for i in 1:N_fores} | Positions of all fores |
| SI.Length | xLength | Length in x-direction | |
| SI.Length | yLength | Length in y-direction | |
| SI.Length | zLength | Length in z-direction | |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| ThermofluidStream.Interfaces.Inlet[N_inlets] | inlet (from PartialTankUndirected) | ||
| ThermofluidStream.Interfaces.Outlet[N_outlets] | outlet (from PartialTankUndirected) | ||
| Undirected.Interfaces.Rear[N_rears] | rear (from PartialTankUndirected) | ||
| Undirected.Interfaces.Fore[N_fores] | fore (from PartialTankUndirected) | ||
| Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a | heatPort (from PartialTankUndirected) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Medium.BaseProperties | medium (from PartialTankUndirected) | ||
| SI.Volume | V (from PartialTankUndirected) | ||
| SI.Volume | V_liquid (from PartialTankUndirected) | ||
| SI.Volume | V_ref (from PartialTankUndirected) | Volume of the tank at p_ref | |
| SI.Mass | M (from PartialTankUndirected) | V*medium.d | |
| SI.Mass[Medium.nXi] | MXi (from PartialTankUndirected) | M*medium.Xi | |
| SI.Energy | U_med (from PartialTankUndirected) | M*medium.u | |
| SI.HeatFlowRate | Q_flow (from PartialTankUndirected) | ||
| SI.Power | W_v (from PartialTankUndirected) | ||
| SI.Length[3] | centreOfMass (from PartialTankUndirected) | ||
| SI.Length[N_inlets] | staticHeadInlets (from PartialTankUndirected) | distance perpendicular to liquid surface | |
| SI.Length[N_outlets] | staticHeadOutlets (from PartialTankUndirected) | distance perpendicular to liquid surface | |
| SI.Length[N_rears] | staticHeadRears (from PartialTankUndirected) | distance perpendicular to liquid surface | |
| SI.Length[N_fores] | staticHeadFores (from PartialTankUndirected) | distance perpendicular to liquid surface | |
| SI.Pressure[N_inlets] | staticHeadInlets_Pa_relative (from PartialTankUndirected) | relative pressure to liquid surface | |
| SI.Pressure[N_outlets] | staticHeadOutlets_Pa_relative (from PartialTankUndirected) | relative pressure to liquid surface | |
| SI.Pressure[N_rears] | staticHeadRears_Pa_relative (from PartialTankUndirected) | relative pressure to liquid surface | |
| SI.Pressure[N_fores] | staticHeadFores_Pa_relative (from PartialTankUndirected) | relative pressure to liquid surface | |
| Real[3] | normAcc (from PartialTankUndirected) | Modelica.Math.Vectors.normalize(acceleration.a) | |
| SI.Length | D |
Revisions
Author: Ingela Lind, M Sc, Ph D, Technical Fellow,
Simulation and Thermal Analysis,
Vehicle Systems,
SAAB Aerosystems, 2024