GRINS-0.7.0
|
Manages runtime construction of Dirichlet boundary conditions. More...
#include <default_bc_builder.h>
Public Member Functions | |
DefaultBCBuilder () | |
~DefaultBCBuilder () | |
Public Member Functions inherited from GRINS::BCBuilder | |
BCBuilder () | |
virtual | ~BCBuilder () |
Protected Member Functions | |
virtual void | build_bcs (const GetPot &input, MultiphysicsSystem &system, std::vector< SharedPtr< NeumannBCContainer > > &neumann_bcs) |
void | build_type_based_bcs (const GetPot &input, MultiphysicsSystem &system, const std::set< BoundaryID > &bc_ids, libMesh::DofMap &dof_map, const std::string &type_input_section, std::set< std::string > &var_sections, std::vector< SharedPtr< NeumannBCContainer > > &neumann_bcs) |
Helper function to build boundary conditions specified by a single type. More... | |
void | build_axisymmetric_bcs (const GetPot &input, MultiphysicsSystem &system, const std::set< BoundaryID > &bc_ids, libMesh::DofMap &dof_map, const std::string &bc_type, std::set< std::string > &var_sections, std::vector< SharedPtr< NeumannBCContainer > > &neumann_bcs) |
void | build_bcs_by_var_section (const GetPot &input, MultiphysicsSystem &system, const std::string &bc_name, const std::set< BoundaryID > &bc_ids, libMesh::DofMap &dof_map, std::set< std::string > &var_sections, std::vector< SharedPtr< NeumannBCContainer > > &neumann_bcs) |
Helper function to build boundary conditions using Variable sections. More... | |
void | parse_and_build_bc_id_map (const GetPot &input, std::map< std::string, std::set< BoundaryID > > &bc_id_map) |
void | verify_bc_ids_with_mesh (const MultiphysicsSystem &system, const std::map< std::string, std::set< BoundaryID > > &bc_id_map) const |
void | parse_var_sections (const GetPot &input, std::set< std::string > §ions) |
void | build_periodic_bc (const GetPot &input, libMesh::System &system, const std::set< BoundaryID > &bc_ids, const std::string §ion) |
void | parse_periodic_master_slave_ids (const GetPot &input, const std::string §ion, libMesh::boundary_id_type &master_id, libMesh::boundary_id_type &slave_id) const |
libMesh::RealVectorValue | parse_periodic_offset (const GetPot &input, const std::string §ion) const |
Protected Member Functions inherited from GRINS::BCBuilder | |
void | construct_dbc_core (const GetPot &input, MultiphysicsSystem &system, const std::set< BoundaryID > &bc_ids, const FEVariablesBase &fe_var, const std::string §ion, const std::string &bc_type, libMesh::DofMap &dof_map) |
void | construct_nbc_core (const GetPot &input, MultiphysicsSystem &system, const std::set< BoundaryID > &bc_ids, const FEVariablesBase &fe_var, const std::string §ion, const std::string &bc_type, std::vector< SharedPtr< NeumannBCContainer > > &neumann_bcs) |
bool | is_dirichlet_bc_type (const std::string &bc_type) |
bool | is_neumann_bc_type (const std::string &bc_type) |
void | add_periodic_bc_to_dofmap (libMesh::boundary_id_type master_id, libMesh::boundary_id_type slave_id, const libMesh::RealVectorValue &offset_vector, libMesh::DofMap &dof_map) |
Additional Inherited Members | |
Static Public Member Functions inherited from GRINS::BCBuilder | |
static void | build_boundary_conditions (const GetPot &input, MultiphysicsSystem &system, std::vector< SharedPtr< NeumannBCContainer > > &neumann_bcs) |
Static Protected Member Functions inherited from GRINS::BCBuilder | |
static bool | is_new_bc_input_style (const GetPot &input) |
static libMesh::UniquePtr< BCBuilder > | build_builder (const GetPot &input) |
Manages runtime construction of Dirichlet boundary conditions.
This will parse the input for the request Dirichlet boundary conditions and manage their construction. Actual construction of the DirichletBoundary objects is delegated to factory classes. This builder classes merely manages tasks around the factories as needed. To add new Dirichlet boundary conditions, the user should instantiate an appropriate factory sub class.
Definition at line 46 of file default_bc_builder.h.
|
inline |
Definition at line 50 of file default_bc_builder.h.
|
inline |
Definition at line 54 of file default_bc_builder.h.
|
protected |
Definition at line 130 of file default_bc_builder.C.
References GRINS::BCBuilder::construct_dbc_core(), GRINS::BCBuilder::construct_nbc_core(), GRINS::GRINSPrivate::VariableWarehouse::get_variable(), GRINS::FEVariablesBase::is_constraint_var(), GRINS::BCBuilder::is_dirichlet_bc_type(), and GRINS::BCBuilder::is_neumann_bc_type().
Referenced by build_type_based_bcs().
|
protectedvirtual |
Implements GRINS::BCBuilder.
Definition at line 45 of file default_bc_builder.C.
References GRINS::BoundaryConditionNames::bc_section(), build_bcs_by_var_section(), build_type_based_bcs(), parse_and_build_bc_id_map(), parse_var_sections(), and verify_bc_ids_with_mesh().
|
protected |
Helper function to build boundary conditions using Variable sections.
This is the "standard" part. We parse for each Variable section that should have boundary conditions and then parse the boundary condition type.
Definition at line 183 of file default_bc_builder.C.
References GRINS::BoundaryConditionNames::bc_section(), GRINS::BCBuilder::construct_dbc_core(), GRINS::BCBuilder::construct_nbc_core(), GRINS::GRINSPrivate::VariableWarehouse::get_variable(), GRINS::FEVariablesBase::is_constraint_var(), GRINS::BCBuilder::is_dirichlet_bc_type(), and GRINS::BCBuilder::is_neumann_bc_type().
Referenced by build_bcs().
|
protected |
Definition at line 376 of file default_bc_builder.C.
References GRINS::BCBuilder::add_periodic_bc_to_dofmap(), parse_periodic_master_slave_ids(), and parse_periodic_offset().
Referenced by build_type_based_bcs().
|
protected |
Helper function to build boundary conditions specified by a single type.
Examples include axisymmetric and periodic.
Definition at line 93 of file default_bc_builder.C.
References GRINS::BoundaryConditionNames::axisymmetric(), build_axisymmetric_bcs(), build_periodic_bc(), GRINS::Physics::is_axisymmetric(), and GRINS::BoundaryConditionNames::periodic().
Referenced by build_bcs().
|
protected |
Definition at line 247 of file default_bc_builder.C.
References GRINS::BoundaryConditionNames::bc_id_name_map_var(), GRINS::BoundaryConditionNames::bc_ids_var(), and GRINS::StringUtilities::split_string().
Referenced by build_bcs(), GRINSTesting::DefaultBCBuilderTest::test_parse_and_build_bc_id_map(), and GRINSTesting::DefaultBCBuilderTest::test_verify_bc_ids_with_mesh().
|
protected |
Definition at line 416 of file default_bc_builder.C.
Referenced by build_periodic_bc(), and GRINSTesting::DefaultBCBuilderTest::test_parse_periodic_master_slave_ids().
|
protected |
Definition at line 434 of file default_bc_builder.C.
Referenced by build_periodic_bc(), and GRINSTesting::DefaultBCBuilderTest::test_parse_periodic_offset().
|
protected |
Definition at line 339 of file default_bc_builder.C.
References GRINS::StringUtilities::split_string(), and GRINS::VariablesParsing::variables_section().
Referenced by build_bcs(), and GRINSTesting::DefaultBCBuilderTest::test_parse_var_sections().
|
protected |
Definition at line 301 of file default_bc_builder.C.
Referenced by build_bcs(), and GRINSTesting::DefaultBCBuilderTest::test_verify_bc_ids_with_mesh().