GRINS-0.8.0
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity > Class Template Reference

Wrapper class for storing state for constant transport properties, including Antioch::ConstantLewisDiffusivity. More...

#include <antioch_constant_transport_mixture.h>

Inheritance diagram for GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >:
Inheritance graph
[legend]
Collaboration diagram for GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >:
Collaboration graph
[legend]

Public Types

typedef AntiochChemistry ChemistryParent
 

Public Member Functions

 AntiochConstantTransportMixture (const GetPot &input, const std::string &material)
 Deprecated Constructor. More...
 
 AntiochConstantTransportMixture (libMesh::UniquePtr< Antioch::ChemicalMixture< libMesh::Real > > &chem_mixture, libMesh::UniquePtr< Antioch::ReactionSet< libMesh::Real > > &reaction_set, libMesh::UniquePtr< Antioch::NASAThermoMixture< libMesh::Real, KineticsThermoCurveFit > > &nasa_mixture, libMesh::UniquePtr< ConstantViscosity > &visc, libMesh::UniquePtr< Conductivity > &cond, libMesh::UniquePtr< Antioch::ConstantLewisDiffusivity< libMesh::Real > > &diff, libMesh::Real min_T=-std::numeric_limits< libMesh::Real >::max(), bool clip_negative_rho=false)
 Constructor with user-built objects. More...
 
virtual ~AntiochConstantTransportMixture ()
 
libMesh::Real mu () const
 
const Conductivity & conductivity () const
 
const Antioch::ConstantLewisDiffusivity< libMesh::Real > & diffusivity () const
 
- Public Member Functions inherited from GRINS::AntiochMixture< KineticsThermoCurveFit >
 AntiochMixture (const GetPot &input, const std::string &material)
 Deprecated Constructor. More...
 
 AntiochMixture (libMesh::UniquePtr< Antioch::ChemicalMixture< libMesh::Real > > &chem_mixture, libMesh::UniquePtr< Antioch::ReactionSet< libMesh::Real > > &reaction_set, libMesh::UniquePtr< Antioch::NASAThermoMixture< libMesh::Real, KineticsThermoCurveFit > > &nasa_mixture, libMesh::Real min_T=-std::numeric_limits< libMesh::Real >::max(), bool clip_negative_rho=false)
 Constructor with user-built objects. More...
 
virtual ~AntiochMixture ()
 
virtual void register_parameter (const std::string &param_name, libMesh::ParameterMultiAccessor< libMesh::Number > &param_pointer) const
 Each subclass will register its copy of an independent. More...
 
const Antioch::ReactionSet< libMesh::Real > & reaction_set () const
 
const Antioch::NASAThermoMixture< libMesh::Real, KineticsThermoCurveFit > & nasa_mixture () const
 
libMesh::Real h_stat_mech_ref_correction (unsigned int species) const
 
libMesh::Real minimum_T () const
 
bool clip_negative_rho () const
 
- Public Member Functions inherited from GRINS::AntiochChemistry
 AntiochChemistry (const GetPot &input, const std::string &material)
 Deprecated Constructor. More...
 
 AntiochChemistry (libMesh::UniquePtr< Antioch::ChemicalMixture< libMesh::Real > > &chem_mixture)
 User passes in built ChemicalMixture and this class takes ownership. More...
 
virtual ~AntiochChemistry ()
 
libMesh::Real M (unsigned int species) const
 Species molar mass (molecular weight), [kg/mol]. More...
 
libMesh::Real M_mix (const std::vector< libMesh::Real > &mass_fractions) const
 Mixture molar mass (molecular weight), [kg/mol]. More...
 
libMesh::Real R (unsigned int species) const
 Species gas constant, [J/kg-K]. More...
 
libMesh::Real R_mix (const std::vector< libMesh::Real > &mass_fractions) const
 Mixture gas constant, [J/kg-K]. More...
 
libMesh::Real X (unsigned int species, libMesh::Real M, libMesh::Real mass_fraction) const
 Species mole fraction, unitless. More...
 
void X (libMesh::Real M, const std::vector< libMesh::Real > &mass_fractions, std::vector< libMesh::Real > &mole_fractions) const
 Mole fraction for all species, unitless. More...
 
libMesh::Real molar_density (const unsigned int species, const libMesh::Real rho, const libMesh::Real mass_fraction) const
 Species molar density, [mol/m^3]. More...
 
void molar_densities (const libMesh::Real rho, const std::vector< libMesh::Real > &mass_fractions, std::vector< libMesh::Real > &molar_densities) const
 Molar density for all species, [mol/m^3]. More...
 
unsigned int n_species () const
 
unsigned int species_index (const std::string &species_name) const
 
std::string species_name (unsigned int species_index) const
 
const Antioch::ChemicalMixture< libMesh::Real > & chemical_mixture () const
 Accessor to underlying Antioch object. More...
 
const AntiochChemistrychemistry () const
 Accessor for this class. More...
 
- Public Member Functions inherited from GRINS::ParameterUser
 ParameterUser (const std::string &user_name)
 
virtual ~ParameterUser ()
 
virtual void set_parameter (libMesh::Number &param_variable, const GetPot &input, const std::string &param_name, libMesh::Number param_default)
 Each subclass can simultaneously read a parameter value from. More...
 
virtual void set_parameter (libMesh::ParsedFunction< libMesh::Number, libMesh::Gradient > &func, const GetPot &input, const std::string &func_param_name, const std::string &param_default)
 Each subclass can simultaneously read a parsed function from. More...
 
virtual void set_parameter (libMesh::ParsedFEMFunction< libMesh::Number > &func, const GetPot &input, const std::string &func_param_name, const std::string &param_default)
 Each subclass can simultaneously read a parsed function from. More...
 
virtual void move_parameter (const libMesh::Number &old_parameter, libMesh::Number &new_parameter)
 When cloning an object, we need to update parameter pointers. More...
 
virtual void move_parameter (const libMesh::ParsedFunction< libMesh::Number, libMesh::Gradient > &old_func, libMesh::ParsedFunction< libMesh::Number, libMesh::Gradient > &new_func)
 When cloning an object, we need to update parameter pointers. More...
 
virtual void move_parameter (const libMesh::ParsedFEMFunction< libMesh::Number > &old_func, libMesh::ParsedFEMFunction< libMesh::Number > &new_func)
 When cloning an object, we need to update parameter pointers. More...
 

Protected Member Functions

void build_conductivity (const GetPot &input, const std::string &material)
 
- Protected Member Functions inherited from GRINS::AntiochMixture< KineticsThermoCurveFit >
void build_stat_mech_ref_correction ()
 

Protected Attributes

libMesh::UniquePtr< ConstantViscosity_mu
 Viscosity. More...
 
libMesh::UniquePtr< Conductivity > _conductivity
 Thermal conductivity. More...
 
libMesh::UniquePtr< Antioch::ConstantLewisDiffusivity< libMesh::Real > > _diffusivity
 
- Protected Attributes inherited from GRINS::AntiochMixture< KineticsThermoCurveFit >
libMesh::UniquePtr< Antioch::ReactionSet< libMesh::Real > > _reaction_set
 
libMesh::UniquePtr< Antioch::NASAThermoMixture< libMesh::Real, KineticsThermoCurveFit > > _nasa_mixture
 
std::vector< libMesh::Real > _h_stat_mech_ref_correction
 
libMesh::Real _minimum_T
 
bool _clip_negative_rho
 
- Protected Attributes inherited from GRINS::AntiochChemistry
libMesh::UniquePtr< Antioch::ChemicalMixture< libMesh::Real > > _antioch_gas
 

Private Member Functions

 AntiochConstantTransportMixture ()
 
void specialized_build_conductivity (const GetPot &input, const std::string &material, libMesh::UniquePtr< ConstantConductivity > &conductivity, conductivity_type< ConstantConductivity >)
 
void specialized_build_conductivity (const GetPot &input, const std::string &material, libMesh::UniquePtr< ConstantPrandtlConductivity > &conductivity, conductivity_type< ConstantPrandtlConductivity >)
 

Additional Inherited Members

- Static Public Attributes inherited from GRINS::ParameterUser
static std::string zero_vector_function = std::string("{0}")
 A parseable function string with LIBMESH_DIM components, all 0. More...
 

Detailed Description

template<typename KineticsThermoCurveFit, typename Conductivity>
class GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >

Wrapper class for storing state for constant transport properties, including Antioch::ConstantLewisDiffusivity.

This class is expected to be constructed before threads have been forked and will live during the whole program. By default, Antioch is working in SI units. Note that this documentation will always be built regardless if Antioch is included in the GRINS build or not. Check configure output to confirm that Antioch was included in the build.

Definition at line 58 of file antioch_constant_transport_mixture.h.

Member Typedef Documentation

template<typename KineticsThermoCurveFit, typename Conductivity>
typedef AntiochChemistry GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::ChemistryParent

Definition at line 83 of file antioch_constant_transport_mixture.h.

Constructor & Destructor Documentation

template<typename KineticsThermoCurveFit , typename Conductivity >
GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::AntiochConstantTransportMixture ( const GetPot &  input,
const std::string &  material 
)

Deprecated Constructor.

Definition at line 40 of file antioch_constant_transport_mixture.C.

References GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::_diffusivity, GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::_mu, GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::build_conductivity(), and GRINS::MaterialsParsing::parse_lewis_number().

41  : AntiochMixture<KineticsThermoCurveFit>(input,material)
42  {
43  {
44  std::string warning = "==============================================\n";
45  warning += "WARNING: This AntiochConstantTransportMixture constructor is DEPREACTED!\n";
46  warning += " Prefer alternate constructor where parsing\n";
47  warning += " is done outside this class.\n";
48  warning += "==============================================\n";
49 
50  libmesh_warning(warning);
51  }
52 
53  libMesh::Real Le = MaterialsParsing::parse_lewis_number(input,material);
54  _diffusivity.reset( new Antioch::ConstantLewisDiffusivity<libMesh::Real>(Le) );
55  _mu.reset( new ConstantViscosity(input,material) );
56  this->build_conductivity(input,material);
57  }
static libMesh::Real parse_lewis_number(const GetPot &input, const std::string &material)
libMesh::UniquePtr< Antioch::ConstantLewisDiffusivity< libMesh::Real > > _diffusivity
void build_conductivity(const GetPot &input, const std::string &material)
libMesh::UniquePtr< ConstantViscosity > _mu
Viscosity.
template<typename KineticsThermoCurveFit , typename Conductivity >
GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::AntiochConstantTransportMixture ( libMesh::UniquePtr< Antioch::ChemicalMixture< libMesh::Real > > &  chem_mixture,
libMesh::UniquePtr< Antioch::ReactionSet< libMesh::Real > > &  reaction_set,
libMesh::UniquePtr< Antioch::NASAThermoMixture< libMesh::Real, KineticsThermoCurveFit > > &  nasa_mixture,
libMesh::UniquePtr< ConstantViscosity > &  visc,
libMesh::UniquePtr< Conductivity > &  cond,
libMesh::UniquePtr< Antioch::ConstantLewisDiffusivity< libMesh::Real > > &  diff,
libMesh::Real  min_T = -std::numeric_limits<libMesh::Real>::max(),
bool  clip_negative_rho = false 
)

Constructor with user-built objects.

Todo:
Use std::move() when we have C++11

Definition at line 62 of file antioch_constant_transport_mixture.C.

70  : AntiochMixture<KineticsThermoCurveFit>(chem_mixture,reaction_set,nasa_mixture,min_T,clip_negative_rho)
71  {
73  _mu.reset( visc.release() );
74  _conductivity.reset( cond.release() );
75  _diffusivity.reset( diff.release() );
76  }
bool clip_negative_rho() const
libMesh::UniquePtr< Conductivity > _conductivity
Thermal conductivity.
const Antioch::NASAThermoMixture< libMesh::Real, KineticsThermoCurveFit > & nasa_mixture() const
const Antioch::ReactionSet< libMesh::Real > & reaction_set() const
libMesh::UniquePtr< Antioch::ConstantLewisDiffusivity< libMesh::Real > > _diffusivity
libMesh::UniquePtr< ConstantViscosity > _mu
Viscosity.
template<typename KineticsThermoCurveFit, typename Conductivity>
virtual GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::~AntiochConstantTransportMixture ( )
inlinevirtual

Definition at line 75 of file antioch_constant_transport_mixture.h.

75 {}
template<typename KineticsThermoCurveFit, typename Conductivity>
GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::AntiochConstantTransportMixture ( )
private

Member Function Documentation

template<typename KineticsThermoCurveFit, typename Conductivity>
void GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::build_conductivity ( const GetPot &  input,
const std::string &  material 
)
inlineprotected

Definition at line 102 of file antioch_constant_transport_mixture.h.

References GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::specialized_build_conductivity().

Referenced by GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::AntiochConstantTransportMixture().

103  { specialized_build_conductivity( input, material, _conductivity, conductivity_type<Conductivity>() ); }
libMesh::UniquePtr< Conductivity > _conductivity
Thermal conductivity.
void specialized_build_conductivity(const GetPot &input, const std::string &material, libMesh::UniquePtr< ConstantConductivity > &conductivity, conductivity_type< ConstantConductivity >)
template<typename KineticsThermoCurveFit , typename Conductivity >
const Conductivity & GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::conductivity ( ) const
inline

Definition at line 137 of file antioch_constant_transport_mixture.h.

138  {
139  return *_conductivity.get();
140  }
libMesh::UniquePtr< Conductivity > _conductivity
Thermal conductivity.
template<typename KineticsThermoCurveFit , typename Conductivity >
const Antioch::ConstantLewisDiffusivity< libMesh::Real > & GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::diffusivity ( ) const
inline

Definition at line 145 of file antioch_constant_transport_mixture.h.

146  {
147  return *_diffusivity.get();
148  }
libMesh::UniquePtr< Antioch::ConstantLewisDiffusivity< libMesh::Real > > _diffusivity
template<typename KineticsThermoCurveFit , typename Conductivity >
libMesh::Real GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::mu ( ) const
inline

Definition at line 129 of file antioch_constant_transport_mixture.h.

130  {
131  return (*_mu)();
132  }
libMesh::UniquePtr< ConstantViscosity > _mu
Viscosity.
template<typename KineticsThermoCurveFit, typename Conductivity>
void GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::specialized_build_conductivity ( const GetPot &  input,
const std::string &  material,
libMesh::UniquePtr< ConstantConductivity > &  conductivity,
conductivity_type< ConstantConductivity  
)
inlineprivate

Definition at line 109 of file antioch_constant_transport_mixture.h.

Referenced by GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::build_conductivity().

112  {
113  conductivity.reset( new ConstantConductivity(input,material) );
114  }
template<typename KineticsThermoCurveFit, typename Conductivity>
void GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::specialized_build_conductivity ( const GetPot &  input,
const std::string &  material,
libMesh::UniquePtr< ConstantPrandtlConductivity > &  conductivity,
conductivity_type< ConstantPrandtlConductivity  
)
inlineprivate

Definition at line 116 of file antioch_constant_transport_mixture.h.

119  {
120  conductivity.reset( new ConstantPrandtlConductivity(input,material) );
121  }

Member Data Documentation

template<typename KineticsThermoCurveFit, typename Conductivity>
libMesh::UniquePtr<Conductivity> GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::_conductivity
protected

Thermal conductivity.

Definition at line 94 of file antioch_constant_transport_mixture.h.

template<typename KineticsThermoCurveFit, typename Conductivity>
libMesh::UniquePtr<Antioch::ConstantLewisDiffusivity<libMesh::Real> > GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::_diffusivity
protected
template<typename KineticsThermoCurveFit, typename Conductivity>
libMesh::UniquePtr<ConstantViscosity> GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::_mu
protected

Viscosity.

Todo:
Template on viscosity model, as we did for conductivity, to support parsed versions.

This is going to require we update the API for the transport wrappers.

Definition at line 91 of file antioch_constant_transport_mixture.h.

Referenced by GRINS::AntiochConstantTransportMixture< KineticsThermoCurveFit, Conductivity >::AntiochConstantTransportMixture().


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

Generated on Tue Dec 19 2017 12:47:29 for GRINS-0.8.0 by  doxygen 1.8.9.1