GRINS-0.8.0
|
#include <parsed_function_neumann_bc_factory.h>
Protected Member Functions | |
virtual SharedPtr< NeumannBCAbstract > | build_neumann_func (const GetPot &input, MultiphysicsSystem &system, const FEVariablesBase &fe_var, const std::string §ion) |
Builds the NeumannBCAbstract object for Neumann boundary conditions. More... | |
virtual std::string | flux_input (const std::string §ion) const |
Protected Member Functions inherited from GRINS::NeumannBCFactoryAbstract | |
void | check_for_flux (const GetPot &input, const std::string §ion, const std::vector< std::string > &var_names) |
Checks that the flux variable has been set. More... | |
Protected Member Functions inherited from GRINS::BCFactoryAbstract< NeumannBCContainer > | |
void | check_for_multiple_expressions (const GetPot &input, const std::string §ion, const std::string &var_name) const |
Ensure that there is only one expression for the [Section/var_name] variable. More... | |
void | build_var_indices (const MultiphysicsSystem &system, const std::vector< std::string > &var_names, std::vector< VariableIndex > &var_indices) const |
virtual void | check_state () const |
Helper function to reduce code duplication. More... | |
virtual void | reset_state () |
Helper function to redue code duplication. More... | |
Protected Member Functions inherited from GRINS::FactoryAbstract< NeumannBCContainer > | |
FactoryAbstract (const std::string &name) | |
Constructor is protected. Use the build() method to construct Base objects. More... | |
Protected Member Functions inherited from GRINS::ParsedFunctionNeumannBCFactoryHelper< FunctionType > | |
SharedPtr< NeumannBCAbstract > | build_neumman_func_common (const GetPot &input, MultiphysicsSystem &system, const FEVariablesBase &fe_var, const std::string &flux_input) |
Helper function containing common code. More... | |
SharedPtr< NeumannBCAbstract > | build_parsed_neumann_func (MultiphysicsSystem &system, const std::string &expression, VariableIndex var_idx) |
Helper function that builds the right BC object depending on the FunctionType. More... | |
SharedPtr< NeumannBCAbstract > | build_composite_parsed_neumann_func (MultiphysicsSystem &system, const std::vector< std::string > &expressions, const std::vector< VariableIndex > &var_indices) |
Helper function that builds the right CompositeBC object depending on the FunctionType. More... | |
template<> | |
SharedPtr< NeumannBCAbstract > | build_parsed_neumann_func (MultiphysicsSystem &, const std::string &expression, VariableIndex var_idx) |
template<> | |
SharedPtr< NeumannBCAbstract > | build_parsed_neumann_func (MultiphysicsSystem &system, const std::string &expression, VariableIndex var_idx) |
template<> | |
SharedPtr< NeumannBCAbstract > | build_composite_parsed_neumann_func (MultiphysicsSystem &, const std::vector< std::string > &expressions, const std::vector< VariableIndex > &var_indices) |
template<> | |
SharedPtr< NeumannBCAbstract > | build_composite_parsed_neumann_func (MultiphysicsSystem &system, const std::vector< std::string > &expressions, const std::vector< VariableIndex > &var_indices) |
Additional Inherited Members | |
Static Public Member Functions inherited from GRINS::BCFactoryAbstract< NeumannBCContainer > | |
static void | set_system (MultiphysicsSystem &system) |
static void | set_bc_ids (const std::set< BoundaryID > &bc_ids) |
Boundary id for the current boundary condition section. More... | |
static void | set_fe_var (const FEVariablesBase &fe_var) |
Active variable for the current boundary condition. More... | |
static void | set_section (const std::string §ion) |
Sets the current section of the input file. More... | |
static bool | have_bc_type (const std::string &bc_type) |
Static Public Member Functions inherited from GRINS::FactoryWithGetPot< NeumannBCContainer > | |
static void | set_getpot (const GetPot &input) |
Static Public Member Functions inherited from GRINS::FactoryAbstract< NeumannBCContainer > | |
static libMesh::UniquePtr< NeumannBCContainer > | build (const std::string &name) |
Use this method to build objects of type Base. More... | |
Static Protected Member Functions inherited from GRINS::FactoryAbstract< NeumannBCContainer > | |
static FactoryAbstract< NeumannBCContainer > & | get_factory (const std::string &name) |
Helper method that looks up the factory and returns it if present, or error if it's not. More... | |
static DerivedType & | get_factory_subclass (const std::string &name) |
Like get_factory, but will downcast to DerivedType. More... | |
static std::map< std::string, FactoryAbstract< NeumannBCContainer > * > & | factory_map () |
Protected Attributes inherited from GRINS::NeumannBCFactoryAbstract | |
bool | _is_homogeneous |
Track if this is a homogeneous Neumann boundary condition. More... | |
Static Protected Attributes inherited from GRINS::BCFactoryAbstract< NeumannBCContainer > | |
static MultiphysicsSystem * | _system |
We store only a raw pointer here because we can't make a copy. More... | |
static const std::set< BoundaryID > * | _bc_ids |
BoundaryID for constructing a particular boundary condition. More... | |
static const FEVariablesBase * | _fe_var |
The FEVariablesBase class associated with the boundary condition being built. More... | |
static std::string | _section |
Static Protected Attributes inherited from GRINS::FactoryWithGetPot< NeumannBCContainer > | |
static const GetPot * | _input |
We store only a raw pointer here because we can't make a copy. More... | |
Definition at line 36 of file parsed_function_neumann_bc_factory.h.
|
inline |
Definition at line 41 of file parsed_function_neumann_bc_factory.h.
|
inline |
Definition at line 46 of file parsed_function_neumann_bc_factory.h.
|
inlineprotectedvirtual |
Builds the NeumannBCAbstract object for Neumann boundary conditions.
Subclasses should override this function to build the NeumannBCAbstract object that corresponds to the variables passed in var_names. The FEVariableBase object corresponds to the variable associated with this boundary condition, e.g. Velocity. The section arguments corresponds to the section to parse for the flux in the input file, e.g. input(section+"/"+flux). Note that for Variables with more than one component, the flux input should be a vector the size of the var_names object, even if one of the components is zero.
Implements GRINS::NeumannBCFactoryAbstract.
Definition at line 51 of file parsed_function_neumann_bc_factory.h.
References GRINS::FEVariablesBase::active_var_names(), GRINS::ParsedFunctionNeumannBCFactoryHelper< FunctionType >::build_neumman_func_common(), GRINS::NeumannBCFactoryAbstract::check_for_flux(), and GRINS::ParsedFunctionNeumannBCFactory< FunctionType >::flux_input().
|
inlineprotectedvirtual |
Reimplemented in GRINS::ParsedTractionBCFactory< FunctionType >.
Definition at line 64 of file parsed_function_neumann_bc_factory.h.
References GRINS::BoundaryConditionNames::bc_flux_var().
Referenced by GRINS::ParsedFunctionNeumannBCFactory< FunctionType >::build_neumann_func().