LifeV
OseenSolverShapeDerivative< MeshType, SolverType > Class Template Reference

This class contains an Oseen equation solver class with shape derivative for fluid structure interaction problem. More...

#include <OseenSolverShapeDerivative.hpp>

+ Inheritance diagram for OseenSolverShapeDerivative< MeshType, SolverType >:
+ Collaboration diagram for OseenSolverShapeDerivative< MeshType, SolverType >:

Private Attributes

vector_Type M_linearRightHandSideNoBC
 
vector_Type M_linearRightHandSideFull
 
vector_Type M_linearSolution
 
linearSolver_Type M_linearLinSolver
 
preconditionerPtr_type M_linearPreconditioner
 
VectorElemental M_elementVectorVelocity
 
VectorElemental M_elementVectorPressure
 
VectorElemental M_elementMeshVelocity
 
VectorElemental M_elementVelocity
 
VectorElemental M_elementPressure
 
VectorElemental M_elementConvectionVelocity
 
VectorElemental M_elementDisplacement
 
VectorElemental M_elementVelocityRightHandSide
 
VectorElemental M_u_loc
 
bool M_reuseLinearPreconditioner
 
FESpace< mesh_Type, MapEpetra > * M_mmFESpace
 

Public Types

typedef MeshType mesh_Type
 
typedef SolverType linearSolver_Type
 
typedef OseenSolver< mesh_Type, linearSolver_TypeoseenSolver_Type
 
typedef oseenSolver_Type::vector_Type vector_Type
 
typedef oseenSolver_Type::solution_Type solution_Type
 
typedef oseenSolver_Type::solutionPtr_Type solutionPtr_Type
 
typedef oseenSolver_Type::matrix_Type matrix_Type
 
typedef oseenSolver_Type::matrixPtr_Type matrixPtr_Type
 
typedef oseenSolver_Type::data_Type data_Type
 
typedef oseenSolver_Type::preconditioner_Type preconditioner_Type
 
typedef oseenSolver_Type::preconditionerPtr_Type preconditionerPtr_type
 
typedef oseenSolver_Type::bcHandler_Type bcHandler_Type
 

Constructors & Destructor

 OseenSolverShapeDerivative ()
 Empty constructor. More...
 
 OseenSolverShapeDerivative (std::shared_ptr< data_Type > dataType, FESpace< mesh_Type, MapEpetra > &velocityFESpace, FESpace< mesh_Type, MapEpetra > &pressureFESpace, std::shared_ptr< Epetra_Comm > &communicator, const Int lagrangeMultiplier=0)
 Constructor. More...
 
 OseenSolverShapeDerivative (std::shared_ptr< data_Type > dataType, FESpace< mesh_Type, MapEpetra > &velocityFESpace, FESpace< mesh_Type, MapEpetra > &pressureFESpace, std::shared_ptr< Epetra_Comm > &communicator, const MapEpetra monolithicMap, const UInt offset=0)
 Constructor. More...
 
 OseenSolverShapeDerivative (std::shared_ptr< data_Type > dataType, FESpace< mesh_Type, MapEpetra > &velocityFESpace, FESpace< mesh_Type, MapEpetra > &pressureFESpace, FESpace< mesh_Type, MapEpetra > &mmFESpace, std::shared_ptr< Epetra_Comm > &communicator, const MapEpetra monolithicMap, const UInt offset=0)
 Constructor. More...
 
virtual ~OseenSolverShapeDerivative ()
 Virtual destructor. More...
 

Methods

void setUp (const GetPot &dataFile)
 Set up data from GetPot. More...
 
void solveLinearSystem (bcHandler_Type &bcHandler)
 
void updateLinearSystem (const matrix_Type &matrixNoBC, Real &alpha, const vector_Type &un, const vector_Type &uk, const vector_Type &disp, const vector_Type &w, const vector_Type &dw, const vector_Type &sourceVector)
 Update linear system. More...
 
void updateShapeDerivatives (matrix_Type &matrixNoBC, Real &alpha, const vector_Type &un, const vector_Type &uk, const vector_Type &w, UInt offset, FESpace< mesh_Type, MapEpetra > &dFESpace, bool wImplicit=true, bool convectiveTermDerivative=false)
 Update shape derivatives. More...
 

Set Methods

void updateLinearRightHandSideNoBC (const vector_Type &rightHandSide)
 Set. More...
 

Get Methods

vector_TypelinearRightHandSideNoBC ()
 Return. More...
 
const vector_TypelinearRightHandSideNoBC () const
 
const vector_TypelinearSolution () const
 Get the solution of the Shape Derivative problem. More...
 
bool stabilization ()
 Return. More...
 
const bool & stabilization () const
 
Real linearFlux (const markerID_Type &flag)
 Compute the derivative of the flow rate on a boundary face. More...
 
 LIFEV_DEPRECATED (Real getLinearFlux(const markerID_Type &flag))
 
Real linearPressure (const markerID_Type &flag)
 Compute the derivative of the pressure on a boundary face. More...
 
 LIFEV_DEPRECATED (Real getLinearPressure(const markerID_Type &flag))
 
Real linearLagrangeMultiplier (const markerID_Type &flag, bcHandler_Type &bcHandler)
 Compute the derivative of a Lagrange multiplier (which correspond to the value of the derivative of the mean normal stress on a boundary face) More...
 
 LIFEV_DEPRECATED (Real getLinearLagrangeMultiplier(const markerID_Type &flag, bcHandler_Type &bcHandler))
 
Real linearKineticNormalStress (const markerID_Type &flag)
 Compute the derivative of the kinetic normal stress (i.e., the normal stress due to the kinetic energy) on a boundary face with given flag. More...
 
Real linearKineticNormalStress (const markerID_Type &flag, const vector_Type &solution, const vector_Type &linearSolution)
 Compute the derivative of the kinetic normal stress (i.e., the normal stress due to the kinetic energy) on a boundary face with a given flag and a given solution. More...
 
Real linearMeanNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler)
 Compute the derivative of the mean normal stress on a boundary face with a given flag. More...
 
Real linearMeanNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler, const vector_Type &linearSolution)
 Compute the derivative of the mean normal stress on a boundary face with a given flag. More...
 
Real linearMeanTotalNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler)
 Compute the derivative of the mean total normal stress on a boundary face with a given flag. More...
 
Real linearMeanTotalNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler, const vector_Type &solution, const vector_Type &linearSolution)
 Compute the derivative of the mean total normal stress on a boundary face with a given flag. More...
 
 OseenSolverShapeDerivative (const OseenSolverShapeDerivative &oseenShapeDerivative)
 Empty copy constructor. More...
 

Additional Inherited Members

- Public Types inherited from OseenSolver< MeshType, SolverType >
typedef MeshType mesh_Type
 
typedef SolverType linearSolver_Type
 
typedef std::shared_ptr< linearSolver_TypelinearSolverPtr_Type
 
typedef OseenData data_Type
 
typedef std::shared_ptr< data_TypedataPtr_Type
 
typedef std::function< Real(const Real &t, const Real &x, const Real &y, const Real &z, const ID &i) > function_Type
 
typedef std::function< Real(const Real &t, const Real &x, const Real &y, const Real &z, const ID &i) > source_Type
 
typedef BCHandler bcHandler_Type
 
typedef std::shared_ptr< bcHandler_TypebcHandlerPtr_Type
 
typedef linearSolver_Type::matrix_type matrix_Type
 
typedef std::shared_ptr< matrix_TypematrixPtr_Type
 
typedef linearSolver_Type::vector_type vector_Type
 
typedef std::shared_ptr< vector_TypevectorPtr_Type
 
typedef vector_Type solution_Type
 
typedef std::shared_ptr< solution_TypesolutionPtr_Type
 
typedef linearSolver_Type::prec_raw_type preconditioner_Type
 
typedef linearSolver_Type::prec_type preconditionerPtr_Type
 
- Public Member Functions inherited from OseenSolver< MeshType, SolverType >
preconditionerPtr_Typepreconditioner ()
 Return a shared pointer to the preconditioner (of type derived from EpetraPreconditioner) More...
 
 OseenSolver ()
 Empty constructor. More...
 
 OseenSolver (std::shared_ptr< data_Type > dataType, FESpace< mesh_Type, MapEpetra > &velocityFESpace, FESpace< mesh_Type, MapEpetra > &pressureFESpace, std::shared_ptr< Epetra_Comm > &communicator, const Int lagrangeMultiplier=0)
 Constructor. More...
 
 OseenSolver (std::shared_ptr< data_Type > dataType, FESpace< mesh_Type, MapEpetra > &velocityFESpace, FESpace< mesh_Type, MapEpetra > &pressureFESpace, std::shared_ptr< Epetra_Comm > &communicator, const MapEpetra monolithicMap, const UInt offset=0)
 Constructor. More...
 
 OseenSolver (std::shared_ptr< data_Type > dataType, FESpace< mesh_Type, MapEpetra > &velocityFESpace, FESpace< mesh_Type, MapEpetra > &pressureFESpace, const std::vector< Int > &lagrangeMultipliers, std::shared_ptr< Epetra_Comm > &communicator)
 Constructor. More...
 
virtual ~OseenSolver ()
 virtual destructor More...
 
void initialize (const function_Type &velocityFunction, const function_Type &pressureFunction)
 Initialize with velocityFunction and pressureFunction. More...
 
void initialize (const vector_Type &velocityInitialGuess, const vector_Type &pressureInitialGuess)
 Initialize with velocityInitialGuess and pressureInitialGuess. More...
 
void initialize (const vector_Type &velocityAndPressure)
 Initialize with velocityAndPressure. More...
 
virtual void buildSystem ()
 Build linear system. More...
 
virtual void updateSystem (const Real alpha, const vector_Type &betaVector, const vector_Type &sourceVector)
 Update system. More...
 
virtual void updateSystem (const Real alpha, const vector_Type &betaVector, const vector_Type &sourceVector, matrixPtr_Type matrix, const vector_Type &un)
 Update system. More...
 
void updateStabilization (matrix_Type &matrixFull)
 Update stabilization term. More...
 
virtual void updateRightHandSide (const vector_Type &rightHandSide)
 Update the right hand side. More...
 
void updateSourceTerm (const source_Type &source)
 Update the source term. More...
 
virtual void iterate (bcHandler_Type &bcHandler)
 Update convective term, boundary condition and solve the linearized ns system. More...
 
void reduceSolution (Vector &velocity, Vector &pressure)
 Reduce the local solution in global vectors. More...
 
void reduceResidual (Vector &residual)
 Reduce the residual. More...
 
void setBlockPreconditioner (matrixPtr_Type blockPreconditioner)
 Set a block preconditioner. More...
 
void getFluidMatrix (matrix_Type &matrixFull)
 Update and return the coefficient matrix. More...
 
void setupPostProc ()
 Set up post processing. More...
 
Real area (const markerID_Type &flag)
 Compute area on a boundary face with given flag. More...
 
Vector normal (const markerID_Type &flag)
 Compute the outgoing normal of a boundary face with given flag. More...
 
Vector geometricCenter (const markerID_Type &flag)
 Compute the geometric center of a boundary face with given flag. More...
 
Real flux (const markerID_Type &flag, const vector_Type &solution)
 Compute flux on a boundary face with given flag and a given solution. More...
 
Real flux (const markerID_Type &flag)
 Compute flux on a boundary face with given flag. More...
 
Real kineticNormalStress (const markerID_Type &flag, const vector_Type &solution)
 Compute the kinetic normal stress (i.e., the normal stress due to the kinetic energy) on a boundary face with a given flag and a given solution. More...
 
Real kineticNormalStress (const markerID_Type &flag)
 Compute the kinetic normal stress (i.e., the normal stress due to the kinetic energy) on a boundary face with a given flag. More...
 
Real pressure (const markerID_Type &flag, const vector_Type &solution)
 Compute average pressure on a boundary face with given flag and a given solution. More...
 
Real pressure (const markerID_Type &flag)
 Compute average pressure on a boundary face with given flag. More...
 
Real meanNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler, const vector_Type &solution)
 Compute the mean normal stress on a boundary face with a given flag and a given solution. More...
 
Real meanNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler)
 Compute the mean normal stress on a boundary face with a given flag. More...
 
Real meanTotalNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler, const vector_Type &solution)
 Compute the mean total normal stress on a boundary face with a given flag and a given solution. More...
 
Real meanTotalNormalStress (const markerID_Type &flag, bcHandler_Type &bcHandler)
 Compute the mean total normal stress on a boundary face with a given flag. More...
 
Real lagrangeMultiplier (const markerID_Type &flag, bcHandler_Type &bcHandler)
 Get the Lagrange multiplier related to a flux imposed on a given part of the boundary. More...
 
Real lagrangeMultiplier (const markerID_Type &flag, bcHandler_Type &bcHandler, const vector_Type &solution)
 Get the Lagrange multiplier related to a flux imposed on a given part of the boundary. More...
 
void resetPreconditioner (bool reset=true)
 Reset the preconditioner. More...
 
void resetStabilization ()
 Reset stabilization matrix at the same time as the preconditioner. More...
 
void updateUn ()
 Update. More...
 
void updateUn (const vector_Type &solution)
 Update for the monolithic. More...
 
void showMe (std::ostream &output=std::cout) const
 Display general information about the content of the class. More...
 
void setRecomputeMatrix (const bool &recomputeMatrix)
 Set. More...
 
void setSourceTerm (source_Type source)
 set the source term functor More...
 
void setTolMaxIteration (const Real &tolerance, const Int &maxIteration=-1)
 Set the tolerance and the maximum number of iterations of the linear solver. More...
 
const dataPtr_Typedata () const
 Return the data container of the fluid. More...
 
const Realdensity () const
 Return the density of the fluid. More...
 
const Realviscosity () const
 Return the viscosity of the fluid. More...
 
const vectorPtr_Typesolution () const
 Return the local solution vector. More...
 
const vector_Typeresidual () const
 Return the local residual vector. More...
 
FESpace< mesh_Type, MapEpetra > & velocityFESpace ()
 Return velocity FE space. More...
 
const FESpace< mesh_Type, MapEpetra > & velocityFESpace () const
 
FESpace< mesh_Type, MapEpetra > & pressureFESpace ()
 Return pressure FE space. More...
 
const FESpace< mesh_Type, MapEpetra > & pressureFESpace () const
 
const source_TypesourceTerm () const
 Get the source term. More...
 
PostProcessingBoundary< mesh_Type > & postProcessing ()
 Returns the post processing structure. More...
 
const PostProcessingBoundary< mesh_Type > & postProcessing () const
 
const MapEpetragetMap () const
 Return MapEpetra. More...
 
const std::shared_ptr< Epetra_Comm > & comm () const
 Return Epetra communicator. More...
 
const DisplayergetDisplayer () const
 Return displayer. More...
 
const bool & recomputeMatrix () const
 Return. More...
 
matrix_TypematrixNoBC ()
 Return matrix without boundary conditions. More...
 
const matrix_TypematrixNoBC () const
 
matrix_TypematrixMass ()
 Return mass matrix. More...
 
const matrix_TypematrixMass () const
 
const matrixPtr_Type matrixMassPtr () const
 
void postProcessingSetArea ()
 Set up post processing structures. More...
 
void postProcessingSetNormal ()
 Set up post processing. More...
 
void postProcessingSetPhi ()
 Set up post processing. More...
 
bool getIsDiagonalBlockPreconditioner ()
 Return a bool value if using diagonal block preconditioner. More...
 
const bool & getIsDiagonalBlockPreconditioner () const
 
- Protected Member Functions inherited from OseenSolver< MeshType, SolverType >
 OseenSolver (const OseenSolver &oseen)
 Empty copy constructor. More...
 
Real removeMean (vector_Type &x)
 Removes mean of component of vector x. More...
 
void applyBoundaryConditions (matrix_Type &matrix, vector_Type &rightHandSide, bcHandler_Type &bcHandler)
 Apply boundary conditions. More...
 
void echo (std::string message)
 Echo message. More...
 
const UIntdimVelocity () const
 Return the dim of velocity FE space. More...
 
const UIntdimPressure () const
 Return the dim of pressure FE space. More...
 
- Protected Attributes inherited from OseenSolver< MeshType, SolverType >
dataPtr_Type M_oseenData
 data for Navier-Stokes solvers More...
 
FESpace< mesh_Type, MapEpetra > & M_velocityFESpace
 
FESpace< mesh_Type, MapEpetra > & M_pressureFESpace
 
Displayer M_Displayer
 MPI communicator. More...
 
MapEpetra M_localMap
 
matrixPtr_Type M_velocityMatrixMass
 mass matrix More...
 
matrixPtr_Type M_pressureMatrixMass
 mass matrix More...
 
matrixPtr_Type M_matrixStokes
 Stokes matrix: nu*stiff. More...
 
matrixPtr_Type M_matrixNoBC
 matrix to be solved More...
 
matrixPtr_Type M_matrixStabilization
 stabilization matrix More...
 
source_Type M_source
 source term for Navier-Stokes equations More...
 
vectorPtr_Type M_rightHandSideNoBC
 Right hand side for the velocity component. More...
 
vectorPtr_Type M_solution
 Global solution. More...
 
vectorPtr_Type M_residual
 residual More...
 
linearSolverPtr_Type M_linearSolver
 
bool M_steady
 
std::shared_ptr< PostProcessingBoundary< mesh_Type > > M_postProcessing
 Postprocessing class. More...
 
bool M_stabilization
 Stabilization. More...
 
bool M_reuseStabilization
 
bool M_resetStabilization
 
Int M_iterReuseStabilization
 
details::StabilizationIP< mesh_Type, DOFM_ipStabilization
 
Real M_gammaBeta
 
Real M_gammaDiv
 
Real M_gammaPress
 
const function_TypeM_betaFunction
 
bool M_divBetaUv
 
bool M_stiffStrain
 
Real M_diagonalize
 
UInt M_count
 
bool M_recomputeMatrix
 
bool M_isDiagonalBlockPreconditioner
 
MatrixElemental M_elementMatrixStiff
 Elementary matrices and vectors. More...
 
MatrixElemental M_elementMatrixMass
 
MatrixElemental M_elementMatrixPreconditioner
 
MatrixElemental M_elementMatrixDivergence
 
MatrixElemental M_elementMatrixGradient
 
VectorElemental M_elementRightHandSide
 
matrixPtr_Type M_blockPreconditioner
 
VectorElemental M_wLoc
 
VectorElemental M_uLoc
 
std::shared_ptr< vector_TypeM_un
 

Detailed Description

template<typename MeshType, typename SolverType = LifeV::SolverAztecOO>
class LifeV::OseenSolverShapeDerivative< MeshType, SolverType >

This class contains an Oseen equation solver class with shape derivative for fluid structure interaction problem.

Author
MiGlobaluel A. Fernandez miGlo.nosp@m.balu.nosp@m.el.fe.nosp@m.rnan.nosp@m.dez@i.nosp@m.nria.nosp@m..fr Christoph Winkelmann chris.nosp@m.toph.nosp@m..wink.nosp@m.elma.nosp@m.nn@ep.nosp@m.fl.c.nosp@m.h
Date
09-06-2003
Author
G. Fourestey
Date
02-2007
Contributor:
Zhen Wang zhen..nosp@m.wang.nosp@m.@emor.nosp@m.y.ed.nosp@m.u

Definition at line 69 of file OseenSolverShapeDerivative.hpp.

Member Typedef Documentation

◆ mesh_Type

Definition at line 78 of file OseenSolverShapeDerivative.hpp.

◆ linearSolver_Type

typedef SolverType linearSolver_Type

Definition at line 79 of file OseenSolverShapeDerivative.hpp.

◆ oseenSolver_Type

◆ vector_Type

◆ solution_Type

◆ solutionPtr_Type

◆ matrix_Type

◆ matrixPtr_Type

◆ data_Type

◆ preconditioner_Type

◆ preconditionerPtr_type

◆ bcHandler_Type

Constructor & Destructor Documentation

◆ OseenSolverShapeDerivative() [1/5]

Empty constructor.

◆ OseenSolverShapeDerivative() [2/5]

OseenSolverShapeDerivative ( std::shared_ptr< data_Type dataType,
FESpace< mesh_Type, MapEpetra > &  velocityFESpace,
FESpace< mesh_Type, MapEpetra > &  pressureFESpace,
std::shared_ptr< Epetra_Comm > &  communicator,
const Int  lagrangeMultiplier = 0 
)

Constructor.

Parameters
dataTypeOseenData class
velocityFESpaceVelocity FE space
pressureFESpacePressure FE space
communicatorMPI communicator
lagrangeMultiplierLagrange multiplier

Definition at line 402 of file OseenSolverShapeDerivative.hpp.

◆ OseenSolverShapeDerivative() [3/5]

OseenSolverShapeDerivative ( std::shared_ptr< data_Type dataType,
FESpace< mesh_Type, MapEpetra > &  velocityFESpace,
FESpace< mesh_Type, MapEpetra > &  pressureFESpace,
std::shared_ptr< Epetra_Comm > &  communicator,
const MapEpetra  monolithicMap,
const UInt  offset = 0 
)

Constructor.

Parameters
dataTypeOseenData class
velocityFESpaceVelocity FE space
pressureFESpacePressure FE space
communicatorMPI communicator
monolithicMapMapEpetra class
offset

Definition at line 434 of file OseenSolverShapeDerivative.hpp.

◆ OseenSolverShapeDerivative() [4/5]

OseenSolverShapeDerivative ( std::shared_ptr< data_Type dataType,
FESpace< mesh_Type, MapEpetra > &  velocityFESpace,
FESpace< mesh_Type, MapEpetra > &  pressureFESpace,
FESpace< mesh_Type, MapEpetra > &  mmFESpace,
std::shared_ptr< Epetra_Comm > &  communicator,
const MapEpetra  monolithicMap,
const UInt  offset = 0 
)

Constructor.

Parameters
dataTypeOseenData class
velocityFESpaceVelocity FE space
pressureFESpacePressure FE space
mmFESpaceFE space
communicatorMPI communicator
monolithicMapMapEpetra class
offset

Definition at line 468 of file OseenSolverShapeDerivative.hpp.

◆ ~OseenSolverShapeDerivative()

Virtual destructor.

Definition at line 504 of file OseenSolverShapeDerivative.hpp.

◆ OseenSolverShapeDerivative() [5/5]

OseenSolverShapeDerivative ( const OseenSolverShapeDerivative< MeshType, SolverType > &  oseenShapeDerivative)
private

Empty copy constructor.

Member Function Documentation

◆ setUp()

void setUp ( const GetPot dataFile)
virtual

Set up data from GetPot.

Parameters
dataFileGetPot object

Reimplemented from OseenSolver< MeshType, SolverType >.

Definition at line 625 of file OseenSolverShapeDerivative.hpp.

◆ solveLinearSystem()

void solveLinearSystem ( bcHandler_Type bcHandler)
Parameters
bcHandlerBC handler

Definition at line 643 of file OseenSolverShapeDerivative.hpp.

◆ updateLinearSystem()

void updateLinearSystem ( const matrix_Type matrixNoBC,
Real alpha,
const vector_Type un,
const vector_Type uk,
const vector_Type disp,
const vector_Type w,
const vector_Type dw,
const vector_Type sourceVector 
)

Update linear system.

Parameters
matrixNoBCFluid matrix withoud BC
alphaalpha
unBeta
ukFluid solution
dispmesh_Type deltaX
wmesh_Type Velocity
dwmesh_Type deltaVelocity
sourceVectorRHS (usually 0 )

Definition at line 696 of file OseenSolverShapeDerivative.hpp.

◆ updateShapeDerivatives()

void updateShapeDerivatives ( matrix_Type matrixNoBC,
Real alpha,
const vector_Type un,
const vector_Type uk,
const vector_Type w,
UInt  offset,
FESpace< mesh_Type, MapEpetra > &  dFESpace,
bool  wImplicit = true,
bool  convectiveTermDerivative = false 
)

Update shape derivatives.

Parameters
matrixNoBCFluid matrix withoud BC
alphaalpha
unBeta
ukFluid solution
dispmesh_Type deltaX
wmesh_Type Velocity
offset
dFESpace
wImplicit
convectiveTermDerivative

Definition at line 896 of file OseenSolverShapeDerivative.hpp.

◆ updateLinearRightHandSideNoBC()

void updateLinearRightHandSideNoBC ( const vector_Type rightHandSide)
inline

Set.

Parameters
rightHandSide

Definition at line 222 of file OseenSolverShapeDerivative.hpp.

◆ linearRightHandSideNoBC() [1/2]

vector_Type& linearRightHandSideNoBC ( )
inline

Return.

Returns
M_linearRightHandSideNoBC

Definition at line 236 of file OseenSolverShapeDerivative.hpp.

◆ linearRightHandSideNoBC() [2/2]

const vector_Type& linearRightHandSideNoBC ( ) const
inline

Definition at line 241 of file OseenSolverShapeDerivative.hpp.

◆ linearSolution()

const vector_Type& linearSolution ( ) const
inline

Get the solution of the Shape Derivative problem.

Returns
vector containing the solution of the Shape Derivative problem.

Definition at line 250 of file OseenSolverShapeDerivative.hpp.

◆ stabilization() [1/2]

bool stabilization ( )
inline

Return.

Returns
stabilization

Definition at line 259 of file OseenSolverShapeDerivative.hpp.

◆ stabilization() [2/2]

const bool& stabilization ( ) const
inline

Definition at line 264 of file OseenSolverShapeDerivative.hpp.

◆ linearFlux()

Real linearFlux ( const markerID_Type flag)

Compute the derivative of the flow rate on a boundary face.

Parameters
flagboundary flag
Returns
derivative of flow rate

Definition at line 516 of file OseenSolverShapeDerivative.hpp.

◆ LIFEV_DEPRECATED() [1/3]

LIFEV_DEPRECATED ( Real   getLinearFluxconst markerID_Type &flag)

◆ linearPressure()

Real linearPressure ( const markerID_Type flag)

Compute the derivative of the pressure on a boundary face.

Parameters
flagboundary flag
Returns
derivative of pressure

Definition at line 536 of file OseenSolverShapeDerivative.hpp.

◆ LIFEV_DEPRECATED() [2/3]

LIFEV_DEPRECATED ( Real   getLinearPressureconst markerID_Type &flag)

◆ linearLagrangeMultiplier()

Real linearLagrangeMultiplier ( const markerID_Type flag,
bcHandler_Type bcHandler 
)

Compute the derivative of a Lagrange multiplier (which correspond to the value of the derivative of the mean normal stress on a boundary face)

Parameters
flagflag of the boundary face associated with the flux and the Lagrange multiplier we want.
BCBChandler containing the boundary conditions of the problem.
Returns
derivative of the Lagrange multiplier

Definition at line 556 of file OseenSolverShapeDerivative.hpp.

◆ LIFEV_DEPRECATED() [3/3]

LIFEV_DEPRECATED ( Real   getLinearLagrangeMultiplierconst markerID_Type &flag, bcHandler_Type &bcHandler)

◆ linearKineticNormalStress() [1/2]

Real linearKineticNormalStress ( const markerID_Type flag)

Compute the derivative of the kinetic normal stress (i.e., the normal stress due to the kinetic energy) on a boundary face with given flag.

See also
[2] [15]
Parameters
flagboundary flag
Returns
derivative of the kinetic normal stress

Definition at line 576 of file OseenSolverShapeDerivative.hpp.

◆ linearKineticNormalStress() [2/2]

Real linearKineticNormalStress ( const markerID_Type flag,
const vector_Type solution,
const vector_Type linearSolution 
)

Compute the derivative of the kinetic normal stress (i.e., the normal stress due to the kinetic energy) on a boundary face with a given flag and a given solution.

See also
[2] [15]
Parameters
flagboundary flag
solutionproblem solution
linearSolutionlinear problem solution
Returns
derivative of the kinetic normal stress

Definition at line 583 of file OseenSolverShapeDerivative.hpp.

◆ linearMeanNormalStress() [1/2]

Real linearMeanNormalStress ( const markerID_Type flag,
bcHandler_Type bcHandler 
)

Compute the derivative of the mean normal stress on a boundary face with a given flag.

See also
[2] [15]
Parameters
flagflag of the boundary face associated with the flux and the Lagrange multiplier we want.
BCBChandler containing the boundary conditions of the problem.
Returns
derivative of the mean normal stress

Definition at line 598 of file OseenSolverShapeDerivative.hpp.

◆ linearMeanNormalStress() [2/2]

Real linearMeanNormalStress ( const markerID_Type flag,
bcHandler_Type bcHandler,
const vector_Type linearSolution 
)

Compute the derivative of the mean normal stress on a boundary face with a given flag.

See also
[2] [15]
Parameters
flagflag of the boundary face associated with the flux and the Lagrange multiplier we want.
BCBChandler containing the boundary conditions of the problem.
linearSolutionlinear problem solution
Returns
derivative of the mean normal stress

Definition at line 605 of file OseenSolverShapeDerivative.hpp.

◆ linearMeanTotalNormalStress() [1/2]

Real linearMeanTotalNormalStress ( const markerID_Type flag,
bcHandler_Type bcHandler 
)

Compute the derivative of the mean total normal stress on a boundary face with a given flag.

See also
[2] [15]
Parameters
flagflag of the boundary face associated with the flux and the Lagrange multiplier we want.
BCBChandler containing the boundary conditions of the problem.
Returns
derivative of the mean total normal stress

Definition at line 612 of file OseenSolverShapeDerivative.hpp.

◆ linearMeanTotalNormalStress() [2/2]

Real linearMeanTotalNormalStress ( const markerID_Type flag,
bcHandler_Type bcHandler,
const vector_Type solution,
const vector_Type linearSolution 
)

Compute the derivative of the mean total normal stress on a boundary face with a given flag.

See also
[2] [15]
Parameters
flagflag of the boundary face associated with the flux and the Lagrange multiplier we want.
BCBChandler containing the boundary conditions of the problem.
solutionproblem solution
linearSolutionlinear problem solution
Returns
derivative of the mean total normal stress

Definition at line 619 of file OseenSolverShapeDerivative.hpp.

Field Documentation

◆ M_linearRightHandSideNoBC

vector_Type M_linearRightHandSideNoBC
private

Definition at line 369 of file OseenSolverShapeDerivative.hpp.

◆ M_linearRightHandSideFull

vector_Type M_linearRightHandSideFull
private

Definition at line 370 of file OseenSolverShapeDerivative.hpp.

◆ M_linearSolution

vector_Type M_linearSolution
private

Definition at line 372 of file OseenSolverShapeDerivative.hpp.

◆ M_linearLinSolver

linearSolver_Type M_linearLinSolver
private

Definition at line 374 of file OseenSolverShapeDerivative.hpp.

◆ M_linearPreconditioner

preconditionerPtr_type M_linearPreconditioner
private

Definition at line 375 of file OseenSolverShapeDerivative.hpp.

◆ M_elementVectorVelocity

VectorElemental M_elementVectorVelocity
private

Definition at line 378 of file OseenSolverShapeDerivative.hpp.

◆ M_elementVectorPressure

VectorElemental M_elementVectorPressure
private

Definition at line 379 of file OseenSolverShapeDerivative.hpp.

◆ M_elementMeshVelocity

VectorElemental M_elementMeshVelocity
private

Definition at line 383 of file OseenSolverShapeDerivative.hpp.

◆ M_elementVelocity

VectorElemental M_elementVelocity
private

Definition at line 384 of file OseenSolverShapeDerivative.hpp.

◆ M_elementPressure

VectorElemental M_elementPressure
private

Definition at line 385 of file OseenSolverShapeDerivative.hpp.

◆ M_elementConvectionVelocity

VectorElemental M_elementConvectionVelocity
private

Definition at line 386 of file OseenSolverShapeDerivative.hpp.

◆ M_elementDisplacement

VectorElemental M_elementDisplacement
private

Definition at line 387 of file OseenSolverShapeDerivative.hpp.

◆ M_elementVelocityRightHandSide

VectorElemental M_elementVelocityRightHandSide
private

Definition at line 388 of file OseenSolverShapeDerivative.hpp.

◆ M_u_loc

VectorElemental M_u_loc
private

Definition at line 389 of file OseenSolverShapeDerivative.hpp.

◆ M_reuseLinearPreconditioner

bool M_reuseLinearPreconditioner
private

Definition at line 390 of file OseenSolverShapeDerivative.hpp.

◆ M_mmFESpace

FESpace<mesh_Type, MapEpetra>* M_mmFESpace
private

Definition at line 391 of file OseenSolverShapeDerivative.hpp.


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