This icon shall be used for a package/library that contains base models and classes, respectively.
Extends from Modelica.Icons.BasesPackage
(Icon for packages containing base classes).
Name | Description |
---|---|
Controller |   |
ControllerUtilities … |   |
Init | Enumeration to define initialization options |
InnerTank |   |
setReal | Set output signal to a time varying Real expression |
TankWith3InletOutletArraysWithEvaporatorCondensor | Tank with Heating and Evaporation |
TankWithTopPorts | Tank with inlet/outlet ports and with inlet ports at the top |
Type | Name | Description |
---|---|---|
input RealInput | u | Set value of Real input |
This tank has the same geometric variables as TankWith3InletOutletArrays plus the feature of a HeatPort and the possibility of evaporation. (Assumption: The gas is condensed immediately afterwards so that a liquid boiling fluid is created.)
The tank can be initialized with the following options:
Full steady state initialization is not supported, because the corresponding initial equations for temperature/enthalpy are undetermined (the flow rate through the port at steady state is zero).
Type | Name | Default | Description |
---|---|---|---|
Area | crossArea | Tank area | |
Area | top_pipeArea[n_TopPorts] | Area of outlet pipe | |
Area | side_pipeArea[n_SidePorts] | Area of outlet pipe | |
Area | bottom_pipeArea[n_BottomPorts] | Area of outlet pipe | |
Height | height | 10 | Height of Tank |
Volume | V0 | 0 | Volume of the liquid when the level is zero |
Real | side_heights[n_SidePorts] | zeros(n_SidePorts) |   |
Real | bottom_heights[n_BottomPorts] | zeros(n_BottomPorts) |   |
Real | top_heights[n_TopPorts] | fill(height, n_TopPorts) |   |
Height | level_start | Initial tank level | |
Init | initType | Init.GuessValues | Initialization option |
Boolean | use_T_start | true | Use T_start if true, otherwise h_start |
Temperature | T_start | if use_T_start then 293.15 else Medium.temperature_phX(p_ambient, h_start, X_start) | Start value of temperature |
SpecificEnthalpy | h_start | if use_T_start then Medium.specificEnthalpy_pTX(p_ambient, T_start, X_start[1:Medium.nXi]) else 10000 | Start value of specific enthalpy |
MassFraction | X_start[Medium.nX] | Medium.reference_X | Start value of mass fractions m_i/m |
AbsolutePressure | p_ambient | 101325 | Tank surface pressure |
Temperature | T_ambient | 293.15 | Tank surface Temperature |
Integer | n_TopPorts | 1 | number of Top connectors |
Integer | n_SidePorts | 1 | number of side connectors |
Integer | n_BottomPorts | 1 | number of bottom connectors |
Real | min_level_for_heating |   |
Type | Name | Description |
---|---|---|
FluidPort_b | BottomFluidPort[n_BottomPorts] |   |
FluidPort_a | TopFluidPort[n_TopPorts] |   |
FluidPort_b | SideFluidPort[n_SidePorts] |   |
FluidPort_b | Condensed |   |
HeatPort_a | heatPort |   |
Type | Name | Description |
---|---|---|
FluidPort_a | port |   |
Type | Name | Default | Description |
---|---|---|---|
Real | w_dilution | 0.003 |   |
Real | w_concentrate | 0.005 |   |
Real | startTime | 1 |   |
Real | T5_batch_level | 0.211 |   |
Type | Name | Description |
---|---|---|
Port_Sensors | sensors |   |
Port_Actuators | actuators |   |
Integer type that can have the following values (to be selected via choices menu):
Types.Init. | Meaning |
---|---|
GuessValues | GuessValues -- Guess values (not fixed) for p, T or h, X, C |
InitialValues | Initial values for p, T or h, X, C |
SteadyStateMomentum | Steady state momentum |
SteadyStateHydraulic | Hydraulic steady state (der(p)=0), guess value for p, initial values for T or h, X, C |
SteadyState | Steady state (guess values for p, T or h, X, C) |
Name | Description |
---|---|
GuessValues | GuessValues -- Guess values (not fixed) for p, T or h, X, C |
InitialValues | InitialValues -- Initial values for p, T or h, X, C |
SteadyStateMomentum | SteadyStateMomentum: Steady state momentum |
SteadyStateHydraulic | SteadyStateHydraulic -- Hydraulic steady state (der(p)=0), guess value for p, initial values for T or h, X, C |
SteadyState | SteadyState -- Steady state (guess values for p, T or h, X, C) |
Model of a tank that is open to the environment at the fixed pressure
p_ambient
.
The tank is filled with a single or multiple-substance liquid,
assumed to have uniform temperature and mass fractions.
At the top of the tank over the maximal fill level height a vector of FluidPorts, called topPorts, is present. The assumption is made that fluid flows always in to the tank via these ports (and never back in to the connector).
The vector of connectors ports are fluid ports at the bottom and side of the tank at a definable height. Fluid can flow either out of or in to this port. The fluid level of the tank may be below one of these ports. This case is approximated by introducing a large pressure flow coefficient so that the mass flow rate through this port is very small in this case.
If the tank starts to over flow (i.e., level > height), an assertion is triggered.
When the diagram layer is open in the plot environment, the level of the tank is dynamically visualized. Note, the speed of the diagram animation in Dymola can be set via command animationSpeed(), e.g., animationSpeed(speed = 10)
Extends from Modelica.Fluid.Interfaces.PartialLumpedVolume
(Lumped volume with mass and energy balance).
Type | Name | Default | Description |
---|---|---|---|
Height | height | Maximum level of tank before it overflows | |
Area | crossArea | Area of tank | |
Volume | V0 | 0 | Volume of the liquid when level = 0 |
AbsolutePressure | p_ambient | system.p_ambient | Tank surface pressure |
Temperature | T_ambient | system.T_ambient | Tank surface Temperature |
Height | level_start | 0.5 * height | Start value of tank level |
Dynamics | energyDynamics | system.energyDynamics | Formulation of energy balance |
Dynamics | massDynamics | system.massDynamics | Formulation of mass balance |
final Dynamics | substanceDynamics | massDynamics | Formulation of substance balance |
final Dynamics | traceDynamics | massDynamics | Formulation of trace substance balance |
final AbsolutePressure | p_start | p_ambient | Start value of pressure |
Boolean | use_T_start | true | = true, use T_start, otherwise h_start |
Temperature | T_start | if use_T_start then system.T_start else Medium.temperature_phX(p_start, h_start, X_start) | Start value of temperature |
SpecificEnthalpy | h_start | if use_T_start then Medium.specificEnthalpy_pTX(p_start, T_start, X_start) else Medium.h_default | Start value of specific enthalpy |
MassFraction | X_start[Medium.nX] | Medium.X_default | Start value of mass fractions m_i/m |
ExtraProperty | C_start[Medium.nC] | Medium.C_default | Start value of trace substances |
Integer | nTopPorts | 0 | Number of inlet ports above height (>= 1) |
Integer | nPorts | 0 | Number of inlet/outlet ports (on bottom and on the side) |
VesselPortsData | portsData[nPorts] | Data of inlet/outlet ports at side and bottom of tank | |
Boolean | use_HeatTransfer | false | = true to use the HeatTransfer model |
Real | hysteresisFactor | 0.1 | Hysteresis for empty pipe = diameter*hysteresisFactor |
Boolean | stiffCharacteristicForEmptyPort | false | =true, if steep pressure loss characteristic for empty pipe port |
Real | zetaLarge | 100000 | Large pressure loss factor if mass flows out of empty pipe port |
MassFlowRate | m_flow_small | system.m_flow_small | Regularization range at zero mass flow rate |
Type | Name | Description |
---|---|---|
VesselFluidPorts_a | topPorts[nTopPorts] | Inlet ports over height at top of tank (fluid flows only from the port in to the tank) |
VesselFluidPorts_b | ports[nPorts] | inlet/outlet ports at bottom or side of tank (fluid flows in to or out of port; a port might be above the fluid level) |
HeatPort_a | heatPort |   |
Generated 2018-12-12 12:13:10 EST by MapleSim.