LifeV
|
#include <Stabilization.hpp>
Public Types | |
typedef RegionMesh< LinearTetra > | mesh_Type |
typedef MapEpetra | map_Type |
typedef VectorEpetra | vector_Type |
typedef std::shared_ptr< vector_Type > | vectorPtr_Type |
typedef MatrixEpetra< Real > | matrix_Type |
typedef std::shared_ptr< matrix_Type > | matrixPtr_Type |
typedef FESpace< mesh_Type, map_Type > | fespace_Type |
typedef std::shared_ptr< fespace_Type > | fespacePtr_Type |
typedef ETFESpace< mesh_Type, map_Type, 3, 3 > | ETFESpace_velocity |
typedef ETFESpace< mesh_Type, map_Type, 3, 1 > | ETFESpace_pressure |
typedef std::shared_ptr< ETFESpace_velocity > | ETFESpacePtr_velocity |
typedef std::shared_ptr< ETFESpace_pressure > | ETFESpacePtr_pressure |
Public Member Functions | |
Stabilization () | |
virtual | ~Stabilization () |
Methods | |
virtual void | apply_vector (vectorPtr_Type &, vectorPtr_Type &, const vector_Type &, const vector_Type &, const vector_Type &) |
Adds to the residual the contribution coming from the SUPG stabilization. More... | |
virtual void | apply_matrix (const vector_Type &) |
Updates the system matrix in Navier-Stokes simulations in fixed coordinates. More... | |
virtual void | apply_matrix (const vector_Type &, const vector_Type &) |
Updates the system matrix in Navier-Stokes simulations in ALE coordinates. More... | |
virtual void | apply_vector (vectorPtr_Type &, vectorPtr_Type &, const vector_Type &, const vector_Type &) |
Adds to the right hand side the contribution coming from the SUPG stabilization. More... | |
virtual void | apply_matrix (const vector_Type &, const vector_Type &, const vector_Type &) |
Updates the system matrix in Navier-Stokes simulations in fixed coordinates. More... | |
virtual void | apply_matrix (const vector_Type &, const vector_Type &, const vector_Type &, const vector_Type &) |
Updates the jacobian matrix in Navier-Stokes simulations in ALE coordinates. More... | |
virtual void | apply_vector (vectorPtr_Type &, vectorPtr_Type &, const vector_Type &, const vector_Type &, const vector_Type &, const vector_Type &) |
Adds to the residual the contribution coming from the SUPG stabilization. More... | |
Setters | |
virtual void | setConstant (const int &value)=0 |
Set the constant C_I for the stabilization. More... | |
virtual void | buildGraphs () |
Build the graphs of each single block. More... | |
virtual void | setDensity (const Real &density)=0 |
Set the fluid density. More... | |
virtual void | setBDForder (const Real &bdfOrder)=0 |
Set the bdf order. More... | |
virtual void | setAlpha (const Real &alpha)=0 |
Set the alpha coefficient of the BDF scheme used. More... | |
virtual void | setViscosity (const Real &viscosity)=0 |
Set the fluid dynamic viscosity. More... | |
virtual void | setCommunicator (std::shared_ptr< Epetra_Comm > comm)=0 |
Set the Epetra communicator. More... | |
virtual void | setTimeStep (const Real ×tep)=0 |
Set the time step size. More... | |
virtual void | setVelocitySpace (fespacePtr_Type velocityFESpace)=0 |
Set FE space for velocity. More... | |
virtual void | setPressureSpace (fespacePtr_Type pressureFESpace)=0 |
Set Expression Template FE space for velocity. More... | |
virtual void | setETvelocitySpace (const ETFESpacePtr_velocity &velocityEta_fespace)=0 |
Set Expression Template FE space for velocity. More... | |
virtual void | setETpressureSpace (const ETFESpacePtr_pressure &pressureEta_fespace)=0 |
Set Expression Template FE space for velocity. More... | |
virtual void | setUseGraph (const bool &) |
Set if using the graph. More... | |
virtual void | setUseODEfineScale (const bool &) |
Set if using dynamic fine scale model. More... | |
virtual void | setExportFineScaleVelocity (ExporterHDF5< mesh_Type > &, const int &) |
Set if the user wants to export the fine scale component. More... | |
virtual void | setFastAssembler (std::shared_ptr< FastAssemblerNS > &) |
Set if using the fast assembler. More... | |
Getters | |
virtual matrixPtr_Type const & | block_00 () const =0 |
Get block00 of the stabilization matrix. More... | |
virtual matrixPtr_Type const & | block_01 () const =0 |
Get block01 of the stabilization matrix. More... | |
virtual matrixPtr_Type const & | block_10 () const =0 |
Get block10 of the stabilization matrix. More... | |
virtual matrixPtr_Type const & | block_11 () const =0 |
Get block11 of the stabilization matrix. More... | |
virtual std::string | label ()=0 |
Get name of stabilization being used. More... | |
virtual void | updateODEfineScale (const vectorPtr_Type &, const vectorPtr_Type &) |
Updates the fine scale component. More... | |
virtual void | updateODEfineScale (const vectorPtr_Type &, const vectorPtr_Type &, const vectorPtr_Type &) |
Updates the fine scale component. More... | |
Private methods | |
virtual void | setupODEfineScale () |
Setup of the fine scale component. More... | |
virtual void | computeFineScales (const vectorPtr_Type &, const vectorPtr_Type &, const vectorPtr_Type &) |
Compute the fine component of the velocity and pressure. More... | |
virtual void | computeFineScalesForVisualization (const vectorPtr_Type &, const vectorPtr_Type &, const vectorPtr_Type &) |
Compute the fine component of the velocity and pressure for visualization. More... | |
Definition at line 56 of file Stabilization.hpp.
typedef RegionMesh<LinearTetra> mesh_Type |
Definition at line 60 of file Stabilization.hpp.
Definition at line 61 of file Stabilization.hpp.
typedef VectorEpetra vector_Type |
Definition at line 63 of file Stabilization.hpp.
typedef std::shared_ptr<vector_Type> vectorPtr_Type |
Definition at line 64 of file Stabilization.hpp.
typedef MatrixEpetra<Real> matrix_Type |
Definition at line 66 of file Stabilization.hpp.
typedef std::shared_ptr<matrix_Type> matrixPtr_Type |
Definition at line 67 of file Stabilization.hpp.
typedef FESpace< mesh_Type, map_Type > fespace_Type |
Definition at line 69 of file Stabilization.hpp.
typedef std::shared_ptr< fespace_Type > fespacePtr_Type |
Definition at line 70 of file Stabilization.hpp.
typedef ETFESpace<mesh_Type, map_Type, 3, 3 > ETFESpace_velocity |
Definition at line 72 of file Stabilization.hpp.
typedef ETFESpace<mesh_Type, map_Type, 3, 1 > ETFESpace_pressure |
Definition at line 73 of file Stabilization.hpp.
typedef std::shared_ptr<ETFESpace_velocity > ETFESpacePtr_velocity |
Definition at line 75 of file Stabilization.hpp.
typedef std::shared_ptr<ETFESpace_pressure > ETFESpacePtr_pressure |
Definition at line 76 of file Stabilization.hpp.
|
inline |
Definition at line 304 of file Stabilization.hpp.
|
inlinevirtual |
Definition at line 308 of file Stabilization.hpp.
|
inlinevirtual |
Adds to the residual the contribution coming from the SUPG stabilization.
residual_velocity | velocity component of the residual |
residual_pressure | pressure component of the residual |
velocity_previous_newton_step | velocity from the previous Newton step |
pressure_previous_newton_step | pressure from the previous Newton step |
velocity_rhs | velocity term from approximation time derivative |
Reimplemented in StabilizationSUPG, and StabilizationSUPG_semi_implicit_ale.
Definition at line 94 of file Stabilization.hpp.
|
inlinevirtual |
Updates the system matrix in Navier-Stokes simulations in fixed coordinates.
velocityExtrapolated | extrapolation of the fluid velocity |
Reimplemented in StabilizationSUPG_semi_implicit.
Definition at line 105 of file Stabilization.hpp.
|
inlinevirtual |
Updates the system matrix in Navier-Stokes simulations in ALE coordinates.
velocityExtrapolated | extrapolation of the fluid velocity |
velocityALE | ALE velocity |
Reimplemented in StabilizationSUPG_semi_implicit_ale.
Definition at line 113 of file Stabilization.hpp.
|
inlinevirtual |
Adds to the right hand side the contribution coming from the SUPG stabilization.
rhs_velocity | velocity component of the right hand side |
rhs_pressure | pressure component of the right hand side |
velocity_extrapolated | velocity extrapolated |
velocity_rhs | velocity term from approximation time derivative |
Reimplemented in StabilizationSUPG_semi_implicit.
Definition at line 124 of file Stabilization.hpp.
|
inlinevirtual |
Updates the system matrix in Navier-Stokes simulations in fixed coordinates.
velocityExtrapolated | extrapolation of the fluid velocity |
pressureExtrapolated | extrapolation of the fluid pressure |
velocity_rhs | velocity term from approximation time derivative |
Reimplemented in StabilizationSUPG.
Definition at line 136 of file Stabilization.hpp.
|
inlinevirtual |
Updates the jacobian matrix in Navier-Stokes simulations in ALE coordinates.
convective_velocity_previous_newton_step | convective velocity from the previous Newton step |
velocity_previous_newton_step | velocity from the previous Newton step |
pressure_previous_newton_step | pressure from the previous Newton step |
velocity_rhs | velocity term from approximation time derivative |
Reimplemented in StabilizationSUPGALE.
Definition at line 147 of file Stabilization.hpp.
|
inlinevirtual |
Adds to the residual the contribution coming from the SUPG stabilization.
residual_velocity | velocity component of the residual |
residual_pressure | pressure component of the residual |
convective_velocity_previous_newton_step | convective velocity from the previous Newton step |
velocity_previous_newton_step | velocity from the previous Newton step |
pressure_previous_newton_step | pressure from the previous Newton step |
velocity_rhs | velocity term from approximation time derivative |
Reimplemented in StabilizationSUPGALE.
Definition at line 162 of file Stabilization.hpp.
|
pure virtual |
Set the constant C_I for the stabilization.
value | order of FE used for velocity |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
inlinevirtual |
Build the graphs of each single block.
Reimplemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, and StabilizationSUPGALE.
Definition at line 181 of file Stabilization.hpp.
|
pure virtual |
Set the fluid density.
value | order of FE used for velocity |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set the bdf order.
bdfOrder | order of BDF scheme used |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set the alpha coefficient of the BDF scheme used.
alpha | coefficient BDF in front of u^{n+1} |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set the fluid dynamic viscosity.
viscosity | value of fluid viscosity |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set the Epetra communicator.
comm | Epetra communicator |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set the time step size.
timestep | time step size |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set FE space for velocity.
velocityFESpace | FE space for velocity |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set Expression Template FE space for velocity.
pressureFESpace | FE space for pressure |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set Expression Template FE space for velocity.
velocityEta_fespace | Expression Template FE space for velocity |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Set Expression Template FE space for velocity.
pressureEta_fespace | Expression Template FE space for pressure |
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
inlinevirtual |
Set if using the graph.
useGraph | true it uses the graph, false it does not use the graph |
Reimplemented in StabilizationSUPG, StabilizationSUPGALE, StabilizationSUPG_semi_implicit_ale, and StabilizationSUPG_semi_implicit.
Definition at line 247 of file Stabilization.hpp.
|
inlinevirtual |
Set if using dynamic fine scale model.
Reimplemented in StabilizationSUPG_semi_implicit_ale.
Definition at line 250 of file Stabilization.hpp.
|
inlinevirtual |
Set if the user wants to export the fine scale component.
Reimplemented in StabilizationSUPG_semi_implicit_ale.
Definition at line 253 of file Stabilization.hpp.
|
inlinevirtual |
Set if using the fast assembler.
Definition at line 256 of file Stabilization.hpp.
|
pure virtual |
Get block00 of the stabilization matrix.
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Get block01 of the stabilization matrix.
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Get block10 of the stabilization matrix.
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Get block11 of the stabilization matrix.
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
pure virtual |
Get name of stabilization being used.
Implemented in StabilizationSUPG, StabilizationSUPG_semi_implicit_ale, StabilizationSUPGALE, and StabilizationSUPG_semi_implicit.
|
inlinevirtual |
Updates the fine scale component.
Reimplemented in StabilizationSUPG_semi_implicit_ale.
Definition at line 279 of file Stabilization.hpp.
|
inlinevirtual |
Updates the fine scale component.
Definition at line 282 of file Stabilization.hpp.
|
inlineprivatevirtual |
Setup of the fine scale component.
Reimplemented in StabilizationSUPG_semi_implicit_ale.
Definition at line 292 of file Stabilization.hpp.
|
inlineprivatevirtual |
Compute the fine component of the velocity and pressure.
Definition at line 295 of file Stabilization.hpp.
|
inlineprivatevirtual |
Compute the fine component of the velocity and pressure for visualization.
Definition at line 298 of file Stabilization.hpp.