ParMooN
 All Classes Functions Variables Friends Pages
Public Member Functions | Protected Attributes | List of all members
TNSE3DMGLevel2 Class Reference
Inheritance diagram for TNSE3DMGLevel2:
Inheritance graph
[legend]
Collaboration diagram for TNSE3DMGLevel2:
Collaboration graph
[legend]

Public Member Functions

 TNSE3DMGLevel2 (int level, TSquareMatrix3D *A, TMatrix3D *B1, TMatrix3D *B2, TMatrix3D *B3, TMatrix3D *B1T, TMatrix3D *B2T, TMatrix3D *B3T, double *f1, double *f2, double *f3, double *g, double *u1, double *u2, double *u3, double *p, int n_aux, double al, int VelocitySpace, int PressureSpace, TCollection *coll)
 
 ~TNSE3DMGLevel2 ()
 
virtual void Defect (double *u1, double *u2, double *u3, double *p, double *f1, double *f2, double *f3, double *g, double *d1, double *d2, double *d3, double *d4, double &res)
 
virtual void CorrectNodes (double *u1, double *u2, double *u3, double *p)
 
virtual void CellVanka (double *u1, double *u2, double *u3, double *p, double *rhs1, double *rhs2, double *rhs3, double *rhs4, double *def1, double *def2, double *def3, double *def4, double *aux, double *Counters, int N_Parameters, double *Parameters, int smoother, int N_Levels)
 
virtual void NodalVanka (double *u1, double *u2, double *u3, double *p, double *rhs1, double *rhs2, double *rhs3, double *rhs4, double *def1, double *def2, double *def3, double *def4, double *aux, double *Counters, int N_Parameters, double *Parameters, int smoother, int N_Levels)
 
virtual void SolveExact (double *u1, double *u2, double *u3, double *p, double *rhs1, double *rhs2, double *rhs3, double *rhs4, double *aux, double *Counters, int N_Parameters, double *Parameters)
 
virtual void BraessSarazin (double *u1, double *u2, double *u3, double *p, double *rhs1, double *rhs2, double *rhs3, double *rhs4, double *aux, double *Counters, int N_Parameters, double *Parameters, int N_Levels)
 
virtual double StepLengthControl (double *u1, double *u2, double *u3, double *p, double *u1old, double *u2old, double *u3old, double *pold, double *def1, double *def2, double *def3, double *def4, int N_Parameters, double *Parameter)
 
virtual void PrintAll ()
 

Protected Attributes

TSquareMatrix3DA
 
TSquareStructure3DStructureA
 
int * ARowPtr
 
int * AKCol
 
double * AEntries
 
TMatrix3DB1
 
TMatrix3DB2
 
TMatrix3DB3
 
TStructure3DStructureB
 
int * BRowPtr
 
int * BKCol
 
double * B1Entries
 
double * B2Entries
 
double * B3Entries
 
TMatrix3DB1T
 
TMatrix3DB2T
 
TMatrix3DB3T
 
TStructure3DStructureBT
 
int * BTRowPtr
 
int * BTKCol
 
double * B1TEntries
 
double * B2TEntries
 
double * B3TEntries
 

Constructor & Destructor Documentation

TNSE3DMGLevel2::TNSE3DMGLevel2 ( int  level,
TSquareMatrix3D A,
TMatrix3D B1,
TMatrix3D B2,
TMatrix3D B3,
TMatrix3D B1T,
TMatrix3D B2T,
TMatrix3D B3T,
double *  f1,
double *  f2,
double *  f3,
double *  g,
double *  u1,
double *  u2,
double *  u3,
double *  p,
int  n_aux,
double  al,
int  VelocitySpace,
int  PressureSpace,
TCollection coll 
)

constructor

TNSE3DMGLevel2::~TNSE3DMGLevel2 ( )

destructor

Member Function Documentation

virtual void TNSE3DMGLevel2::BraessSarazin ( double *  u1,
double *  u2,
double *  u3,
double *  p,
double *  rhs1,
double *  rhs2,
double *  rhs3,
double *  rhs4,
double *  aux,
double *  Counters,
int  N_Parameters,
double *  Parameters,
int  N_Levels 
)
virtual

Braess Sarazin smoother

virtual void TNSE3DMGLevel2::CellVanka ( double *  u1,
double *  u2,
double *  u3,
double *  p,
double *  rhs1,
double *  rhs2,
double *  rhs3,
double *  rhs4,
double *  def1,
double *  def2,
double *  def3,
double *  def4,
double *  aux,
double *  Counters,
int  N_Parameters,
double *  Parameters,
int  smoother,
int  N_Levels 
)
virtual

Vanka smoother

virtual void TNSE3DMGLevel2::CorrectNodes ( double *  u1,
double *  u2,
double *  u3,
double *  p 
)
virtual

correct Dirichlet and hanging nodes

virtual void TNSE3DMGLevel2::Defect ( double *  u1,
double *  u2,
double *  u3,
double *  p,
double *  f1,
double *  f2,
double *  f3,
double *  g,
double *  d1,
double *  d2,
double *  d3,
double *  d4,
double &  res 
)
virtual

calculate defect

virtual void TNSE3DMGLevel2::NodalVanka ( double *  u1,
double *  u2,
double *  u3,
double *  p,
double *  rhs1,
double *  rhs2,
double *  rhs3,
double *  rhs4,
double *  def1,
double *  def2,
double *  def3,
double *  def4,
double *  aux,
double *  Counters,
int  N_Parameters,
double *  Parameters,
int  smoother,
int  N_Levels 
)
virtual

Vanka smoother

virtual void TNSE3DMGLevel2::PrintAll ( )
virtual

print all matrices and both right hand sides

virtual void TNSE3DMGLevel2::SolveExact ( double *  u1,
double *  u2,
double *  u3,
double *  p,
double *  rhs1,
double *  rhs2,
double *  rhs3,
double *  rhs4,
double *  aux,
double *  Counters,
int  N_Parameters,
double *  Parameters 
)
virtual

solve exact on this level

virtual double TNSE3DMGLevel2::StepLengthControl ( double *  u1,
double *  u2,
double *  u3,
double *  p,
double *  u1old,
double *  u2old,
double *  u3old,
double *  pold,
double *  def1,
double *  def2,
double *  def3,
double *  def4,
int  N_Parameters,
double *  Parameter 
)
virtual

step length control for Vanka

Member Data Documentation

TSquareMatrix3D* TNSE3DMGLevel2::A
protected

matrix A

double* TNSE3DMGLevel2::AEntries
protected

matrix entries of matrix A

int* TNSE3DMGLevel2::AKCol
protected

column number vector for matrix A

int* TNSE3DMGLevel2::ARowPtr
protected

row pointer for matrix A

TMatrix3D* TNSE3DMGLevel2::B1
protected

matrix B1

double* TNSE3DMGLevel2::B1Entries
protected

matrix entries of matrix B1

TMatrix3D* TNSE3DMGLevel2::B1T
protected

matrix B1T

double* TNSE3DMGLevel2::B1TEntries
protected

matrix entries of matrix BT1

TMatrix3D* TNSE3DMGLevel2::B2
protected

matrix B2

double* TNSE3DMGLevel2::B2Entries
protected

matrix entries of matrix B2

TMatrix3D* TNSE3DMGLevel2::B2T
protected

matrix B2

double* TNSE3DMGLevel2::B2TEntries
protected

matrix entries of matrix BT2

TMatrix3D* TNSE3DMGLevel2::B3
protected

matrix B3

double* TNSE3DMGLevel2::B3Entries
protected

matrix entries of matrix B3

TMatrix3D* TNSE3DMGLevel2::B3T
protected

matrix B3

double* TNSE3DMGLevel2::B3TEntries
protected

matrix entries of matrix BT3

int* TNSE3DMGLevel2::BKCol
protected

column number vector for matrix B

int* TNSE3DMGLevel2::BRowPtr
protected

row pointer for matrix B

int* TNSE3DMGLevel2::BTKCol
protected

column number vector for matrix BT

int* TNSE3DMGLevel2::BTRowPtr
protected

row pointer for matrix BT

TSquareStructure3D* TNSE3DMGLevel2::StructureA
protected

structure of matrix A

TStructure3D* TNSE3DMGLevel2::StructureB
protected

structure of matrix B

TStructure3D* TNSE3DMGLevel2::StructureBT
protected

structure of matrix BT


The documentation for this class was generated from the following file: