LifeV
|
#include <FastAssembler.hpp>
Public Types | |
typedef RegionMesh< LinearTetra > | mesh_Type |
typedef boost::shared_ptr< mesh_Type > | meshPtr_Type |
typedef VectorEpetra | vector_Type |
typedef boost::shared_ptr< vector_Type > | vectorPtr_Type |
typedef MatrixEpetra< Real > | matrix_Type |
typedef boost::shared_ptr< matrix_Type > | matrixPtr_Type |
typedef Epetra_Comm | comm_Type |
typedef boost::shared_ptr< comm_Type > | commPtr_Type |
typedef QuadratureRule | qr_Type |
typedef boost::shared_ptr< qr_Type > | qrPtr_Type |
typedef FESpace< mesh_Type, MapEpetra > | fespace_Type |
typedef boost::shared_ptr< fespace_Type > | fespacePtr_Type |
Public Member Functions | |
FastAssembler (const meshPtr_Type &mesh, const commPtr_Type &comm, const ReferenceFE *refFE, const qr_Type *qr) | |
Constructor. More... | |
~FastAssembler () | |
Destructor. More... | |
Private Attributes | |
meshPtr_Type | M_mesh |
commPtr_Type | M_comm |
int | M_numElements |
int | M_numScalarDofs |
int | M_numElementsMerked |
double * | M_detJacobian |
double *** | M_invJacobian |
double ** | M_phi |
double *** | M_dphi |
double **** | M_d2phi |
double ** | M_elements |
const qr_Type * | M_qr |
const ReferenceFE * | M_referenceFE |
double *** | M_vals |
double ***** | M_vals_supg |
int ** | M_rows |
int ** | M_cols |
int ** | M_rows_tmp |
int ** | M_cols_tmp |
bool | M_useSUPG |
double *** | M_G |
double ** | M_g |
double ** | M_Tau_M |
double ** | M_Tau_C |
double | M_density |
double | M_viscosity |
double | M_timestep |
double | M_orderBDF |
double | M_C_I |
Methods | |
void | allocateSpace (const int &numElements, CurrentFE *fe, const fespacePtr_Type &fespace) |
Allocate space for members before the assembly. More... | |
void | allocateSpace (const int &numElements, CurrentFE *fe, const fespacePtr_Type &fespace, const UInt *meshSub_elements) |
Allocate space for members before the assembly. More... | |
void | allocateSpace_SUPG (CurrentFE *fe) |
Allocate space for supg before the assembly. More... | |
void | assembleGradGrad_scalar (matrixPtr_Type &matrix) |
FE Assembly of scalar grad-grad. More... | |
void | assembleGradGrad_vectorial (matrixPtr_Type &matrix) |
FE Assembly of vectorial grad-grad. More... | |
void | assembleMass_vectorial (matrixPtr_Type &matrix) |
FE Assembly of vectorial mass matrix. More... | |
void | assembleMass_scalar (matrixPtr_Type &matrix) |
FE Assembly of scalar mass matrix. More... | |
void | assembleLaplacianPhiILaplacianPhiJ_vectorial (matrixPtr_Type &matrix) |
FE Assembly of laplacian PhiI laplacian PhiJ. More... | |
void | NS_constant_terms_00 (matrixPtr_Type &matrix) |
FE Assembly of NS constant terms (no scaling by coefficients like density or bdf) More... | |
void | assembleConvective (matrix_Type &matrix, const vector_Type &u_h) |
FE Assembly of NS constant terms (no scaling by coefficients like viscosity) More... | |
void | assembleConvective (matrixPtr_Type &matrix, const vector_Type &u_h) |
FE Assembly of NS constant terms (no scaling by coefficients like viscosity) More... | |
void | assemble_SUPG_block00 (matrixPtr_Type &matrix, const vector_Type &u_h) |
FE Assembly of SUPG terms - block (0,0) More... | |
void | assemble_SUPG_block11 (matrixPtr_Type &matrix, const vector_Type &u_h) |
FE Assembly of SUPG terms - block (1,1) More... | |
void | setConstants_NavierStokes (const Real &density, const Real &viscosity, const Real ×tep, const Real &orderBDF, const Real &C_I) |
Set physical parameters for NS. More... | |
Definition at line 54 of file FastAssembler.hpp.
typedef RegionMesh< LinearTetra > mesh_Type |
Definition at line 58 of file FastAssembler.hpp.
typedef boost::shared_ptr<mesh_Type> meshPtr_Type |
Definition at line 59 of file FastAssembler.hpp.
typedef VectorEpetra vector_Type |
Definition at line 61 of file FastAssembler.hpp.
typedef boost::shared_ptr<vector_Type> vectorPtr_Type |
Definition at line 62 of file FastAssembler.hpp.
typedef MatrixEpetra<Real> matrix_Type |
Definition at line 64 of file FastAssembler.hpp.
typedef boost::shared_ptr<matrix_Type> matrixPtr_Type |
Definition at line 65 of file FastAssembler.hpp.
typedef Epetra_Comm comm_Type |
Definition at line 67 of file FastAssembler.hpp.
typedef boost::shared_ptr< comm_Type > commPtr_Type |
Definition at line 68 of file FastAssembler.hpp.
typedef QuadratureRule qr_Type |
Definition at line 70 of file FastAssembler.hpp.
typedef boost::shared_ptr< qr_Type > qrPtr_Type |
Definition at line 71 of file FastAssembler.hpp.
typedef FESpace<mesh_Type, MapEpetra> fespace_Type |
Definition at line 73 of file FastAssembler.hpp.
typedef boost::shared_ptr<fespace_Type> fespacePtr_Type |
Definition at line 74 of file FastAssembler.hpp.
FastAssembler | ( | const meshPtr_Type & | mesh, |
const commPtr_Type & | comm, | ||
const ReferenceFE * | refFE, | ||
const qr_Type * | qr | ||
) |
Constructor.
mesh | - input mesh |
comm | - communicator |
refFE | - reference FE space of test functions |
qr | - quadrature rule to be used for the integration |
Definition at line 16 of file FastAssembler.cpp.
~FastAssembler | ( | ) |
Destructor.
Definition at line 26 of file FastAssembler.cpp.
void allocateSpace | ( | const int & | numElements, |
CurrentFE * | fe, | ||
const fespacePtr_Type & | fespace | ||
) |
Allocate space for members before the assembly.
numElements | - data file |
fe | - current FE |
fespace | - FE space |
Definition at line 162 of file FastAssembler.cpp.
void allocateSpace | ( | const int & | numElements, |
CurrentFE * | fe, | ||
const fespacePtr_Type & | fespace, | ||
const UInt * | meshSub_elements | ||
) |
Allocate space for members before the assembly.
numElements | - data file |
fe | - current FE |
fespace | - FE space |
meshSub_elements | - list of indices if one wants to allocate space only for a portion of the elements of the mesh |
Definition at line 410 of file FastAssembler.cpp.
void allocateSpace_SUPG | ( | CurrentFE * | fe | ) |
Allocate space for supg before the assembly.
fe | - current FE |
Definition at line 320 of file FastAssembler.cpp.
void assembleGradGrad_scalar | ( | matrixPtr_Type & | matrix | ) |
FE Assembly of scalar grad-grad.
matrix | - global matrix |
Definition at line 509 of file FastAssembler.cpp.
void assembleGradGrad_vectorial | ( | matrixPtr_Type & | matrix | ) |
FE Assembly of vectorial grad-grad.
matrix | - global matrix |
Definition at line 587 of file FastAssembler.cpp.
void assembleMass_vectorial | ( | matrixPtr_Type & | matrix | ) |
FE Assembly of vectorial mass matrix.
matrix | - global matrix |
Definition at line 678 of file FastAssembler.cpp.
void assembleMass_scalar | ( | matrixPtr_Type & | matrix | ) |
FE Assembly of scalar mass matrix.
matrix | - global matrix |
Definition at line 744 of file FastAssembler.cpp.
void assembleLaplacianPhiILaplacianPhiJ_vectorial | ( | matrixPtr_Type & | matrix | ) |
FE Assembly of laplacian PhiI laplacian PhiJ.
matrix | - global matrix |
Definition at line 1273 of file FastAssembler.cpp.
void NS_constant_terms_00 | ( | matrixPtr_Type & | matrix | ) |
FE Assembly of NS constant terms (no scaling by coefficients like density or bdf)
matrix | - global matrix |
Definition at line 912 of file FastAssembler.cpp.
void assembleConvective | ( | matrix_Type & | matrix, |
const vector_Type & | u_h | ||
) |
FE Assembly of NS constant terms (no scaling by coefficients like viscosity)
matrix | - global matrix |
u_h | - velocity vector |
Definition at line 804 of file FastAssembler.cpp.
void assembleConvective | ( | matrixPtr_Type & | matrix, |
const vector_Type & | u_h | ||
) |
FE Assembly of NS constant terms (no scaling by coefficients like viscosity)
matrix | - global matrix |
u_h | - velocity vector |
Definition at line 798 of file FastAssembler.cpp.
void assemble_SUPG_block00 | ( | matrixPtr_Type & | matrix, |
const vector_Type & | u_h | ||
) |
FE Assembly of SUPG terms - block (0,0)
matrix | - global matrix |
u_h | - vector extrapolapolated velocity |
Definition at line 1003 of file FastAssembler.cpp.
void assemble_SUPG_block11 | ( | matrixPtr_Type & | matrix, |
const vector_Type & | u_h | ||
) |
FE Assembly of SUPG terms - block (1,1)
matrix | - global matrix |
u_h | - vector extrapolapolated velocity |
Definition at line 1153 of file FastAssembler.cpp.
void setConstants_NavierStokes | ( | const Real & | density, |
const Real & | viscosity, | ||
const Real & | timestep, | ||
const Real & | orderBDF, | ||
const Real & | C_I | ||
) |
Set physical parameters for NS.
density | - density of the fluid |
viscosity | - viscosity of the fluid |
timestep | - timestep for the simulation |
orderBDF | - order time integrator BDF |
C_I | - is 30 for P1 and 60 for P2 |
Definition at line 1263 of file FastAssembler.cpp.
|
private |
Definition at line 193 of file FastAssembler.hpp.
|
private |
Definition at line 194 of file FastAssembler.hpp.
|
private |
Definition at line 196 of file FastAssembler.hpp.
|
private |
Definition at line 197 of file FastAssembler.hpp.
|
private |
Definition at line 198 of file FastAssembler.hpp.
|
private |
Definition at line 200 of file FastAssembler.hpp.
|
private |
Definition at line 201 of file FastAssembler.hpp.
|
private |
Definition at line 203 of file FastAssembler.hpp.
|
private |
Definition at line 204 of file FastAssembler.hpp.
|
private |
Definition at line 205 of file FastAssembler.hpp.
|
private |
Definition at line 206 of file FastAssembler.hpp.
|
private |
Definition at line 208 of file FastAssembler.hpp.
|
private |
Definition at line 209 of file FastAssembler.hpp.
|
private |
Definition at line 211 of file FastAssembler.hpp.
|
private |
Definition at line 212 of file FastAssembler.hpp.
|
private |
Definition at line 213 of file FastAssembler.hpp.
|
private |
Definition at line 214 of file FastAssembler.hpp.
|
private |
Definition at line 215 of file FastAssembler.hpp.
|
private |
Definition at line 216 of file FastAssembler.hpp.
|
private |
Definition at line 218 of file FastAssembler.hpp.
|
private |
Definition at line 219 of file FastAssembler.hpp.
|
private |
Definition at line 220 of file FastAssembler.hpp.
|
private |
Definition at line 221 of file FastAssembler.hpp.
|
private |
Definition at line 222 of file FastAssembler.hpp.
|
private |
Definition at line 224 of file FastAssembler.hpp.
|
private |
Definition at line 225 of file FastAssembler.hpp.
|
private |
Definition at line 226 of file FastAssembler.hpp.
|
private |
Definition at line 227 of file FastAssembler.hpp.
|
private |
Definition at line 228 of file FastAssembler.hpp.