modelBuoyancy

Model to add buoyancy if there is a temperature inversion in the tank

Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).

Information

This model outputs a heat flow rate that can be added to fluid volumes in order to emulate buoyancy during a temperature inversion. For simplicity, this model does not compute a buoyancy induced mass flow rate, but rather a heat flow that has the same magnitude as the enthalpy flow associated with the buoyancy induced mass flow rate.

Parameters

TypeNameDefaultDescription
Modelica.Units.SI.VolumeVVolume
IntegernSeg2Number of volume segments
Modelica.Units.SI.TimetauTime constant for mixing

Connectors

TypeNameDefaultDescription
Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_aheatPortHeat input into the volumes

Components

TypeNameDefaultDescription
Modelica.Units.SI.HeatFlowRateQ_flowHeat flow rate from segment i+1 to i

Contents

NameDescription
MediumMedium model

Revisions

  • June 7, 2018 by Filip Jorissen:
    Copied model from Buildings and update the model accordingly. This is for #314.
  • December 14, 2012 by Michael Wetter:
    Renamed protected parameters for consistency with naming convention.
  • October 8, 2011 by Michael Wetter:
    Added noEvent(...) to Q_flow[i] = k*smooth(1, if dT[i]>0 then dT[i]^2 else 0); since the equation returns the same value to the left and right of dT[i]>0.
  • September 16, 2011 by Michael Wetter:
    Changed the implementation from Q_flow[i] = k*max(heatPort[i+1].T-heatPort[i].T, 0); to Q_flow[i] = k*smooth(1, if dT[i]>0 then dT[i]^2 else 0);. The previous implementation was not differentiable. In modeling a solar system, this change reduced the computing time by a factor of 20 during the time when the pumps were almost switched off and colder temperature was fed from the collector to the tank.
  • October 28, 2008 by Michael Wetter:
    First implementation.