25 #ifndef GRINS_CONSTANT_FUNCTION_DIRICHLET_BC_FACTORY_H
26 #define GRINS_CONSTANT_FUNCTION_DIRICHLET_BC_FACTORY_H
33 #include "libmesh/function_base.h"
38 class SpeciesMassFractionsFEVariables;
62 virtual libMesh::UniquePtr<libMesh::FunctionBase<libMesh::Number> >
65 std::vector<std::string>& var_names,
66 const std::string& section );
75 const std::string& section,
76 const std::set<std::string>& vars_found,
78 std::set<std::string>& vars_added)
const;
86 std::vector<std::string>& vars_to_search_for )
const
87 { libmesh_assert_equal_to(var_names.size(),vars_to_search_for.size());
88 vars_to_search_for = var_names; }
111 const std::string& section,
112 const std::set<std::string>& vars_found,
114 std::set<std::string>& vars_added)
const;
120 std::vector<std::string>&vars_to_search_for )
const;
122 template<
typename ChemistryType>
124 const std::string& section,
125 const std::set<std::string>& vars_found,
126 const std::string& material,
129 std::set<std::string>& vars_added)
const;
132 const std::string& prefix,
133 std::string& species_name )
const;
139 #endif // GRINS_CONSTANT_FUNCTION_DIRICHLET_BC_FACTORY_H
~ConstantFunctionDirichletBCFactory()
virtual void set_vars_to_search_for(const std::vector< std::string > &var_names, std::vector< std::string > &vars_to_search_for) const
We'll search for mole fractions: X_.
ConstantFunctionDirichletBCFactory(const std::string &bc_type_name)
virtual void add_found_vars(const GetPot &input, MultiphysicsSystem &system, const std::string §ion, const std::set< std::string > &vars_found, libMesh::CompositeFunction< libMesh::Number > &composite_func, std::set< std::string > &vars_added) const
Adds the vars_found to the composite_func.
void add_mole_frac_to_mass_frac(const GetPot &input, const std::string §ion, const std::set< std::string > &vars_found, const std::string &material, const SpeciesMassFractionsFEVariables &species_fe_var, libMesh::CompositeFunction< libMesh::Number > &composite_func, std::set< std::string > &vars_added) const
virtual void set_vars_to_search_for(const std::vector< std::string > &var_names, std::vector< std::string > &vars_to_search_for) const
Set the vars_to_search_for, based on var_names.
Constructs ConstFunction objects for Dirichlet boundary conditions.
void extract_species_name(const std::string &var_name, const std::string &prefix, std::string &species_name) const
Parses mole fraction values and converts to mass fractions.
Interface with libMesh for solving Multiphysics problems.
virtual libMesh::UniquePtr< libMesh::FunctionBase< libMesh::Number > > build_func(const GetPot &input, MultiphysicsSystem &system, std::vector< std::string > &var_names, const std::string §ion)
Builds ConstantFunction objects for boundary conditions.
~MoleFractionsDirichletBCFactory()
virtual void add_found_vars(const GetPot &input, MultiphysicsSystem &system, const std::string §ion, const std::set< std::string > &vars_found, libMesh::CompositeFunction< libMesh::Number > &composite_func, std::set< std::string > &vars_added) const
Here, we're expected vars_found to correspond to mole fractions and we'll add mass fractions...
MoleFractionsDirichletBCFactory(const std::string &bc_type_name)