Memosa-FVM  0.2
LinearSolver.h
Go to the documentation of this file.
1 // This file os part of FVM
2 // Copyright (c) 2012 FVM Authors
3 // See LICENSE file for terms.
4 
5 #ifndef _LINEARSOLVER_H_
6 #define _LINEARSOLVER_H_
7 
8 
9 #include <vector>
10 #include "LinearSystem.h"
11 #include "MultiFieldReduction.h"
12 
13 using namespace std;
14 
16 {
17 public:
18 
20  nMaxIterations(100),
21  verbosity(2),
22  relativeTolerance(1e-8),
23  absoluteTolerance(1e-50)
24  {}
25 
26  virtual MFRPtr solve(LinearSystem & ls)=0;
27  virtual void cleanup()=0;
28 
29  virtual void smooth(LinearSystem& ls) = 0;
30 
32  int verbosity;
35 };
36 
37 
38 #endif
int nMaxIterations
Definition: LinearSolver.h:31
double relativeTolerance
Definition: LinearSolver.h:33
double absoluteTolerance
Definition: LinearSolver.h:34
shared_ptr< MultiFieldReduction > MFRPtr