Nalu
Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of energy applications of interest (most notably Wind ECP) built on the Sierra Toolkit and Trilinos solver Tpetra/Epetra stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information. http://NaluCFD.org
MasterElementFactory.h
Go to the documentation of this file.
1 /*------------------------------------------------------------------------*/
2 /* Copyright 2014 Sandia Corporation. */
3 /* This software is released under the license detailed */
4 /* in the file, LICENSE, which is located in the top-level Nalu */
5 /* directory structure */
6 /*------------------------------------------------------------------------*/
7 
8 #ifndef MasterElementFactory_h
9 #define MasterElementFactory_h
10 
11 #include <string>
12 #include <map>
13 #include <memory>
14 
15 namespace stk { struct topology; }
16 
17 namespace sierra{
18 namespace nalu{
19  class MasterElement;
20 
22  {
23  public:
24  static MasterElement*
25  get_surface_master_element(
26  const stk::topology& theTopo,
27  int dimension = 0,
28  std::string quadType = "GaussLegendre");
29 
30  static MasterElement*
31  get_volume_master_element(
32  const stk::topology& theTopo,
33  int dimension = 0,
34  std::string quadType = "GaussLegendre");
35 
36  static void clear();
37  private:
38  MasterElementRepo() = default;
39  static std::map<stk::topology, std::unique_ptr<MasterElement>> surfaceMeMap_;
40  static std::map<stk::topology, std::unique_ptr<MasterElement>> volumeMeMap_;
41  };
42 
43 } // namespace nalu
44 } // namespace sierra
45 
46 #endif
Definition: ABLForcingAlgorithm.C:26
Definition: MasterElement.h:53
Definition: Algorithm.h:14
static std::map< stk::topology, std::unique_ptr< MasterElement > > surfaceMeMap_
Definition: MasterElementFactory.h:39
Definition: MasterElementFactory.h:21
static std::map< stk::topology, std::unique_ptr< MasterElement > > volumeMeMap_
Definition: MasterElementFactory.h:40
Definition: UnitTestMasterElements.C:367