antioch-0.4.0
List of all members | Public Member Functions
Antioch::BinaryDiffusionBase< Subclass, CoeffType > Class Template Reference

Base class for binary diffusion models. More...

#include <binary_diffusion_base.h>

Public Member Functions

 BinaryDiffusionBase ()
 
virtual ~BinaryDiffusionBase ()
 
void reset_coeffs (const TransportSpecies< CoeffType > &s_i, const TransportSpecies< CoeffType > &s_j)
 
template<typename StateType >
void extrapolate_max_temp (const StateType &Tmax)
 Extrapolate to input maximum temperature, given in [K]. More...
 
template<typename StateType >
const operator() (const StateType &T, const StateType &molar_density) const ANTIOCH_AUTOFUNC(StateType
 

Detailed Description

template<typename Subclass, typename CoeffType>
class Antioch::BinaryDiffusionBase< Subclass, CoeffType >

Base class for binary diffusion models.

Binary diffusion models are those that are used to compute a binary diffusion matrix (in constrast to species diffusion models that are used to directly compute species diffusivities). We use the curiously recurring template pattern; subclasses need to implement op_impl - computes binary diffusion coefficient for the species s_i, s_j reset_coeffs_impl - reset TransportSpecies s_i, s_j

Definition at line 48 of file binary_diffusion_base.h.

Constructor & Destructor Documentation

template<typename Subclass , typename CoeffType >
Antioch::BinaryDiffusionBase< Subclass, CoeffType >::BinaryDiffusionBase ( )
inline

Definition at line 52 of file binary_diffusion_base.h.

52 {};
template<typename Subclass , typename CoeffType >
virtual Antioch::BinaryDiffusionBase< Subclass, CoeffType >::~BinaryDiffusionBase ( )
inlinevirtual

Definition at line 54 of file binary_diffusion_base.h.

54 {};

Member Function Documentation

template<typename Subclass , typename CoeffType >
template<typename StateType >
void Antioch::BinaryDiffusionBase< Subclass, CoeffType >::extrapolate_max_temp ( const StateType &  Tmax)

Extrapolate to input maximum temperature, given in [K].

Some species binary diffusion models, e.g. MolecularBinaryDiffusion, use interpolated quantities for a given temperature range. If the diffusivity is to be evaluated outside that range, an error will occur. This method will reconstruct the interpolation table, but use a linear extrapolation from the max in the existing table to the input maximum temperature.

This method is only applicable to a subset of binary diffusion models. Others will throw a runtime error.

Definition at line 90 of file binary_diffusion_base.h.

91  {
92  static_cast<Subclass*>(this)->extrapolate_max_temp_impl(Tmax);
93  }
template<typename Subclass , typename CoeffType >
template<typename StateType >
const Antioch::BinaryDiffusionBase< Subclass, CoeffType >::operator() ( const StateType &  T,
const StateType &  molar_density 
) const
template<typename Subclass , typename CoeffType >
void Antioch::BinaryDiffusionBase< Subclass, CoeffType >::reset_coeffs ( const TransportSpecies< CoeffType > &  s_i,
const TransportSpecies< CoeffType > &  s_j 
)

Definition at line 82 of file binary_diffusion_base.h.

84  {
85  static_cast<const Subclass*>(this)->reset_coeffs_impl(s_i,s_j);
86  }

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

Generated on Thu Jul 7 2016 11:09:48 for antioch-0.4.0 by  doxygen 1.8.8