GRINS-0.8.0
List of all members | Public Member Functions | Protected Member Functions
GRINS::HomogeneousNeumannBCFactory Class Reference

Generic factory for homogeneous Neumann boundary conditions. More...

#include <homogeneous_neumann_bc_factory.h>

Inheritance diagram for GRINS::HomogeneousNeumannBCFactory:
Inheritance graph
[legend]
Collaboration diagram for GRINS::HomogeneousNeumannBCFactory:
Collaboration graph
[legend]

Public Member Functions

 HomogeneousNeumannBCFactory (const std::string &bc_type_name)
 
virtual ~HomogeneousNeumannBCFactory ()
 
- Public Member Functions inherited from GRINS::NeumannBCFactoryAbstract
 NeumannBCFactoryAbstract (const std::string &bc_type_name)
 
 ~NeumannBCFactoryAbstract ()
 
virtual libMesh::UniquePtr< NeumannBCContainercreate ()
 Creates NeumannBCContainer for this Factory object. More...
 
- Public Member Functions inherited from GRINS::BCFactoryAbstract< NeumannBCContainer >
 BCFactoryAbstract (const std::string &bc_type_name)
 
 ~BCFactoryAbstract ()
 
- Public Member Functions inherited from GRINS::FactoryWithGetPot< NeumannBCContainer >
 FactoryWithGetPot (const std::string &name)
 
 ~FactoryWithGetPot ()
 
- Public Member Functions inherited from GRINS::FactoryAbstract< NeumannBCContainer >
virtual ~FactoryAbstract ()
 

Protected Member Functions

virtual SharedPtr< NeumannBCAbstractbuild_neumann_func (const GetPot &, MultiphysicsSystem &, const FEVariablesBase &, const std::string &)
 Do nothing. More...
 
- Protected Member Functions inherited from GRINS::NeumannBCFactoryAbstract
void check_for_flux (const GetPot &input, const std::string &section, 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 &section, 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...
 

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 &section)
 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< NeumannBCContainerbuild (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...
 

Detailed Description

Generic factory for homogeneous Neumann boundary conditions.

Merely need to set _is_homogeneous to true at construction time, then the create() method in the base classes should just ignore this boundary condition factory and not construct anything, which is what we want for "do nothing" boundary conditions.

Definition at line 38 of file homogeneous_neumann_bc_factory.h.

Constructor & Destructor Documentation

GRINS::HomogeneousNeumannBCFactory::HomogeneousNeumannBCFactory ( const std::string &  bc_type_name)
inline

Definition at line 41 of file homogeneous_neumann_bc_factory.h.

References GRINS::NeumannBCFactoryAbstract::_is_homogeneous.

42  : NeumannBCFactoryAbstract(bc_type_name)
43  { _is_homogeneous = true; }
NeumannBCFactoryAbstract(const std::string &bc_type_name)
bool _is_homogeneous
Track if this is a homogeneous Neumann boundary condition.
virtual GRINS::HomogeneousNeumannBCFactory::~HomogeneousNeumannBCFactory ( )
inlinevirtual

Definition at line 45 of file homogeneous_neumann_bc_factory.h.

45 {};

Member Function Documentation

virtual SharedPtr<NeumannBCAbstract> GRINS::HomogeneousNeumannBCFactory::build_neumann_func ( const GetPot &  ,
MultiphysicsSystem ,
const FEVariablesBase ,
const std::string &   
)
inlineprotectedvirtual

Do nothing.

Implements GRINS::NeumannBCFactoryAbstract.

Definition at line 53 of file homogeneous_neumann_bc_factory.h.

57  { libmesh_error(); // This should never get called
58  return SharedPtr<NeumannBCAbstract>(); }

The documentation for this class was generated from the following file:

Generated on Tue Dec 19 2017 12:47:31 for GRINS-0.8.0 by  doxygen 1.8.9.1