GRINS-0.8.0
neumann_bc_container.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------bl-
2 //--------------------------------------------------------------------------
3 //
4 // GRINS - General Reacting Incompressible Navier-Stokes
5 //
6 // Copyright (C) 2014-2017 Paul T. Bauman, Roy H. Stogner
7 // Copyright (C) 2010-2013 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 #ifndef GRINS_NEUMANN_BC_CONTAINER_H
26 #define GRINS_NEUMANN_BC_CONTAINER_H
27 
28 // GRINS
29 #include "grins/var_typedefs.h"
31 #include "grins/shared_ptr.h"
33 
34 // libMesh
35 #include "libmesh/auto_ptr.h" // UniquePtr
36 
37 namespace GRINS
38 {
40  {
41  public:
42  NeumannBCContainer( const std::set<BoundaryID>& bc_ids, const FEVariablesBase& fe_var,
43  SharedPtr<NeumannBCAbstract>& func )
44  : _bc_ids(bc_ids),
45  _fe_var(fe_var),
46  _func(func)
47  {}
48 
50 
51  bool has_bc_id( BoundaryID bc_id )
52  { return (_bc_ids.find(bc_id) != _bc_ids.end()); }
53 
55  { return _fe_var; }
56 
57  SharedPtr<NeumannBCAbstract>& get_func()
58  { return _func; }
59 
60  private:
61 
62  std::set<BoundaryID> _bc_ids;
63 
65 
66  SharedPtr<NeumannBCAbstract> _func;
67  };
68 
69 } // end namespace GRINS
70 
71 #endif // GRINS_NEUMANN_BC_CONTAINER_H
SharedPtr< NeumannBCAbstract > _func
const FEVariablesBase & _fe_var
NeumannBCContainer(const std::set< BoundaryID > &bc_ids, const FEVariablesBase &fe_var, SharedPtr< NeumannBCAbstract > &func)
std::set< BoundaryID > _bc_ids
SharedPtr< NeumannBCAbstract > & get_func()
libMesh::boundary_id_type BoundaryID
More descriptive name of the type used for boundary ids.
Definition: var_typedefs.h:56
GRINS namespace.
const FEVariablesBase & get_fe_var()
bool has_bc_id(BoundaryID bc_id)

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