ParMooN
 All Classes Functions Variables Friends Pages
SystemTNSE2D.h
1 
10 #ifndef __SYSTEMTNSE2D__
11 #define __SYSTEMTNSE2D__
12 
13 #include <SystemNSE2D.h>
14 
17 {
18  protected:
19 
21  TSquareMatrix2D *SqmatrixM11, *SqmatrixM12, *SqmatrixM21, *SqmatrixM22;
22 
24  double *B;
25 
27  double *defect;
28 
30  double gamma;
31 
34 
37 
40 
43 
44 
45 
46  public:
48  TSystemTNSE2D(TFESpace2D *velocity_fespace, TFESpace2D *presssure_fespace, TFEVectFunct2D *Velocity,
49  TFEFunction2D *p, double *sol, double *rhs, int disctype, int nsetype, int solver
50 #ifdef __PRIVATE__
51  ,TFESpace2D *Projection_space, TFESpace2D *Stress_FeSpace, TFESpace2D *Deformation_FeSpace
52 #endif
53  );
54 
57 
60  void Init(CoeffFct2D *lincoeffs, BoundCondFunct2D *BoundCond, BoundValueFunct2D *U1BoundValue, BoundValueFunct2D *U2BoundValue,
61  TAuxParam2D *aux, TAuxParam2D *nseaux_error);
62 
63 
68  void Assemble(double *sol, double *rhs);
69 
71  void AssembleRhs(double *sol, double *rhs);
72 
74  void AssembleSystMat(double scale, double *oldrhs, double *rhs, double *sol);
75 
78 
80  void RestoreMassMat();
81 
83  void AssembleANonLinear(double *sol, double *rhs);
84 
86  void Solve(double *sol);
87 
89  void GetTNSEResidual(double *sol, double *res);
90 
92  void MeasureTNSEErrors(DoubleFunct2D *ExactU1, DoubleFunct2D *ExactU2, DoubleFunct2D *ExactP, double *AllErrors);
93 };
94 
95 #endif
TAuxParam2D * NSE_Rhsaux
Definition: SystemTNSE2D.h:36
TSquareMatrix2D * SqmatrixM11
Definition: SystemTNSE2D.h:21
void AssembleANonLinear(double *sol, double *rhs)
Definition: SystemTNSE2D.C:665
void AssembleSystMat(double scale, double *oldrhs, double *rhs, double *sol)
Definition: SystemTNSE2D.C:492
TDiscreteForm2D * DiscreteFormRhs
Definition: SystemTNSE2D.h:33
Definition: SquareMatrix2D.h:20
Definition: AuxParam2D.h:22
stores the information of a 2D NSE system matrix
Definition: SystemNSE2D.h:18
void Solve(double *sol)
Definition: SystemTNSE2D.C:817
Definition: FESpace2D.h:28
void AssembleRhs(double *sol, double *rhs)
Definition: SystemTNSE2D.C:456
void MeasureTNSEErrors(DoubleFunct2D *ExactU1, DoubleFunct2D *ExactU2, DoubleFunct2D *ExactP, double *AllErrors)
Definition: SystemTNSE2D.C:924
void Assemble(double *sol, double *rhs)
Definition: SystemTNSE2D.C:206
bool SystMatAssembled
Definition: SystemTNSE2D.h:39
double * defect
Definition: SystemTNSE2D.h:27
void Init(CoeffFct2D *lincoeffs, BoundCondFunct2D *BoundCond, BoundValueFunct2D *U1BoundValue, BoundValueFunct2D *U2BoundValue, TAuxParam2D *aux, TAuxParam2D *nseaux_error)
Definition: SystemTNSE2D.C:93
stores the information of a 2D TNSE system matrix
Definition: SystemTNSE2D.h:16
void AssembleSystMatNonLinear()
Definition: SystemTNSE2D.C:591
Definition: FEVectFunct2D.h:23
Definition: DiscreteForm2D.h:21
double * B
Definition: SystemTNSE2D.h:24
double olderror_l_2_l_2u
Definition: SystemTNSE2D.h:42
double gamma
Definition: SystemTNSE2D.h:30
~TSystemTNSE2D()
Definition: SystemTNSE2D.C:83
TSystemTNSE2D(TFESpace2D *velocity_fespace, TFESpace2D *presssure_fespace, TFEVectFunct2D *Velocity, TFEFunction2D *p, double *sol, double *rhs, int disctype, int nsetype, int solver#ifdef __PRIVATE__, TFESpace2D *Projection_space, TFESpace2D *Stress_FeSpace, TFESpace2D *Deformation_FeSpace#endif)
source file for TSystemTNSE2D
Definition: SystemTNSE2D.C:32
void GetTNSEResidual(double *sol, double *res)
Definition: SystemTNSE2D.C:867
Definition: FEFunction2D.h:24
void RestoreMassMat()
Definition: SystemTNSE2D.C:626