antioch-0.4.0
List of all members | Public Member Functions | Protected Attributes | Private Member Functions
Antioch::MixtureConductivity< Conductivity, CoeffType > Class Template Reference

Container class for species thermal conductivities. More...

#include <mixture_conductivity.h>

Inheritance diagram for Antioch::MixtureConductivity< Conductivity, CoeffType >:
Antioch::MixtureTransportBase< CoeffType >

Public Member Functions

 MixtureConductivity (const TransportMixture< CoeffType > &transport_mixture)
 
virtual ~MixtureConductivity ()
 
template<class MicroThermo >
void add (unsigned int s, const std::vector< CoeffType > &coeffs, const MicroThermo &thermo)
 Add species viscosity. More...
 
void reset_coeffs (const unsigned int s, const std::vector< CoeffType > coeffs)
 Reset model coefficients for viscosity model of species s. More...
 
template<typename StateType >
StateType conductivity_with_diffusion (unsigned int s, const StateType &T, const StateType &rho, const StateType &mu_s, const StateType &D_ss) const
 
template<typename StateType >
StateType conductivity_without_diffusion (unsigned int s, const StateType &T, const StateType &mu_s) const
 
const ChemicalMixture
< CoeffType > & 
chemical_mixture () const
 
const TransportMixture
< CoeffType > & 
transport_mixture () const
 
const TransportMixture
< CoeffType > & 
mixture () const
 

Protected Attributes

std::vector
< SpeciesConductivityBase
< Conductivity > * > 
_species_conductivities
 
const TransportMixture
< CoeffType > & 
_transport_mixture
 

Private Member Functions

 MixtureConductivity ()
 

Detailed Description

template<typename Conductivity, class CoeffType = double>
class Antioch::MixtureConductivity< Conductivity, CoeffType >

Container class for species thermal conductivities.

For the given set of chemical species in the input TransportMixture, this contains all the thermal conductivities for each of those species and provides and interface for computing the species thermal conductivity. Total conductivity is computed by a mixing model, e.g. MixtureAveragedTransportMixture. This class is templated on the conductivity model, so an inherent assumption is that all species conductivities have the same model.

Definition at line 42 of file mixture_conductivity.h.

Constructor & Destructor Documentation

template<typename Conductivity , class CoeffType>
Antioch::MixtureConductivity< Conductivity, CoeffType >::MixtureConductivity ( const TransportMixture< CoeffType > &  transport_mixture)

Definition at line 83 of file mixture_conductivity.h.

84  : MixtureTransportBase<CoeffType>(transport_mixture),
85  _species_conductivities( transport_mixture.n_species(), NULL )
86  {}
std::vector< SpeciesConductivityBase< Conductivity > * > _species_conductivities
const TransportMixture< CoeffType > & transport_mixture() const
template<typename Conductivity , class CoeffType >
Antioch::MixtureConductivity< Conductivity, CoeffType >::~MixtureConductivity ( )
virtual

Definition at line 89 of file mixture_conductivity.h.

90  {
91  // Need to delete all the species viscosities we allocated
92  for( typename std::vector<SpeciesConductivityBase<Conductivity>*>::iterator it = _species_conductivities.begin();
93  it != _species_conductivities.end(); ++it )
94  {
95  delete (*it);
96  }
97  }
std::vector< SpeciesConductivityBase< Conductivity > * > _species_conductivities
template<typename Conductivity, class CoeffType = double>
Antioch::MixtureConductivity< Conductivity, CoeffType >::MixtureConductivity ( )
private

Member Function Documentation

template<typename Conductivity , class CoeffType>
template<class MicroThermo >
void Antioch::MixtureConductivity< Conductivity, CoeffType >::add ( unsigned int  s,
const std::vector< CoeffType > &  coeffs,
const MicroThermo &  thermo 
)

Add species viscosity.

Definition at line 101 of file mixture_conductivity.h.

References antioch_assert, and antioch_assert_less_equal.

104  {
107 
108  _species_conductivities[s] = new Conductivity(thermo, coeffs);
109  }
#define antioch_assert(asserted)
std::vector< SpeciesConductivityBase< Conductivity > * > _species_conductivities
#define antioch_assert_less_equal(expr1, expr2)
template<class CoeffType >
const ChemicalMixture< CoeffType > & Antioch::MixtureTransportBase< CoeffType >::chemical_mixture ( ) const
inlineinherited

Definition at line 68 of file mixture_transport_base.h.

69  {
70  return _transport_mixture.chemical_mixture();
71  }
const TransportMixture< CoeffType > & _transport_mixture
template<typename Conductivity , class CoeffType >
template<typename StateType >
StateType Antioch::MixtureConductivity< Conductivity, CoeffType >::conductivity_with_diffusion ( unsigned int  s,
const StateType &  T,
const StateType &  rho,
const StateType &  mu_s,
const StateType &  D_ss 
) const

Definition at line 120 of file mixture_conductivity.h.

125  {
126  return (*this->_species_conductivities[s])(s,mu_s,T,rho,D_ss);
127  }
std::vector< SpeciesConductivityBase< Conductivity > * > _species_conductivities
template<typename Conductivity , class CoeffType >
template<typename StateType >
StateType Antioch::MixtureConductivity< Conductivity, CoeffType >::conductivity_without_diffusion ( unsigned int  s,
const StateType &  T,
const StateType &  mu_s 
) const

Definition at line 131 of file mixture_conductivity.h.

134  {
135  return (*this->_species_conductivities[s])(s,mu_s,T);
136  }
std::vector< SpeciesConductivityBase< Conductivity > * > _species_conductivities
template<class CoeffType >
const TransportMixture< CoeffType > & Antioch::MixtureTransportBase< CoeffType >::mixture ( ) const
inlineinherited

Definition at line 82 of file mixture_transport_base.h.

83  {
84  return _transport_mixture;
85  }
const TransportMixture< CoeffType > & _transport_mixture
template<typename Conductivity , class CoeffType>
void Antioch::MixtureConductivity< Conductivity, CoeffType >::reset_coeffs ( const unsigned int  s,
const std::vector< CoeffType >  coeffs 
)

Reset model coefficients for viscosity model of species s.

Definition at line 112 of file mixture_conductivity.h.

114  {
115  _species_conductivities[s]->reset_coeffs(coeffs);
116  }
std::vector< SpeciesConductivityBase< Conductivity > * > _species_conductivities
template<class CoeffType >
const TransportMixture< CoeffType > & Antioch::MixtureTransportBase< CoeffType >::transport_mixture ( ) const
inlineinherited

Definition at line 75 of file mixture_transport_base.h.

76  {
77  return _transport_mixture;
78  }
const TransportMixture< CoeffType > & _transport_mixture

Member Data Documentation

template<typename Conductivity, class CoeffType = double>
std::vector<SpeciesConductivityBase<Conductivity>*> Antioch::MixtureConductivity< Conductivity, CoeffType >::_species_conductivities
protected

Definition at line 74 of file mixture_conductivity.h.

template<class CoeffType = double>
const TransportMixture<CoeffType>& Antioch::MixtureTransportBase< CoeffType >::_transport_mixture
protectedinherited

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

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