GRINS-0.8.0
parsed_function_neumann_bc_factory_helper.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_PARSED_FUNCTION_NEUMANN_BC_FACTORY_HELPER_H
26 #define GRINS_PARSED_FUNCTION_NEUMANN_BC_FACTORY_HELPER_H
27 
28 // C++
29 #include <vector>
30 #include <string>
31 
32 // GRINS
33 #include "grins/var_typedefs.h"
34 #include "grins/shared_ptr.h"
36 #include "grins/string_utils.h"
38 
39 // libMesh forward declarations
40 class GetPot;
41 
42 namespace GRINS
43 {
44  // Forward declarations
45  class MultiphysicsSystem;
46 
47  template<typename FunctionType>
49  {
50  public:
51 
53 
55 
56  protected:
57 
59 
60  SharedPtr<NeumannBCAbstract> build_neumman_func_common( const GetPot& input,
61  MultiphysicsSystem& system,
62  const FEVariablesBase& fe_var,
63  const std::string& flux_input );
64 
66  SharedPtr<NeumannBCAbstract> build_parsed_neumann_func(MultiphysicsSystem& system,
67  const std::string& expression,
68  VariableIndex var_idx );
69 
71  SharedPtr<NeumannBCAbstract>
73  const std::vector<std::string>& expressions,
74  const std::vector<VariableIndex>& var_indices );
75  };
76 
77 } // end namespace GRINS
78 
79 #endif // GRINS_PARSED_FUNCTION_NEUMANN_BC_FACTORY_HELPER_H
unsigned int VariableIndex
More descriptive name of the type used for variable indices.
Definition: var_typedefs.h:42
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.
GRINS namespace.
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.
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.
Interface with libMesh for solving Multiphysics problems.

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