BuildingSystems.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.Cylindrical

# .BuildingSystems.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.Cylindrical

Heat conduction in a cylinder using the radial discretization as advised by Eskilson

## 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]`.

## 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 variable `der_T` as it is not required.
- April 14 2011, by Pierre Vigouroux:
  First implementation.

Generated at 2026-05-12T20:19:03Z by OpenModelicaOpenModelica 1.26.7 using GenerateDoc.mos