CG  Version 25
insFactors.h
Go to the documentation of this file.
1 #ifndef INSFACTORS_H
2 #define INSFACTORS_H
3 
4 #include "InsParameters.h"
6 
7 #define USE_COMBINED_FACTORS
8 
9 namespace CGINS_ApproximateFactorization {
10 
15  };
16 #if 0
17  enum SpaceApproximations {
18  finite_difference=0,
19  compact
20  };
21 #endif
22  enum FactorTypes {
28  };
29 
31  public:
32  INS_Factor(const int dir, const FactorTypes ft, const InsParameters &parameters_);
33  virtual ~INS_Factor();
34 
35  virtual void solveRightHandSide(const real &dt, const GridFunction &u, GridFunction &u_star);
36  virtual void solveLeftHandSide(const real &dt, const GridFunction &u, GridFunction &u_star);
37  virtual void addExplicitContribution(const real &dt, const GridFunction &u, realCompositeGridFunction &f);
38 
39  private:
40  // disallow construction w/o an INS parameters object
41  INS_Factor() : CG_ApproximateFactorization::Factor(0), type(R_Factor), parameters(0) {}
42  const FactorTypes type;
43  const InsParameters *parameters;
44  };
45 
46 };
47 
48 #endif