25 #ifndef GRINS_GAS_SOLID_CATALYTIC_WALL_NEUMANN_BC_IMPL_H
26 #define GRINS_GAS_SOLID_CATALYTIC_WALL_NEUMANN_BC_IMPL_H
33 #include "libmesh/getpot.h"
45 SharedPtr<NeumannBCAbstract>
47 const std::string& reaction,
48 SharedPtr<CatalycityBase>& gamma_ptr,
49 const std::vector<VariableIndex>& species_vars,
50 const std::string& material,
53 const std::string& thermochem_lib );
56 std::string& gas_reactant,
57 std::string& solid_reactant,
58 std::string& product )
const;
62 template<
typename ChemistryType>
64 const std::string& material,
65 SharedPtr<CatalycityBase>& gamma_ptr,
66 const std::string& gas_reactant,
67 const std::string& solid_reactant,
68 const std::string& product,
69 const std::vector<VariableIndex>& species_vars,
72 SharedPtr<NeumannBCAbstract>& catalytic_wall )
74 SharedPtr<ChemistryType> chem_ptr(
new ChemistryType(input,material) );
82 chem_ptr->species_index(gas_reactant),
83 chem_ptr->species_index(solid_reactant),
84 chem_ptr->species_index(product) ) );
91 #endif // GRINS_GAS_SOLID_CATALYTIC_WALL_NEUMANN_BC_IMPL_H
unsigned int VariableIndex
More descriptive name of the type used for variable indices.
SharedPtr< NeumannBCAbstract > build_catalytic_wall(const GetPot &input, const std::string &reaction, SharedPtr< CatalycityBase > &gamma_ptr, const std::vector< VariableIndex > &species_vars, const std::string &material, VariableIndex T_var, libMesh::Real p0, const std::string &thermochem_lib)
GasSolidCatalyticWallNeumannBCFactoryImpl()
void parse_reactants_and_product(const std::string &reaction, std::string &gas_reactant, std::string &solid_reactant, std::string &product) const
~GasSolidCatalyticWallNeumannBCFactoryImpl()
void build_wall_ptr(const GetPot &input, const std::string &material, SharedPtr< CatalycityBase > &gamma_ptr, const std::string &gas_reactant, const std::string &solid_reactant, const std::string &product, const std::vector< VariableIndex > &species_vars, VariableIndex T_var, libMesh::Real p0, SharedPtr< NeumannBCAbstract > &catalytic_wall)