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
LinearSolvers.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 LinearSolvers_h
10 #define LinearSolvers_h
11 
12 #include <Enums.h>
13 
14 #include <map>
15 #include <string>
16 
17 namespace YAML {
18 class Node;
19 }
20 
21 namespace sierra{
22 namespace nalu{
23 
24 class LinearSolver;
25 class TpetraLinearSolverConfig;
26 class Simulation;
27 
29 public:
31  ~LinearSolvers();
32 
33  void load(const YAML::Node & node);
34  LinearSolver *create_solver(
35  std::string solverBlockName,
36  EquationType theEQ);
37 
38  Simulation *root();
39  Simulation *parent();
40 
41  typedef std::map<EquationType, LinearSolver *> SolverMap;
42  typedef std::map<std::string, TpetraLinearSolverConfig *> SolverTpetraConfigMap;
43 
44  SolverMap solvers_;
45  SolverTpetraConfigMap solverTpetraConfig_;
46 
48 
49 private:
50 };
51 
52 } // namespace nalu
53 } // namespace Sierra
54 
55 #endif
std::map< EquationType, LinearSolver * > SolverMap
Definition: LinearSolvers.h:41
Definition: Simulation.h:28
Definition: ABLForcingAlgorithm.C:26
std::map< std::string, TpetraLinearSolverConfig * > SolverTpetraConfigMap
Definition: LinearSolvers.h:42
EquationType
Definition: Enums.h:55
SolverTpetraConfigMap solverTpetraConfig_
Definition: LinearSolvers.h:45
Simulation & sim_
Definition: LinearSolvers.h:47
Definition: NaluParsing.C:400
SolverMap solvers_
Definition: LinearSolvers.h:44
Tpetra::Map< LocalOrdinal, GlobalOrdinal >::node_type Node
Definition: LinearSolver.h:32
Definition: LinearSolvers.h:28
Definition: LinearSolver.h:55