Memosa-FVM  0.2
BCGStab.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 _BCGSTab_H_
6 #define _BCGSTab_H_
7 
8 #include <vector>
9 #include "LinearSystem.h"
10 #include "MultiFieldReduction.h"
11 #include "LinearSolver.h"
12 
13 using namespace std;
14 
20 class BCGStab : public LinearSolver
21 {
22 public:
23 
24  BCGStab();
25  virtual ~BCGStab();
26  virtual MFRPtr solve(LinearSystem & ls);
27 
28  virtual void cleanup();
29  virtual void smooth(LinearSystem& ls);
30 
31  int getTotalIterations() const { return _totalIterations;}
32 
33  DEFINE_TYPENAME("BCGStab");
34 
36 private:
37 
38  BCGStab(const BCGStab&);
39 
41 };
42 
43 #endif
int getTotalIterations() const
Definition: BCGStab.h:31
LinearSolver * preconditioner
Definition: BCGStab.h:35
#define DEFINE_TYPENAME(T)
Definition: RLogInterface.h:46
int _totalIterations
Definition: BCGStab.h:40
shared_ptr< MultiFieldReduction > MFRPtr