TransFlow  0.1.0
A transient pipeline flow simulation library
RadialHeatTransfer Class Reference

Base class for heat transfer calculation with 1d radial models. More...

#include <radial.hpp>

Inheritance diagram for RadialHeatTransfer:
HeatTransferBase SteadyStateHeatTransfer UnsteadyHeatTransfer

Public Member Functions

 RadialHeatTransfer (const double diameter, const PipeWall &pipeWall, const double burialDepth, const BurialMedium &burialMedium, const AmbientFluid &ambientFluid)
 Constructor that sets up the discretization of the pipe surroundings. More...
 
double calculateOuterFilmCoefficient () const
 Calculate the outer film coefficient. Basically a wrapper around utils::calcOuterWallFilmCoefficient(const double, const AmbientFluid&) using the proper arguments. More...
 
virtual arma::uword size () const
 The number of discretization elements.
 
virtual HeatTransferState makeState (const double heatFlux) const override
 Make instance of HeatTransferState from heat flux. Override. More...
 
virtual HeatTransferState makeState (const double heatFlux, const double gasTemperature, const double ambientTemperature) const override
 Make instance of HeatTransferState from heat flux. Override. More...
 
- Public Member Functions inherited from HeatTransferBase
virtual ~HeatTransferBase ()
 
virtual HeatTransferState evaluate (const HeatTransferState &current, const double timeStep, const double ambientTemperature, const double gasPressure, const double gasTemperature, const double gasReynoldsNumber, const double gasHeatCapacityConstantPressure, const double gasViscosity) const =0
 Evaluate heat transfer. More...
 

Protected Attributes

double m_diameter
 Pipe inner diameter [m].
 
double m_burialDepth
 Distance from top of pipe to top of burial medium [m].
 
BurialMedium m_burialMedium
 
AmbientFluid m_ambientFluid
 Description of the fluid surrounding the pipeline.
 
arma::vec m_width
 Width of each discretization shell [m].
 
arma::vec m_conductivity
 Thermal conductivity of each discretization shell [W/(m K)].
 
arma::vec m_density
 Density of each discretization shell [kg/m3].
 
arma::vec m_heatCapacity
 Heat capacity of each discretization shell ( \(c_p\)) [J/(kg K)].
 
arma::uvec m_isBurialLayer
 
arma::vec m_crossSection
 Area/cross-section of each shell [m2].
 
arma::vec m_ri
 Inner radius [m].
 
arma::vec m_ro
 Outer radius [m].
 

Detailed Description

Base class for heat transfer calculation with 1d radial models.

This contains the description of the burial medium, burial depth, ambient fluid etc., as well as the 1d radial discretization of the surroundings of the pipeline (in m_width, m_conductivity, etc.).

Constructor & Destructor Documentation

◆ RadialHeatTransfer()

RadialHeatTransfer::RadialHeatTransfer ( const double  diameter,
const PipeWall pipeWall,
const double  burialDepth,
const BurialMedium burialMedium,
const AmbientFluid ambientFluid 
)

Constructor that sets up the discretization of the pipe surroundings.

Parameters
diameterPipe inner diameter [m]
pipeWallPipeWall instance
burialDepthDistance from top of pipe to top of burial medium [m]
burialMediumBurialMedium instance
ambientFluidAmbientFluid instance

Member Function Documentation

◆ calculateOuterFilmCoefficient()

double RadialHeatTransfer::calculateOuterFilmCoefficient ( ) const

Calculate the outer film coefficient. Basically a wrapper around utils::calcOuterWallFilmCoefficient(const double, const AmbientFluid&) using the proper arguments.

Returns
Outer film coefficient [W/(m2 K)]

◆ makeState() [1/2]

virtual HeatTransferState RadialHeatTransfer::makeState ( const double  heatFlux) const
inlineoverridevirtual

Make instance of HeatTransferState from heat flux. Override.

Makes HeatTransferState instance with the correct temperature property for 1d radial heat transfer models.

Parameters
heatFluxHeat flux [W/m2]
Returns
HeatTransferState instance with temperature.

Reimplemented from HeatTransferBase.

◆ makeState() [2/2]

virtual HeatTransferState RadialHeatTransfer::makeState ( const double  heatFlux,
const double  gasTemperature,
const double  ambientTemperature 
) const
inlineoverridevirtual

Make instance of HeatTransferState from heat flux. Override.

Makes HeatTransferState instance with the correct temperature property for 1d radial heat transfer models. Performs a linear interpolation between gas temperature and ambient temperature. This could probably be improved upon, since there is likely an analytical solution.

Parameters
heatFluxHeat flux [W/m2]
ambientTemperatureAmbient temperature [K]
gasTemperatureGas temperature [K]
Returns
HeatTransferState instance with temperature.

Reimplemented from HeatTransferBase.

Member Data Documentation

◆ m_burialMedium

BurialMedium RadialHeatTransfer::m_burialMedium
protected

Description of the medium the pipeline is buried in (or on top of/suspended above depending on burial depth).

◆ m_isBurialLayer

arma::uvec RadialHeatTransfer::m_isBurialLayer
protected

Bool that determines whether the discretization layers are due to burial in the burial medium or not.


The documentation for this class was generated from the following file: