ParMooN
 All Classes Functions Variables Friends Pages
Public Member Functions | Protected Attributes | List of all members
TSystemTNSE2D Class Reference

stores the information of a 2D TNSE system matrix More...

#include <SystemTNSE2D.h>

Inheritance diagram for TSystemTNSE2D:
Inheritance graph
[legend]
Collaboration diagram for TSystemTNSE2D:
Collaboration graph
[legend]

Public Member Functions

 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 More...
 
 ~TSystemTNSE2D ()
 
void Init (CoeffFct2D *lincoeffs, BoundCondFunct2D *BoundCond, BoundValueFunct2D *U1BoundValue, BoundValueFunct2D *U2BoundValue, TAuxParam2D *aux, TAuxParam2D *nseaux_error)
 
void Assemble (double *sol, double *rhs)
 
void AssembleRhs (double *sol, double *rhs)
 
void AssembleSystMat (double scale, double *oldrhs, double *rhs, double *sol)
 
void AssembleSystMatNonLinear ()
 
void RestoreMassMat ()
 
void AssembleANonLinear (double *sol, double *rhs)
 
void Solve (double *sol)
 
void GetTNSEResidual (double *sol, double *res)
 
void MeasureTNSEErrors (DoubleFunct2D *ExactU1, DoubleFunct2D *ExactU2, DoubleFunct2D *ExactP, double *AllErrors)
 
- Public Member Functions inherited from TSystemNSE2D
 TSystemNSE2D (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 TSystemNSE2D More...
 
 ~TSystemNSE2D ()
 
void Init (CoeffFct2D *lincoeffs, BoundCondFunct2D *BoundCond, BoundValueFunct2D *U1BoundValue, BoundValueFunct2D *U2BoundValue, TAuxParam2D *aux, TAuxParam2D *auxerror)
 
void Assemble (double *sol, double *rhs)
 
void AssembleNonLinear (double *sol, double *rhs)
 
void AssembleRhsOnly (double *sol, double *rhs)
 
void GetResidual (double *sol, double *rhs, double *res)
 
void Solve (double *sol, double *rhs)
 
void MeasureErrors (DoubleFunct2D *ExactU1, DoubleFunct2D *ExactU2, DoubleFunct2D *ExactP, double *u_error, double *p_error)
 

Protected Attributes

TSquareMatrix2DSqmatrixM11
 
TSquareMatrix2DSqmatrixM12
 
TSquareMatrix2DSqmatrixM21
 
TSquareMatrix2DSqmatrixM22
 
double * B
 
double * defect
 
double gamma
 
TDiscreteForm2DDiscreteFormRhs
 
TAuxParam2DNSE_Rhsaux
 
bool SystMatAssembled
 
double olderror_l_2_l_2u
 
- Protected Attributes inherited from TSystemNSE2D
int N_U
 
int N_P
 
int N_Active
 
int N_DirichletDof
 
double * Sol
 
double * Rhs
 
double * RHSs [3]
 
TFESpace2DFeSpaces [5]
 
TFEFunction2DFeFct [5]
 
int Disctype
 
int NSEType
 
CoeffFct2D * LinCoeffs [1]
 
TAuxParam2DNSEaux
 
TAuxParam2DNSEaux_error
 
DefectProc * Defect
 
int Solver
 
int N_Matrices
 
TSquareStructure2DsqstructureA
 
TStructure2DstructureB
 
TStructure2DstructureBT
 
TSquareMatrix2DSqmatrixA11
 
TSquareMatrix2DSqmatrixA12
 
TSquareMatrix2DSqmatrixA21
 
TSquareMatrix2DSqmatrixA22
 
TSquareMatrix2DSQMATRICES [9]
 
TSquareMatrix ** sqmatrices
 
TMatrix2DMatrixB1
 
TMatrix2DMatrixB2
 
TMatrix2DMatrixB1T
 
TMatrix2DMatrixB2T
 
TMatrix2DMATRICES [8]
 
TMatrix ** matrices
 
BoundCondFunct2D * BoundaryConditions [2]
 
BoundValueFunct2D * BoundaryValues [2]
 
TDiscreteForm2DDiscreteFormARhs
 
TDiscreteForm2DDiscreteFormNL
 
TDiscreteForm2DDiscreteFormRhs
 
TAssembleMat2DAMatRhsAssemble
 
TAssembleMat2DAMatAssembleNonLinear
 
TSquareStructure2DsqstructureL
 
TStructure2Dstructure_G
 
TStructure2Dstructure_tilde_G
 
TSquareMatrix2DMatricesL
 
TMatrix2DMatrices_tilde_G11
 
TMatrix2DMatrices_tilde_G22
 
TMatrix2DMatrices_G11
 
TMatrix2DMatrices_G22
 

Detailed Description

stores the information of a 2D TNSE system matrix

class for 2D TNSE system matrix


Author
Sashikumaar Ganesan,
Date
03.09.14 Added methods (Sashi, 03.09.14)

Constructor & Destructor Documentation

TSystemTNSE2D::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

constructor


Author
Sashikumaar Ganesan,
Date
23.08.14
TSystemTNSE2D::~TSystemTNSE2D ( )

destrcutor

Member Function Documentation

void TSystemTNSE2D::Assemble ( double *  sol,
double *  rhs 
)

return the stiffness matrix assemble the M, A and rhs

Here is the call graph for this function:

void TSystemTNSE2D::AssembleANonLinear ( double *  sol,
double *  rhs 
)

assemble the nonlinear part of the NSE system

Here is the call graph for this function:

void TSystemTNSE2D::AssembleRhs ( double *  sol,
double *  rhs 
)

assemble only the rhs of NSE system

void TSystemTNSE2D::AssembleSystMat ( double  scale,
double *  oldrhs,
double *  rhs,
double *  sol 
)

scale B matices and assemble rhs based on the scheme

Here is the call graph for this function:

void TSystemTNSE2D::AssembleSystMatNonLinear ( )

scale B matices and assemble rhs based on the scheme

void TSystemTNSE2D::GetTNSEResidual ( double *  sol,
double *  res 
)

get the resudual of the NSE system

void TSystemTNSE2D::Init ( CoeffFct2D *  lincoeffs,
BoundCondFunct2D *  BoundCond,
BoundValueFunct2D *  U1BoundValue,
BoundValueFunct2D *  U2BoundValue,
TAuxParam2D aux,
TAuxParam2D nseaux_error 
)

methods Initilize the discrete forms and the matrices

void TSystemTNSE2D::MeasureTNSEErrors ( DoubleFunct2D *  ExactU1,
DoubleFunct2D *  ExactU2,
DoubleFunct2D *  ExactP,
double *  AllErrors 
)

measure the error in the NSE

Here is the call graph for this function:

void TSystemTNSE2D::RestoreMassMat ( )

restoring the mass matrix

void TSystemTNSE2D::Solve ( double *  sol)

solve the system matrix

Member Data Documentation

double* TSystemTNSE2D::B
protected

working rhs, used in AssembleSystMat()

double* TSystemTNSE2D::defect
protected

to store defect

TDiscreteForm2D* TSystemTNSE2D::DiscreteFormRhs
protected

Discrete form of the M and rhs matrics

double TSystemTNSE2D::gamma
protected

factor that multplied with Mat A in working rhs

TAuxParam2D* TSystemTNSE2D::NSE_Rhsaux
protected

NSE_Rhsaux is used to for assembling rhs only

double TSystemTNSE2D::olderror_l_2_l_2u
protected

needed for error calculation in time

TSquareMatrix2D* TSystemTNSE2D::SqmatrixM11
protected

M - mass/system mat for TNSE velocity component

bool TSystemTNSE2D::SystMatAssembled
protected

Systmat assemble indicator


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