GRINS-0.8.0
|
Manages runtime construction of Dirichlet boundary conditions. More...
#include <old_style_bc_builder.h>
Public Member Functions | |
OldStyleBCBuilder () | |
~OldStyleBCBuilder () | |
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) |
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) |
Private Member Functions | |
const FEVariablesBase * | determine_variable_group (const std::string &raw_physics_name, const std::string &bc_type_str, std::string &var_section) |
Determine the FEVariable type from the raw_physics_name. More... | |
void | construct_bcs_old_style (const GetPot &input, MultiphysicsSystem &system, const std::string &raw_physics_name, const std::string §ion_name, const std::string &bc_id_str, const std::string &bc_type_str, const std::string &bc_value_str, const std::string &bc_var_str, libMesh::DofMap &dof_map, std::vector< SharedPtr< NeumannBCContainer > > &neumann_bcs) |
void | build_basic_physics (std::set< std::string > &physics_names) |
void | build_vel_and_temp_physics (std::set< std::string > &physics_names) |
void | build_reacting_physics (std::set< std::string > &physics_names) |
template<typename FunctionType > | |
void | set_dirichlet_bc_factory_old_style_quantities (const std::string &bc_value_str, unsigned int value_idx, const std::vector< std::string > &var_names) |
template<typename FunctionType > | |
void | set_neumann_bc_factory_old_style_quantities (const std::string &bc_value_str, unsigned int value_idx, const std::vector< std::string > &var_names) |
void | build_periodic_bc (const GetPot &input, const std::string §ion_name, BoundaryID bc_id, 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 40 of file old_style_bc_builder.h.
|
inline |
Definition at line 44 of file old_style_bc_builder.h.
|
inline |
Definition at line 48 of file old_style_bc_builder.h.
|
private |
Definition at line 273 of file old_style_bc_builder.C.
References GRINS::PhysicsNaming::axisymmetric_heat_transfer(), GRINS::PhysicsNaming::convection_diffusion(), GRINS::PhysicsNaming::elastic_cable(), GRINS::PhysicsNaming::elastic_membrane(), GRINS::PhysicsNaming::heat_conduction(), GRINS::PhysicsNaming::heat_transfer(), GRINS::PhysicsNaming::incompressible_navier_stokes(), GRINS::PhysicsNaming::spalart_allmaras(), and GRINS::PhysicsNaming::stokes().
Referenced by build_bcs().
|
protectedvirtual |
Implements GRINS::BCBuilder.
Definition at line 49 of file old_style_bc_builder.C.
References build_basic_physics(), build_reacting_physics(), build_vel_and_temp_physics(), construct_bcs_old_style(), GRINS::PhysicsNaming::extract_physics(), GRINS::MultiphysicsSystem::get_physics_list(), and grins_warning.
|
private |
Definition at line 296 of file old_style_bc_builder.C.
References GRINS::BCBuilder::add_periodic_bc_to_dofmap().
Referenced by construct_bcs_old_style().
|
private |
Definition at line 291 of file old_style_bc_builder.C.
References GRINS::PhysicsNaming::reacting_low_mach_navier_stokes().
Referenced by build_bcs().
|
private |
Definition at line 286 of file old_style_bc_builder.C.
References GRINS::PhysicsNaming::low_mach_navier_stokes().
Referenced by build_bcs().
|
private |
Definition at line 178 of file old_style_bc_builder.C.
References GRINS::FEVariablesBase::active_var_names(), build_periodic_bc(), GRINS::BCBuilder::construct_dbc_core(), GRINS::BCBuilder::construct_nbc_core(), determine_variable_group(), GRINS::BCBuilder::is_dirichlet_bc_type(), and GRINS::BCBuilder::is_neumann_bc_type().
Referenced by build_bcs().
|
private |
Determine the FEVariable type from the raw_physics_name.
This will set var_section and return the FEVariablesBase pointer. We do it this way, instead of a void function, to avoid a [-Wunused-but-set-parameter] warning on setting the FEVariablesBase pointer.
Definition at line 140 of file old_style_bc_builder.C.
References GRINS::PhysicsNaming::axisymmetric_heat_transfer(), GRINS::PhysicsNaming::convection_diffusion(), GRINS::VariablesParsing::displacement_section(), GRINS::PhysicsNaming::elastic_cable(), GRINS::PhysicsNaming::elastic_membrane(), GRINS::GRINSPrivate::VariableWarehouse::get_variable(), GRINS::PhysicsNaming::heat_conduction(), GRINS::PhysicsNaming::heat_transfer(), GRINS::PhysicsNaming::incompressible_navier_stokes(), GRINS::VariablesParsing::single_var_section(), GRINS::PhysicsNaming::spalart_allmaras(), GRINS::VariablesParsing::species_mass_fractions_section(), GRINS::PhysicsNaming::stokes(), GRINS::VariablesParsing::temperature_section(), GRINS::VariablesParsing::turbulence_section(), and GRINS::VariablesParsing::velocity_section().
Referenced by construct_bcs_old_style().
|
private |
Definition at line 342 of file old_style_bc_builder.C.
References GRINS::DirichletBCFactoryFunctionOldStyleBase< FunctionType >::set_value_index_old_style(), GRINS::DirichletBCFactoryFunctionOldStyleBase< FunctionType >::set_value_var_old_style(), and GRINS::DirichletBCFactoryFunctionOldStyleBase< FunctionType >::set_var_names_old_style().
|
private |
Definition at line 352 of file old_style_bc_builder.C.
References GRINS::NeumannBCOldStyleFactoryAbstract::set_value_index_old_style(), and GRINS::NeumannBCOldStyleFactoryAbstract::set_value_var_old_style().