ParMooN
 All Classes Functions Variables Friends Pages
FgmresIte.h
1 // =======================================================================
2 // @(#)ItMethod.h 1.6 10/18/99
3 //
4 // Class: TFgmresIte
5 // Purpose: defines the fixed point iteration
6 //
7 // Author: Volker John
8 //
9 // History: start of implementation 24.10.2000
10 //
11 // =======================================================================
12 #ifndef __FGMRESITE__
13 #define __FGMRESITE__
14 
15 #ifdef _MPI
16  #ifdef __3D__
17  #include <ParFECommunicator3D.h>
18  #else
19  #include <ParFECommunicator2D.h>
20  #endif
21 #endif
22 
23 #include <ItMethod.h>
24 
26 class TFgmresIte : public TItMethod
27 {
28  protected:
29 
31  double *s;
32  double *cosi;
33  double *sn;
34 
36  double *d;
37  double *z;
38 
40  double **H;
41  double **v;
42  double **zv;
43 
44 #ifdef _MPI
45  #ifdef __3D__
46  TParFECommunicator3D *ParComm;
47  #else
48  TParFECommunicator2D *ParComm;
49  #endif
50 #endif
51 
52  public:
54  TFgmresIte(MatVecProc *MatVec, DefectProc *Defect, TItMethod *Prec,
55  int n_aux, int N_Unknowns, int scalar);
56 
57 #ifdef _MPI
58  TFgmresIte(MatVecProc *MatVec, DefectProc *Defect, TItMethod *Prec,
59  int n_aux, int N_Unknowns, int scalar,
60  #ifdef __3D__
61  TParFECommunicator3D *parcomm
62  #else
63  TParFECommunicator2D *parcomm
64  #endif
65  );
66 #endif
67 
68  virtual ~TFgmresIte();
69 
71  int Iterate(TSquareMatrix **A, TMatrix **B, double *sol,
72  double *rhs);
73 };
74 #endif
TFgmresIte(MatVecProc *MatVec, DefectProc *Defect, TItMethod *Prec, int n_aux, int N_Unknowns, int scalar)
Definition: FgmresIte.C:28
Definition: Matrix.h:21
Definition: FgmresIte.h:26
double * s
Definition: FgmresIte.h:31
Definition: SquareMatrix.h:20
double * d
Definition: FgmresIte.h:36
virtual ~TFgmresIte()
Definition: FgmresIte.C:225
double ** H
Definition: FgmresIte.h:40
int Iterate(TSquareMatrix **A, TMatrix **B, double *sol, double *rhs)
Definition: FgmresIte.C:295
Definition: ParFECommunicator3D.h:25
Definition: ItMethod.h:19
Definition: ParFECommunicator2D.h:20