25 #ifndef GRINS_REACTING_LOW_MACH_NAVIER_STOKES_BC_HANDLING_H
26 #define GRINS_REACTING_LOW_MACH_NAVIER_STOKES_BC_HANDLING_H
29 #include "boost/tr1/memory.hpp"
37 template<
typename Chemistry>
43 const Chemistry& chem_mixture );
47 virtual int string_to_int(
const std::string& bc_type_in )
const;
49 virtual void init_bc_data(
const libMesh::FEMSystem& system );
52 const std::string& bc_id_string,
54 const std::string& bc_vars,
55 const std::string& bc_value,
56 const GetPot& input );
59 libMesh::DofMap& dof_map,
67 const bool request_jacobian,
83 const std::string& reactant,
84 const std::string& bc_id_string,
86 boost::scoped_ptr<CatalycityBase>& gamma_r );
98 std::multimap<BoundaryID, std::tr1::shared_ptr<CatalyticWallBase<Chemistry> > >
_catalytic_walls;
117 #endif // GRINS_REACTING_LOW_MACH_NAVIER_STOKES_BC_HANDLING_H
virtual void init_dirichlet_bcs(libMesh::FEMSystem *system) const
virtual void user_init_dirichlet_bcs(libMesh::FEMSystem *system, libMesh::DofMap &dof_map, GRINS::BoundaryID bc_id, GRINS::BCType bc_type) const
Base class for reading and handling boundary conditions for physics classes.
virtual void init_bc_data(const libMesh::FEMSystem &system)
Override this method to initialize any system-dependent data.
ReactingLowMachNavierStokesBCHandling()
libMesh::boundary_id_type BoundaryID
More descriptive name of the type used for boundary ids.
virtual ~ReactingLowMachNavierStokesBCHandling()
virtual void init_bc_types(const GRINS::BoundaryID bc_id, const std::string &bc_id_string, const int bc_type, const std::string &bc_vars, const std::string &bc_value, const GetPot &input)
virtual int string_to_int(const std::string &bc_type_in) const
void build_catalycities(const GetPot &input, const std::string &reactant, const std::string &bc_id_string, const BoundaryID bc_id, boost::scoped_ptr< CatalycityBase > &gamma_r)
std::multimap< BoundaryID, std::tr1::shared_ptr< CatalyticWallBase< Chemistry > > > _catalytic_walls
std::vector< GRINS::VariableIndex > _species_vars
const Chemistry & _chemistry
void set_species_bc_type(GRINS::BoundaryID bc_id, int bc_type)
std::vector< std::string > _species_var_names
virtual void user_apply_neumann_bcs(AssemblyContext &context, const GRINS::CachedValues &cache, const bool request_jacobian, const GRINS::BoundaryID bc_id, const GRINS::BCType bc_type) const
void set_species_bc_values(GRINS::BoundaryID bc_id, const std::vector< libMesh::Real > &species_values)
std::map< GRINS::BoundaryID, std::vector< libMesh::Real > > _species_bc_values
libMesh::Real get_species_bc_value(GRINS::BoundaryID bc_id, unsigned int species) const
std::vector< std::pair< BoundaryID, BCType > > _species_bc_map
CatalyticWallBase< Chemistry > * get_catalytic_wall(const BoundaryID bc_id)