modelCylindrical
Information
Model for radial heat transfer in a hollow cylinder.
If the heat capacity of the material is non-zero, then this model computes transient heat conduction, i.e., it computes a numerical approximation to the solution of the heat equation
ρ c ( ∂ T(r,t) ⁄ ∂t ) = k ( ∂² T(r,t) ⁄ ∂r² + 1 ⁄ r ∂ T(r,t) ⁄ ∂r ),
where ρ is the mass density, c is the specific heat capacity per unit mass, T is the temperature at location r and time t and k is the heat conductivity. At the locations r=ra and r=rb, the temperature and heat flow rate are equal to the temperature and heat flow rate of the heat ports.
If the heat capacity of the material is set to zero, then steady-state heat flow is computed using
Q = 2 π k (Ta-Tb)⁄ ln(ra ⁄ rb),
where ra is the internal radius, rb is the external radius, Ta is the temperature at port a and Tb is the temperature at port b.
Implementation
To spatially discretize the heat equation, the construction is
divided into compartments with nSta ≥ 1 state variables.
The state variables are connected to each other through thermal conductors.
There is also a thermal conductor
between the surfaces and the outermost state variables. Thus, to obtain
the surface temperature, use port_a.T (or port_b.T)
and not the variable T[1].
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Fluid.Geothermal.Borefields.Data.Soil.Template | soiDat | ||
| Modelica.Units.SI.Height | h | Height of the cylinder | |
| Modelica.Units.SI.Radius | r_a | Internal radius | |
| Modelica.Units.SI.Radius | r_b | External radius | |
| Integer | nSta | 10 | Number of state variables |
| Real | gridFac | 2 | Grid factor for spacing |
| Modelica.Units.SI.Radius[nSta + 1] | r | Radius to the boundary of the i-th domain | |
| Initialization | |||
| Modelica.Units.SI.Temperature | TInt_start | Initial temperature at port_a, used if steadyStateInitial = false | |
| Modelica.Units.SI.Temperature | TExt_start | Initial temperature at port_b, used if steadyStateInitial = false | |
| Boolean | steadyStateInitial | false | true initializes dT(0)/dt=0, false initializes T(0) at fixed temperature using T_a_start and T_b_start |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a | port_a | Heat port at surface a | |
| Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_b | port_b | Heat port at surface b |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.Temperature[nSta] | T | Temperature of the states | |
| Modelica.Units.SI.TemperatureDifference | dT | port_a.T - port_b.T | |
| Modelica.Units.SI.HeatFlowRate[nSta + 1] | Q_flow | Heat flow rate from state i to i+1 |
Revisions
-
January, 2014, by Damien Picard:
Modify the discretization of the cilindrical layer so that the first three layers have an equal thickness the following an exponentionally growing thickness. This follows the guidelines of Eskilson (P. Eskilson. Thermal analysis of heat extraction boreholes. PhD thesis, Dep. of Mathematical Physics, University of Lund, Sweden, 1987). -
March 9, 2012, by Michael Wetter:
Removed protected variableder_Tas it is not required. -
April 14 2011, by Pierre Vigouroux:
First implementation.