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

Public Member Functions

 TNSE_MGLevel2 (int level, TSquareMatrix2D *A, TMatrix2D *B1, TMatrix2D *B2, TMatrix2D *B1T, TMatrix2D *B2T, double *f1, double *u1, int n_aux, double *al, int VelocitySpace, int PressureSpace, TCollection *coll, int *dw)
 
 TNSE_MGLevel2 (int level, TSquareMatrix2D *A, TMatrix2D *B1, TMatrix2D *B2, TMatrix2D *B1T, TMatrix2D *B2T, TMatrix2D *C, double *f1, double *u1, int n_aux, double *al, int VelocitySpace, int PressureSpace, TCollection *coll, int *dw)
 
 TNSE_MGLevel2 (int level, TSquareMatrix3D *A, TMatrix3D *B1, TMatrix3D *B2, TMatrix3D *B3, TMatrix3D *B1T, TMatrix3D *B2T, TMatrix3D *B3T, double *f1, double *u1, int n_aux, double *al, int VelocitySpace, int PressureSpace, TCollection *coll, int *dw)
 
 TNSE_MGLevel2 (int level, TSquareMatrix3D *A, TMatrix3D *B1, TMatrix3D *B2, TMatrix3D *B3, TMatrix3D *B1T, TMatrix3D *B2T, TMatrix3D *B3T, TMatrix3D *C, double *f1, double *u1, int n_aux, double *al, int VelocitySpace, int PressureSpace, TCollection *coll, int *dw)
 
 ~TNSE_MGLevel2 ()
 
virtual void Defect (double *u1, double *f1, double *d1, double &res)
 
virtual void CorrectNodes (double *u1)
 
virtual void CellVanka (double *u1, double *rhs1, double *aux, int N_Parameters, double *Parameters, int smoother, int N_Levels)
 
virtual void NodalVanka (double *u1, double *rhs1, double *aux, int N_Parameters, double *Parameters, int smoother, int N_Levels)
 
virtual void SolveExact (double *u1, double *rhs1)
 
virtual void SolveExactUMFPACK (double *u1, double *rhs1, int &umfpack_flag)
 
virtual void BraessSarazin (double *u1, double *rhs1, double *aux, int N_Parameters, double *Parameters, int N_Levels)
 
virtual double StepLengthControl (double *u1, double *u1old, double *def1, int N_Parameters, double *Parameter)
 
virtual void PrintAll ()
 
- Public Member Functions inherited from TNSE_MGLevel
 TNSE_MGLevel (int level, double *f1, double *u1, int n_aux, double *al, int VelocitySpace, int PressureSpace, TCollection *coll)
 
 ~TNSE_MGLevel ()
 
double * GetAuxVector (int i)
 
void GetSolution (double *&u1, double *&u2, double *&p)
 
void GetRhs (double *&f1, double *&f2, double *&f3)
 
void GetSolution (double *&u1, double *&u2, double *&u3, double *&p)
 
void GetRhs (double *&f1, double *&f2, double *&f3, double *&f4)
 
void GetSolutionVector (double *&u1)
 
void GetRhsVector (double *&f1)
 
double ** GetAuxVectors ()
 
int GetN_UDOF ()
 
int GetN_PDOF ()
 
int GetVelocitySpace ()
 
int GetPressureSpace ()
 
int GetHangingNodeBound ()
 
int GetN_Dirichlet ()
 
void Update (double *u1, double *v1)
 
void SetHangingNodes (double *u1)
 
void CorrectDefect (double *v1)
 
void Reset (double *v1)
 
TFESpace2DGetUSpace ()
 
TFESpace2DGetPSpace ()
 
TFESpace3DGetUSpace ()
 
TFESpace3DGetPSpace ()
 
TCollectionGetCollection ()
 
void SetCollection (TCollection *coll)
 
int GetType ()
 

Protected Attributes

TSquareMatrix2DA
 
TSquareStructure2DStructureA
 
TStructure2DStructureB
 
TMatrix2DB1
 
TMatrix2DB2
 
TStructure2DStructureBT
 
TMatrix2DB1T
 
TMatrix2DB2T
 
TStructure2DStructureC
 
TMatrix2DC
 
TSquareMatrix3DA
 
TSquareStructure3DStructureA
 
TStructure3DStructureB
 
TMatrix3DB1
 
TMatrix3DB2
 
TMatrix3DB3
 
TStructure3DStructureBT
 
TMatrix3DB1T
 
TMatrix3DB2T
 
TMatrix3DB3T
 
TStructure3DStructureC
 
TMatrix3DC
 
int * ARowPtr
 
int * AKCol
 
double * AEntries
 
int * BRowPtr
 
int * BKCol
 
double * B1Entries
 
double * B2Entries
 
double * B3Entries
 
int * BTRowPtr
 
int * BTKCol
 
double * B1TEntries
 
double * B2TEntries
 
double * B3TEntries
 
int * CRowPtr
 
int * CKCol
 
double * CEntries
 
- Protected Attributes inherited from TNSE_MGLevel
int Level
 
int Type
 
TFESpace2DUSpace
 
TFESpace2DPSpace
 
TFESpace3DUSpace
 
TFESpace3DPSpace
 
int N_Dirichlet
 
int N_Active
 
int HangingNodeBound
 
int N_DOF
 
int N_UDOF
 
int N_PDOF
 
int VelocitySpace
 
int PressureSpace
 
double * Rhs1
 
double * Rhs2
 
double * Rhs3
 
double * RhsP
 
double * U1
 
double * U2
 
double * U3
 
double * P
 
int N_Aux
 
double ** Aux
 
double * Additional
 
double alpha
 
double beta
 
TCollectionVankaColl
 
int * downwind
 
int * velo_velo_local_coupling
 
int * gradient_local_coupling
 
int * divergence_local_coupling
 

Constructor & Destructor Documentation

TNSE_MGLevel2::TNSE_MGLevel2 ( int  level,
TSquareMatrix2D a,
TMatrix2D b1,
TMatrix2D b2,
TMatrix2D b1t,
TMatrix2D b2t,
double *  f1,
double *  u1,
int  n_aux,
double *  al,
int  velocity_space,
int  pressure_space,
TCollection Coll,
int *  dw 
)

constructor

Here is the call graph for this function:

TNSE_MGLevel2::TNSE_MGLevel2 ( int  level,
TSquareMatrix2D a,
TMatrix2D b1,
TMatrix2D b2,
TMatrix2D b1t,
TMatrix2D b2t,
TMatrix2D c,
double *  f1,
double *  u1,
int  n_aux,
double *  al,
int  velocity_space,
int  pressure_space,
TCollection Coll,
int *  dw 
)

contructor with matrix C

constructor with matrix C

Here is the call graph for this function:

TNSE_MGLevel2::TNSE_MGLevel2 ( int  level,
TSquareMatrix3D A,
TMatrix3D B1,
TMatrix3D B2,
TMatrix3D B3,
TMatrix3D B1T,
TMatrix3D B2T,
TMatrix3D B3T,
TMatrix3D C,
double *  f1,
double *  u1,
int  n_aux,
double *  al,
int  VelocitySpace,
int  PressureSpace,
TCollection coll,
int *  dw 
)

contructor with matrix C

TNSE_MGLevel2::~TNSE_MGLevel2 ( )

destructor

Member Function Documentation

void TNSE_MGLevel2::BraessSarazin ( double *  u1,
double *  rhs,
double *  aux,
int  N_Parameters,
double *  Parameters,
int  N_Levels 
)
virtual

Braess Sarazin smoother

Braess–Sarazin smoother

Reimplemented from TNSE_MGLevel.

void TNSE_MGLevel2::CellVanka ( double *  u1,
double *  rhs1,
double *  aux,
int  N_Parameters,
double *  Parameters,
int  smoother,
int  N_Levels 
)
virtual

Vanka smoother

cellwise Vanka smoother, GAUSS-SEIDEL type

Reimplemented from TNSE_MGLevel.

Here is the call graph for this function:

void TNSE_MGLevel2::CorrectNodes ( double *  u1)
virtual

correct Dirichlet and hanging nodes

Reimplemented from TNSE_MGLevel.

void TNSE_MGLevel2::Defect ( double *  u,
double *  f,
double *  d,
double &  res 
)
virtual

calculate defect

Reimplemented from TNSE_MGLevel.

Here is the caller graph for this function:

void TNSE_MGLevel2::NodalVanka ( double *  u1,
double *  rhs1,
double *  aux,
int  N_Parameters,
double *  Parameters,
int  smoother,
int  N_Levels 
)
virtual

Vanka smoother

nodal Vanka smoother, GAUSS-SEIDEL type

Reimplemented from TNSE_MGLevel.

Here is the call graph for this function:

void TNSE_MGLevel2::PrintAll ( )
virtual

print all matrices and both right hand sides

print all matrices and all right hand sides

Reimplemented from TNSE_MGLevel.

void TNSE_MGLevel2::SolveExact ( double *  u1,
double *  rhs1 
)
virtual

solve exact on this level

Reimplemented from TNSE_MGLevel.

void TNSE_MGLevel2::SolveExactUMFPACK ( double *  u1,
double *  rhs1,
int &  umfpack_flag 
)
virtual

solve exact on this level

Reimplemented from TNSE_MGLevel.

double TNSE_MGLevel2::StepLengthControl ( double *  u1,
double *  u1old,
double *  def1,
int  N_Parameters,
double *  Parameters 
)
virtual

step length control for Vanka

Reimplemented from TNSE_MGLevel.

Member Data Documentation

TSquareMatrix2D* TNSE_MGLevel2::A
protected

matrix A

TSquareMatrix3D* TNSE_MGLevel2::A
protected

matrix A

double* TNSE_MGLevel2::AEntries
protected

matrix entries of matrix A

int* TNSE_MGLevel2::AKCol
protected

column number vector for matrix A

int* TNSE_MGLevel2::ARowPtr
protected

row pointer for matrix A

TMatrix2D* TNSE_MGLevel2::B1
protected

matrix B1

TMatrix3D* TNSE_MGLevel2::B1
protected

matrix B1

double* TNSE_MGLevel2::B1Entries
protected

matrix entries of matrix B1

TMatrix2D* TNSE_MGLevel2::B1T
protected

matrix B1T

TMatrix3D* TNSE_MGLevel2::B1T
protected

matrix B1T

double* TNSE_MGLevel2::B1TEntries
protected

matrix entries of matrix BT1

TMatrix2D* TNSE_MGLevel2::B2
protected

matrix B2

TMatrix3D* TNSE_MGLevel2::B2
protected

matrix B2

double* TNSE_MGLevel2::B2Entries
protected

matrix entries of matrix B2

TMatrix2D* TNSE_MGLevel2::B2T
protected

matrix B2

TMatrix3D* TNSE_MGLevel2::B2T
protected

matrix B2

double* TNSE_MGLevel2::B2TEntries
protected

matrix entries of matrix BT2

TMatrix3D* TNSE_MGLevel2::B3
protected

matrix B3

double* TNSE_MGLevel2::B3Entries
protected

matrix entries of matrix B3

TMatrix3D* TNSE_MGLevel2::B3T
protected

matrix B3

double* TNSE_MGLevel2::B3TEntries
protected

matrix entries of matrix BT3

int* TNSE_MGLevel2::BKCol
protected

column number vector for matrix B

int* TNSE_MGLevel2::BRowPtr
protected

row pointer for matrix B

int* TNSE_MGLevel2::BTKCol
protected

column number vector for matrix BT

int* TNSE_MGLevel2::BTRowPtr
protected

row pointer for matrix BT

TMatrix2D* TNSE_MGLevel2::C
protected

matrix C

TMatrix3D* TNSE_MGLevel2::C
protected

matrix C

double* TNSE_MGLevel2::CEntries
protected

matrix entries of matrix C

int* TNSE_MGLevel2::CKCol
protected

column number vector for matrix C

int* TNSE_MGLevel2::CRowPtr
protected

row pointer for matrix C

TSquareStructure2D* TNSE_MGLevel2::StructureA
protected

structure of matrix A

TSquareStructure3D* TNSE_MGLevel2::StructureA
protected

structure of matrix A

TStructure2D* TNSE_MGLevel2::StructureB
protected

structure of matrix B

TStructure3D* TNSE_MGLevel2::StructureB
protected

structure of matrix B

TStructure2D* TNSE_MGLevel2::StructureBT
protected

structure of matrix BT

TStructure3D* TNSE_MGLevel2::StructureBT
protected

structure of matrix BT

TStructure2D* TNSE_MGLevel2::StructureC
protected

structure of matrix C

TStructure3D* TNSE_MGLevel2::StructureC
protected

structure of matrix C


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