GRINS-0.8.0
List of all members | Public Member Functions | Protected Member Functions
GRINS::SymmetryTypeBCFactories Class Referenceabstract

#include <symmetry_type_bc_factories.h>

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

Public Member Functions

 SymmetryTypeBCFactories (const std::string &bc_type_name)
 
 ~SymmetryTypeBCFactories ()
 
- Public Member Functions inherited from GRINS::DirichletBCFactoryFunctionBase< libMesh::FunctionBase< libMesh::Number > >
 DirichletBCFactoryFunctionBase (const std::string &bc_type_name)
 
 ~DirichletBCFactoryFunctionBase ()
 
- Public Member Functions inherited from GRINS::DirichletBCFactoryAbstract
 DirichletBCFactoryAbstract (const std::string &bc_type_name)
 
 ~DirichletBCFactoryAbstract ()
 
- Public Member Functions inherited from GRINS::BCFactoryAbstract< libMesh::DirichletBoundary >
 BCFactoryAbstract (const std::string &bc_type_name)
 
 ~BCFactoryAbstract ()
 
- Public Member Functions inherited from GRINS::FactoryWithGetPot< libMesh::DirichletBoundary >
 FactoryWithGetPot (const std::string &name)
 
 ~FactoryWithGetPot ()
 
- Public Member Functions inherited from GRINS::FactoryAbstract< libMesh::DirichletBoundary >
virtual ~FactoryAbstract ()
 

Protected Member Functions

virtual void trim_var_names (std::vector< std::string > &var_names)=0
 Trim out the variables that are pinned. More...
 
virtual libMesh::UniquePtr< libMesh::FunctionBase< libMesh::Number > > build_func (const GetPot &, MultiphysicsSystem &, std::vector< std::string > &var_names, const std::string &)
 All the variables are 0, so just return 0 function. More...
 
- Protected Member Functions inherited from GRINS::DirichletBCFactoryFunctionBase< libMesh::FunctionBase< libMesh::Number > >
libMesh::UniquePtr< libMesh::DirichletBoundary > make_dirichlet_boundary (const std::set< BoundaryID > &bc_ids, const libMesh::System &system, libMesh::UniquePtr< libMesh::FunctionBase< libMesh::Number > > &func, const std::vector< VariableIndex > &var_indices)
 Dispatch, based on FunctionType, to the correct DirchletBoundary construction. More...
 
virtual const std::vector< std::string > & get_var_names () const
 Helper function that can be overridded in subclasses. More...
 
- Protected Member Functions inherited from GRINS::DirichletBCFactoryAbstract
void check_for_vars (const GetPot &input, const std::string &section, const std::vector< std::string > &var_names, std::set< std::string > *vars_found=NULL)
 Helper function. More...
 
- Protected Member Functions inherited from GRINS::BCFactoryAbstract< libMesh::DirichletBoundary >
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< libMesh::DirichletBoundary >
 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< libMesh::DirichletBoundary >
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< libMesh::DirichletBoundary >
static void set_getpot (const GetPot &input)
 
- Static Public Member Functions inherited from GRINS::FactoryAbstract< libMesh::DirichletBoundary >
static libMesh::UniquePtr< libMesh::DirichletBoundary > build (const std::string &name)
 Use this method to build objects of type Base. More...
 
- Static Protected Member Functions inherited from GRINS::FactoryAbstract< libMesh::DirichletBoundary >
static FactoryAbstract< libMesh::DirichletBoundary > & 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< libMesh::DirichletBoundary > * > & factory_map ()
 
- Static Protected Attributes inherited from GRINS::BCFactoryAbstract< libMesh::DirichletBoundary >
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< libMesh::DirichletBoundary >
static const GetPot * _input
 We store only a raw pointer here because we can't make a copy. More...
 

Detailed Description

Definition at line 36 of file symmetry_type_bc_factories.h.

Constructor & Destructor Documentation

GRINS::SymmetryTypeBCFactories::SymmetryTypeBCFactories ( const std::string &  bc_type_name)
inline
GRINS::SymmetryTypeBCFactories::~SymmetryTypeBCFactories ( )
inline

Definition at line 44 of file symmetry_type_bc_factories.h.

44 {};

Member Function Documentation

virtual libMesh::UniquePtr<libMesh::FunctionBase<libMesh::Number> > GRINS::SymmetryTypeBCFactories::build_func ( const GetPot &  ,
MultiphysicsSystem ,
std::vector< std::string > &  var_names,
const std::string &   
)
inlineprotectedvirtual

All the variables are 0, so just return 0 function.

Implements GRINS::DirichletBCFactoryFunctionBase< libMesh::FunctionBase< libMesh::Number > >.

Definition at line 57 of file symmetry_type_bc_factories.h.

References trim_var_names().

61  {
62  this->trim_var_names(var_names);
63  return libMesh::UniquePtr<libMesh::FunctionBase<libMesh::Number> >( new libMesh::ZeroFunction<libMesh::Number> );
64  }
virtual void trim_var_names(std::vector< std::string > &var_names)=0
Trim out the variables that are pinned.
virtual void GRINS::SymmetryTypeBCFactories::trim_var_names ( std::vector< std::string > &  var_names)
protectedpure virtual

Trim out the variables that are pinned.

Symmetry-type boundary conditions amount to pinning a subset of the group of variables, e.g. Velocity or Displacement. Subclasses merely implement this method and remove the variables from var_names that DON'T need to be pinned.

Implemented in GRINS::AxisymmetryBCFactory, GRINS::RollerZBCFactory, GRINS::RollerYBCFactory, GRINS::RollerXBCFactory, GRINS::XYSymmetryBCFactory, GRINS::XZSymmetryBCFactory, and GRINS::YZSymmetryBCFactory.

Referenced by build_func().


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

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