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
SolverAlgorithmDriver.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 
9 #ifndef SolverAlgorithmDriver_h
10 #define SolverAlgorithmDriver_h
11 
12 #include<AlgorithmDriver.h>
13 #include<Enums.h>
14 
15 #include<map>
16 
17 namespace sierra{
18 namespace nalu{
19 
20 class Realm;
21 class SolverAlgorithm;
22 
24 {
25 public:
26 
28  Realm &realm);
29  virtual ~SolverAlgorithmDriver();
30 
31  virtual void initialize_connectivity();
32  virtual void pre_work();
33  virtual void execute();
34  virtual void post_work();
35 
36  // different types of algorithms... interior/flux; constraints and dirichlet
37  std::map<std::string, SolverAlgorithm *> solverAlgorithmMap_;
38  std::map<AlgorithmType, SolverAlgorithm *> solverAlgMap_;
39  std::map<AlgorithmType, SolverAlgorithm *> solverConstraintAlgMap_;
40  std::map<AlgorithmType, SolverAlgorithm *> solverDirichAlgMap_;
41 };
42 
43 } // namespace nalu
44 } // namespace Sierra
45 
46 #endif
Definition: SolverAlgorithmDriver.h:23
std::map< std::string, SolverAlgorithm * > solverAlgorithmMap_
Definition: SolverAlgorithmDriver.h:37
Definition: ABLForcingAlgorithm.C:26
SolverAlgorithmDriver(Realm &realm)
Definition: SolverAlgorithmDriver.C:28
virtual ~SolverAlgorithmDriver()
Definition: SolverAlgorithmDriver.C:38
virtual void post_work()
Definition: SolverAlgorithmDriver.C:96
virtual void initialize_connectivity()
Definition: SolverAlgorithmDriver.C:67
virtual void pre_work()
Definition: SolverAlgorithmDriver.C:86
Definition: AlgorithmDriver.h:22
std::map< AlgorithmType, SolverAlgorithm * > solverAlgMap_
Definition: SolverAlgorithmDriver.h:38
virtual void execute()
Definition: SolverAlgorithmDriver.C:105
std::map< AlgorithmType, SolverAlgorithm * > solverConstraintAlgMap_
Definition: SolverAlgorithmDriver.h:39
Definition: Realm.h:82
std::map< AlgorithmType, SolverAlgorithm * > solverDirichAlgMap_
Definition: SolverAlgorithmDriver.h:40