stores the information of a 2D TNSE system matrix More...
#include <SystemTNSE2D_ALE.h>
Public Member Functions | |
TSystemTNSE2D_ALE (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 TFESpace2D *gridFESpace, TFEVectFunct2D *MeshVelocity, bool conservativeale) | |
source file for TSystemTNSE2D_ALE More... | |
void | Init (CoeffFct2D *lincoeffs, BoundCondFunct2D *BoundCond, BoundValueFunct2D *U1BoundValue, BoundValueFunct2D *U2BoundValue, CoeffFct2D *GridBilinearCoeffs, BoundCondFunct2D *GridBoundCond, BoundValueFunct2D *gridBoundValue, TAuxParam2D *aux, TAuxParam2D *nseaux_error) |
void | AddMeshModifyFunction (ModifyMeshCoords *modifyCoord) |
void | AddBoundModifyFunction (ModifyBoundCoords *modifyboudary) |
void | Assemble (double *sol, double *rhs) |
void | GetMeshVeloAndMove (int N_MovVert, TVertex **MovBoundVert, TIsoBoundEdge **Free_Joint, double *Iso_refX, double Currtime, double tau) |
void | GetMeshVeloAndMove (double Currtime, double tau) |
void | AssembleMeshMat () |
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) |
Public Member Functions inherited from 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 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 | |
int | N_GridDOFs |
int | N_GridActive |
int * | GridKCol |
int * | GridRowPtr |
double * | MeshVelo |
double * | gridpos |
double * | gridpos_old |
double * | gridpos_ref |
double * | griddisp |
double * | GridRhs |
double * | Entries [4] |
TFESpace2D * | GridFESpace |
BoundValueFunct2D * | GridBoundValue [1] |
TFEVectFunct2D * | GridPos |
TFEVectFunct2D * | RefGridPos |
TFEFunction2D * | MeshVeloFct [2] |
TDiscreteForm2D * | DiscreteFormMARhs |
TDiscreteForm2D * | DiscreteFormGrid |
TSquareMatrix2D * | SqmatrixG11 |
TSquareMatrix2D * | SqmatrixG12 |
TSquareMatrix2D * | SqmatrixG21 |
TSquareMatrix2D * | SqmatrixG22 |
TSquareMatrix2D * | SQMATRICES_GRID [4] |
TSquareStructure2D * | SquareStructureG |
TAuxParam2D * | Aux_ALE |
TAuxParam2D * | Meshaux |
BoundCondFunct2D * | GridBoundaryConditions [1] |
BoundValueFunct2D * | GridBoundValues [1] |
ModifyMeshCoords * | ModifyCoord |
ModifyBoundCoords * | ModifyBoudary |
bool | SolveLinearElastic |
bool | CONSERVATIVEALE |
bool | NeedInterMassMat |
Protected Attributes inherited from TSystemTNSE2D | |
TSquareMatrix2D * | SqmatrixM11 |
TSquareMatrix2D * | SqmatrixM12 |
TSquareMatrix2D * | SqmatrixM21 |
TSquareMatrix2D * | SqmatrixM22 |
double * | B |
double * | defect |
double | gamma |
TDiscreteForm2D * | DiscreteFormRhs |
TAuxParam2D * | NSE_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] |
TFESpace2D * | FeSpaces [5] |
TFEFunction2D * | FeFct [5] |
int | Disctype |
int | NSEType |
CoeffFct2D * | LinCoeffs [1] |
TAuxParam2D * | NSEaux |
TAuxParam2D * | NSEaux_error |
DefectProc * | Defect |
int | Solver |
int | N_Matrices |
TSquareStructure2D * | sqstructureA |
TStructure2D * | structureB |
TStructure2D * | structureBT |
TSquareMatrix2D * | SqmatrixA11 |
TSquareMatrix2D * | SqmatrixA12 |
TSquareMatrix2D * | SqmatrixA21 |
TSquareMatrix2D * | SqmatrixA22 |
TSquareMatrix2D * | SQMATRICES [9] |
TSquareMatrix ** | sqmatrices |
TMatrix2D * | MatrixB1 |
TMatrix2D * | MatrixB2 |
TMatrix2D * | MatrixB1T |
TMatrix2D * | MatrixB2T |
TMatrix2D * | MATRICES [8] |
TMatrix ** | matrices |
BoundCondFunct2D * | BoundaryConditions [2] |
BoundValueFunct2D * | BoundaryValues [2] |
TDiscreteForm2D * | DiscreteFormARhs |
TDiscreteForm2D * | DiscreteFormNL |
TDiscreteForm2D * | DiscreteFormRhs |
TAssembleMat2D * | AMatRhsAssemble |
TAssembleMat2D * | AMatAssembleNonLinear |
TSquareStructure2D * | sqstructureL |
TStructure2D * | structure_G |
TStructure2D * | structure_tilde_G |
TSquareMatrix2D * | MatricesL |
TMatrix2D * | Matrices_tilde_G11 |
TMatrix2D * | Matrices_tilde_G22 |
TMatrix2D * | Matrices_G11 |
TMatrix2D * | Matrices_G22 |
stores the information of a 2D TNSE system matrix
class for 2D TNSE system matrix
TSystemTNSE2D_ALE::TSystemTNSE2D_ALE | ( | 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 TFESpace2D * | gridFESpace, | ||
TFEVectFunct2D * | MeshVelocity, | ||
bool | conservativeale | ||
) |
source file for TSystemTNSE2D_ALE
constructor
old M mass matrix
void TSystemTNSE2D_ALE::Assemble | ( | double * | sol, |
double * | rhs | ||
) |
assemble the M, A and rhs
void TSystemTNSE2D_ALE::AssembleANonLinear | ( | double * | sol, |
double * | rhs | ||
) |
assemble the nonlinear part of the NSE system
void TSystemTNSE2D_ALE::AssembleMeshMat | ( | ) |
assemble the Mesh mat and rhs
void TSystemTNSE2D_ALE::AssembleSystMat | ( | double | scale, |
double * | oldrhs, | ||
double * | rhs, | ||
double * | sol | ||
) |
scale B matices and assemble rhs based on the scheme
void TSystemTNSE2D_ALE::AssembleSystMatNonLinear | ( | ) |
scale B matices and assemble rhs based on the scheme
void TSystemTNSE2D_ALE::GetMeshVeloAndMove | ( | int | N_MovVert, |
TVertex ** | MovBoundVert, | ||
TIsoBoundEdge ** | Free_Joint, | ||
double * | Iso_refX, | ||
double | Currtime, | ||
double | tau | ||
) |
store M mat for next time step move mesh move mesh Get Mesh Velo
void TSystemTNSE2D_ALE::GetMeshVeloAndMove | ( | double | Currtime, |
double | tau | ||
) |
Get Mesh Velo
void TSystemTNSE2D_ALE::GetTNSEResidual | ( | double * | sol, |
double * | res | ||
) |
get the resudual of the NSE system
void TSystemTNSE2D_ALE::Init | ( | CoeffFct2D * | lincoeffs, |
BoundCondFunct2D * | BoundCond, | ||
BoundValueFunct2D * | U1BoundValue, | ||
BoundValueFunct2D * | U2BoundValue, | ||
CoeffFct2D * | GridBilinearCoeffs, | ||
BoundCondFunct2D * | GridBoundCond, | ||
BoundValueFunct2D * | gridBoundValue, | ||
TAuxParam2D * | aux, | ||
TAuxParam2D * | nseaux_error | ||
) |
destrcutor methods Initilize the discrete forms and the matrices
void TSystemTNSE2D_ALE::RestoreMassMat | ( | ) |
restoring the mass matrix
void TSystemTNSE2D_ALE::Solve | ( | double * | sol | ) |
solve the system matrix
|
protected |
aux for mesh
|
protected |
Discrete form for moving mesh
|
protected |
Grid bounadry conditions
|
protected |
Fgrid BC
|
protected |
grid fespace
|
protected |
grid pos vector
|
protected |
Grid Posistions
|
protected |
Fe functions of NSE
|
protected |
method for Modify Mesh Coords
|
protected |
method for Modify Mesh Coords
|
protected |
No. of Grid DOFs
|
protected |
M - mass/system mat for TNSE velocity component marices for the moving grid
|
protected |
structure for the moving grid