GRINS-0.8.0
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
GRINS::CatalyticWallBase< Chemistry > Class Template Referenceabstract

#include <catalytic_wall_base.h>

Inheritance diagram for GRINS::CatalyticWallBase< Chemistry >:
Inheritance graph
[legend]
Collaboration diagram for GRINS::CatalyticWallBase< Chemistry >:
Collaboration graph
[legend]

Public Member Functions

 CatalyticWallBase (SharedPtr< Chemistry > &chem, SharedPtr< CatalycityBase > &gamma, const std::vector< VariableIndex > &species_vars, VariableIndex T_var, libMesh::Real p0, unsigned int reactant_species_idx)
 
 CatalyticWallBase (const Chemistry &chem_mixture, CatalycityBase &gamma, const unsigned int reactant_species_idx)
 Deprecated. More...
 
virtual ~CatalyticWallBase ()
 
virtual void apply_fluxes (AssemblyContext &context, const CachedValues &cache, const bool request_jacobian)=0
 Deprecated. More...
 
virtual void init (const libMesh::FEMSystem &)
 
libMesh::Real rho (libMesh::Real T, libMesh::Real p0, libMesh::Real R_mix) const
 
libMesh::Real omega_dot (const libMesh::Real rho_s, const libMesh::Real T) const
 $ \rho_s \gamma \sqrt{ \frac{R_s T}{2\pi} } $ More...
 
libMesh::Real domega_dot_dws (const libMesh::Real rho_s, const libMesh::Real w_s, const libMesh::Real T, const libMesh::Real R) const
 
libMesh::Real domega_dot_dT (const libMesh::Real rho_s, const libMesh::Real T) const
 
void set_catalycity_params (const std::vector< libMesh::Real > &params)
 
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...
 
- Public Member Functions inherited from GRINS::NeumannBCAbstract
 NeumannBCAbstract ()
 
virtual ~NeumannBCAbstract ()
 
virtual bool eval_flux (bool compute_jacobian, AssemblyContext &context, libMesh::Real sign, bool is_axisymmetric)=0
 
- 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

libMesh::Real eval_gamma (libMesh::Real T) const
 Temporary helper to deal with intermediate refactoring. More...
 
libMesh::Real eval_gamma_dT (libMesh::Real T) const
 Temporary helper to deal with intermediate refactoring. More...
 

Protected Attributes

SharedPtr< Chemistry > _chem_ptr
 
const Chemistry & _chemistry
 Deprecated. More...
 
SharedPtr< CatalycityBase_gamma_ptr
 
libMesh::UniquePtr< CatalycityBase_gamma_s
 Deprecated. More...
 
const libMesh::Real _C
 $ \sqrt{ \frac{R_s}{2\pi} } $ More...
 
std::vector< VariableIndex_species_vars
 
VariableIndex _T_var
 
libMesh::Real _p0
 Thermodynamic pressure. More...
 

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 Chemistry>
class GRINS::CatalyticWallBase< Chemistry >

Definition at line 50 of file catalytic_wall_base.h.

Constructor & Destructor Documentation

template<typename Chemistry >
GRINS::CatalyticWallBase< Chemistry >::CatalyticWallBase ( SharedPtr< Chemistry > &  chem,
SharedPtr< CatalycityBase > &  gamma,
const std::vector< VariableIndex > &  species_vars,
VariableIndex  T_var,
libMesh::Real  p0,
unsigned int  reactant_species_idx 
)

Definition at line 39 of file catalytic_wall_base.C.

45  : _chem_ptr(chem),
46  _chemistry(*(chem.get())),// This will be removed after NeumannBC refactoring
47  _gamma_ptr(gamma),
48  _C( std::sqrt( chem->R(reactant_species_idx)/(GRINS::Constants::two_pi) ) ),
49  _species_vars(species_vars),
50  _T_var(T_var),
51  _p0(p0)
52  {}
SharedPtr< CatalycityBase > _gamma_ptr
libMesh::Real _p0
Thermodynamic pressure.
SharedPtr< Chemistry > _chem_ptr
const Chemistry & _chemistry
Deprecated.
const libMesh::Real two_pi
std::vector< VariableIndex > _species_vars
template<typename Chemistry >
GRINS::CatalyticWallBase< Chemistry >::CatalyticWallBase ( const Chemistry &  chem_mixture,
CatalycityBase gamma,
const unsigned int  reactant_species_idx 
)

Deprecated.

Definition at line 55 of file catalytic_wall_base.C.

58  : _chemistry(chemistry),
59  _gamma_s( gamma.clone() ),
60  _C( std::sqrt( chemistry.R(reactant_species_idx)/(GRINS::Constants::two_pi) ) )
61  {}
libMesh::UniquePtr< CatalycityBase > _gamma_s
Deprecated.
const Chemistry & _chemistry
Deprecated.
const libMesh::Real two_pi
template<typename Chemistry >
virtual GRINS::CatalyticWallBase< Chemistry >::~CatalyticWallBase ( )
inlinevirtual

Definition at line 66 of file catalytic_wall_base.h.

66 {};

Member Function Documentation

template<typename Chemistry >
virtual void GRINS::CatalyticWallBase< Chemistry >::apply_fluxes ( AssemblyContext context,
const CachedValues cache,
const bool  request_jacobian 
)
pure virtual
template<typename Chemistry >
libMesh::Real GRINS::CatalyticWallBase< Chemistry >::domega_dot_dT ( const libMesh::Real  rho_s,
const libMesh::Real  T 
) const
inline

Definition at line 182 of file catalytic_wall_base.h.

Referenced by test().

183  {
184  libMesh::Real sqrtT = std::sqrt(T);
185 
186  return rho_s*_C*( 0.5/sqrtT*this->eval_gamma(T) + sqrtT*this->eval_gamma_dT(T) );
187  }
libMesh::Real eval_gamma_dT(libMesh::Real T) const
Temporary helper to deal with intermediate refactoring.
libMesh::Real eval_gamma(libMesh::Real T) const
Temporary helper to deal with intermediate refactoring.
template<typename Chemistry >
libMesh::Real GRINS::CatalyticWallBase< Chemistry >::domega_dot_dws ( const libMesh::Real  rho_s,
const libMesh::Real  w_s,
const libMesh::Real  T,
const libMesh::Real  R 
) const
inline

Definition at line 174 of file catalytic_wall_base.h.

Referenced by test().

176  {
177  return (1.0/w_s - rho_s/R)*(this->omega_dot( rho_s, T ));
178  }
libMesh::Real omega_dot(const libMesh::Real rho_s, const libMesh::Real T) const
template<typename Chemistry >
libMesh::Real GRINS::CatalyticWallBase< Chemistry >::eval_gamma ( libMesh::Real  T) const
inlineprotected

Temporary helper to deal with intermediate refactoring.

Definition at line 135 of file catalytic_wall_base.h.

136  {
137  libMesh::Real value;
138 
139  if(_gamma_s)
140  value = (*_gamma_s)(T);
141  else if(_gamma_ptr)
142  value = (*_gamma_ptr)(T);
143  else
144  libmesh_error();
145 
146  return value;
147  }
SharedPtr< CatalycityBase > _gamma_ptr
libMesh::UniquePtr< CatalycityBase > _gamma_s
Deprecated.
template<typename Chemistry >
libMesh::Real GRINS::CatalyticWallBase< Chemistry >::eval_gamma_dT ( libMesh::Real  T) const
inlineprotected

Temporary helper to deal with intermediate refactoring.

Definition at line 151 of file catalytic_wall_base.h.

152  {
153  libMesh::Real value;
154 
155  if(_gamma_s)
156  value = (*_gamma_s).dT(T);
157  else if(_gamma_ptr)
158  value = (*_gamma_ptr).dT(T);
159  else
160  libmesh_error();
161 
162  return value;
163  }
SharedPtr< CatalycityBase > _gamma_ptr
libMesh::UniquePtr< CatalycityBase > _gamma_s
Deprecated.
template<typename Chemistry >
virtual void GRINS::CatalyticWallBase< Chemistry >::init ( const libMesh::FEMSystem &  )
inlinevirtual
template<typename Chemistry >
libMesh::Real GRINS::CatalyticWallBase< Chemistry >::omega_dot ( const libMesh::Real  rho_s,
const libMesh::Real  T 
) const
inline

$ \rho_s \gamma \sqrt{ \frac{R_s T}{2\pi} } $

Definition at line 167 of file catalytic_wall_base.h.

Referenced by test().

168  {
169  return rho_s*this->eval_gamma(T)*_C*std::sqrt(T);
170  }
libMesh::Real eval_gamma(libMesh::Real T) const
Temporary helper to deal with intermediate refactoring.
template<typename Chemistry >
void GRINS::CatalyticWallBase< Chemistry >::register_parameter ( const std::string &  param_name,
libMesh::ParameterMultiAccessor< libMesh::Number > &  param_pointer 
) const
virtual

Each subclass will register its copy of an independent.

Reimplemented from GRINS::ParameterUser.

Definition at line 78 of file catalytic_wall_base.C.

80  {
81  _gamma_ptr->register_parameter(param_name,param_pointer);
82  }
SharedPtr< CatalycityBase > _gamma_ptr
template<typename Chemistry >
libMesh::Real GRINS::CatalyticWallBase< Chemistry >::rho ( libMesh::Real  T,
libMesh::Real  p0,
libMesh::Real  R_mix 
) const
inline

Definition at line 128 of file catalytic_wall_base.h.

129  {
130  return p0/(R_mix*T);
131  }
template<typename Chemistry >
void GRINS::CatalyticWallBase< Chemistry >::set_catalycity_params ( const std::vector< libMesh::Real > &  params)

Definition at line 64 of file catalytic_wall_base.C.

65  {
66  if(_gamma_s)
67  {
68  libmesh_deprecated();
69  _gamma_s->set_params( params );
70  }
71  else if( _gamma_ptr)
72  _gamma_ptr->set_params( params );
73  else
74  libmesh_error();
75  }
SharedPtr< CatalycityBase > _gamma_ptr
libMesh::UniquePtr< CatalycityBase > _gamma_s
Deprecated.

Member Data Documentation

template<typename Chemistry >
const libMesh::Real GRINS::CatalyticWallBase< Chemistry >::_C
protected

$ \sqrt{ \frac{R_s}{2\pi} } $

Definition at line 109 of file catalytic_wall_base.h.

template<typename Chemistry >
SharedPtr<Chemistry> GRINS::CatalyticWallBase< Chemistry >::_chem_ptr
protected

Definition at line 98 of file catalytic_wall_base.h.

template<typename Chemistry >
const Chemistry& GRINS::CatalyticWallBase< Chemistry >::_chemistry
protected

Deprecated.

Definition at line 101 of file catalytic_wall_base.h.

template<typename Chemistry >
SharedPtr<CatalycityBase> GRINS::CatalyticWallBase< Chemistry >::_gamma_ptr
protected

Definition at line 103 of file catalytic_wall_base.h.

template<typename Chemistry >
libMesh::UniquePtr<CatalycityBase> GRINS::CatalyticWallBase< Chemistry >::_gamma_s
protected

Deprecated.

Definition at line 106 of file catalytic_wall_base.h.

template<typename Chemistry >
libMesh::Real GRINS::CatalyticWallBase< Chemistry >::_p0
protected

Thermodynamic pressure.

Currently, we assume that the thermodynamic pressure is constant. This is not true in cavity type systems.

Todo:
make const

Definition at line 122 of file catalytic_wall_base.h.

template<typename Chemistry >
std::vector<VariableIndex> GRINS::CatalyticWallBase< Chemistry >::_species_vars
protected
Todo:
make const

Definition at line 112 of file catalytic_wall_base.h.

template<typename Chemistry >
VariableIndex GRINS::CatalyticWallBase< Chemistry >::_T_var
protected
Todo:
make const

Definition at line 115 of file catalytic_wall_base.h.


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

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