25 #ifndef GRINS_ISOTHERMAL_DIRICHLET_OLD_STYLE_BC_FACTORY_H
26 #define GRINS_ISOTHERMAL_DIRICHLET_OLD_STYLE_BC_FACTORY_H
33 #include "libmesh/const_function.h"
49 virtual libMesh::UniquePtr<libMesh::FunctionBase<libMesh::Number> >
52 std::vector<std::string>& var_names,
53 const std::string& section );
57 libMesh::UniquePtr<libMesh::FunctionBase<libMesh::Number> >
61 std::vector<std::string>& var_names,
62 const std::string& section )
65 libmesh_assert_equal_to(var_names.size(), 1 );
67 std::string bc_id_string = StringUtilities::T_to_string<BoundaryID>( *(
_bc_ids->begin()) );
69 std::string input_var = section+
"/T_wall_"+bc_id_string;
71 if( !input.have_variable(input_var) )
72 libmesh_error_msg(
"ERROR: Could not find input variable "+input_var+
"!");
74 libMesh::Number value = input(input_var, 0.0);
76 return libMesh::UniquePtr<libMesh::FunctionBase<libMesh::Number> >(
new libMesh::ConstFunction<libMesh::Number>(value) );
81 #endif // GRINS_ISOTHERMAL_DIRICHLET_OLD_STYLE_BC_FACTORY_H
~IsothermalDirichletOldStyleBCFactory()
static const std::set< BoundaryID > * _bc_ids
BoundaryID for constructing a particular boundary condition.
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 the FunctionBase object for boundary condition.
IsothermalDirichletOldStyleBCFactory(const std::string &bc_type_name)
Interface with libMesh for solving Multiphysics problems.