TransFlow  0.1.0
A transient pipeline flow simulation library
heattransferbase.hpp
1 #pragma once
2 
3 #include <armadillo>
4 
5 #include "heattransferstate.hpp"
6 
13 {
14 public:
17  virtual ~HeatTransferBase();
18 
19  // pure virtual method
20  // returns q [W/m2] = U*(gasTemperature - ambientTemperature)
34  const HeatTransferState& current,
35  const double timeStep,
36  const double ambientTemperature,
37  const double gasPressure,
38  const double gasTemperature,
39  const double gasReynoldsNumber,
40  const double gasHeatCapacityConstantPressure,
41  const double gasViscosity) const = 0;
42 
52  virtual HeatTransferState makeState(const double heatFlux) const;
53 
67  const double heatFlux,
68  const double gasTemperature,
69  const double ambientTemperature) const;
70 };
HeatTransferBase::evaluate
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.
HeatTransferBase
The HeatTransferBase class is an abstract class, the base class for all heat transfer implementations...
Definition: heattransferbase.hpp:12
HeatTransferBase::makeState
virtual HeatTransferState makeState(const double heatFlux) const
Make instance of HeatTransferState from heat flux.
HeatTransferState
Container for the state of a HeatTransferBase instance. All HeatTransferBase subclasses operate on in...
Definition: heattransferstate.hpp:13
HeatTransferBase::~HeatTransferBase
virtual ~HeatTransferBase()