LifeV
BlockJacobiPreconditioner Class Reference

#include <BlockJacobiPreconditioner.hpp>

+ Inheritance diagram for BlockJacobiPreconditioner:
+ Collaboration diagram for BlockJacobiPreconditioner:

Public Member Functions

virtual ~BlockJacobiPreconditioner ()
 
void showMe ()
 Show information about the class. More...
 
- Public Member Functions inherited from LinearOperatorAlgebra
virtual ~LinearOperatorAlgebra ()
 Destructor. More...
 
int apply (const VectorEpetra &X, VectorEpetra &Y) const
 Returns the result of a LinearOperator applied to a VectorEpetra X in Y. More...
 
int applyInverse (const VectorEpetra &X, VectorEpetra &Y)
 Returns the result of a LinearOperator inverse applied to an VectorEpetra X in Y. More...
 

Private Member Functions

void setMaps ()
 Create the domain and the range maps. More...
 

Private Attributes

std::shared_ptr< BlockEpetra_MapM_operatorDomainMap
 
std::shared_ptr< BlockEpetra_MapM_operatorRangeMap
 Range Map. More...
 
commPtr_Type M_comm
 Communicator. More...
 
bool M_useTranspose
 
mapEpetraPtr_Type M_monolithicMap
 
std::shared_ptr< Epetra_Vector > M_invD
 
matrixEpetraPtr_Type M_schurComplement
 
matrixEpetraPtr_Type M_schurComplementCoupling
 
const std::string M_label
 Label. More...
 
bool M_shapeDerivatives
 
Real M_fluidVelocity
 
Real M_fluid
 
Real M_structure
 
Real M_lambda
 
std::shared_ptr< VectorEpetra_TypeM_X_velocity
 Vectors needed for the applyInverse - input vectors associated to each part. More...
 
std::shared_ptr< VectorEpetra_TypeM_X_pressure
 
std::shared_ptr< VectorEpetra_TypeM_X_displacement
 
std::shared_ptr< VectorEpetra_TypeM_X_lambda
 
std::shared_ptr< VectorEpetra_TypeM_X_geometry
 
std::shared_ptr< VectorEpetra_TypeM_Y_velocity
 Vectors needed for the applyInverse - output vectors associated to each part. More...
 
std::shared_ptr< VectorEpetra_TypeM_Y_pressure
 
std::shared_ptr< VectorEpetra_TypeM_Y_displacement
 
std::shared_ptr< VectorEpetra_TypeM_Y_lambda
 
std::shared_ptr< VectorEpetra_TypeM_Y_geometry
 
matrixEpetraPtr_Type M_Fp
 PCD blocks. More...
 
matrixEpetraPtr_Type M_Mp
 
matrixEpetraPtr_Type M_Mu
 
bool M_subiterateFluidDirichlet
 
bool M_useStabilization
 
interpolationPtr_Type M_FluidToStructureInterpolant
 
interpolationPtr_Type M_StructureToFluidInterpolant
 
std::shared_ptr< MapEpetraM_lagrangeMap
 
bool M_nonconforming
 
FESpacePtr_Type M_velocityFESpace
 
std::shared_ptr< BCHandlerM_myBC
 
Real M_timeStep
 
Real M_gamma
 
Real M_beta
 
Real M_bdfCoef
 
bool M_useBDFStructure
 

Public Types

typedef LinearOperatorAlgebra super
 
typedef Epetra_CrsMatrix matrix_Type
 
typedef std::shared_ptr< matrix_TypematrixPtr_Type
 
typedef MatrixEpetra< RealmatrixEpetra_Type
 
typedef std::shared_ptr< matrixEpetra_TypematrixEpetraPtr_Type
 
typedef Epetra_Vector lumpedMatrix_Type
 
typedef std::shared_ptr< lumpedMatrix_TypelumpedMatrixPtr_Type
 
typedef super::comm_Type comm_Type
 
typedef super::commPtr_Type commPtr_Type
 
typedef std::shared_ptr< Teuchos::ParameterList > parameterListPtr_Type
 
typedef MapEpetra mapEpetra_Type
 
typedef std::shared_ptr< mapEpetra_TypemapEpetraPtr_Type
 
typedef VectorEpetra VectorEpetra_Type
 
typedef std::shared_ptr< VectorEpetra_TypeVectorEpetraPtr_Type
 
typedef std::shared_ptr< InterpolationinterpolationPtr_Type
 
typedef FESpace< RegionMesh< LinearTetra >, mapEpetra_TypeFESpace_Type
 
typedef std::shared_ptr< FESpace_TypeFESpacePtr_Type
 
typedef std::shared_ptr< BCHandlerBCHandlerPtr_Type
 

Constructors

 BlockJacobiPreconditioner ()
 Empty constructor. More...
 

Set Methods

SetUp

void setComm (const commPtr_Type &comm)
 set the communicator More...
 
int SetUseTranspose (bool UseTranspose)
 
void setDomainMap (const std::shared_ptr< BlockEpetra_Map > &domainMap)
 set the domain map More...
 
void setRangeMap (const std::shared_ptr< BlockEpetra_Map > &rangeMap)
 set the range map More...
 
int Apply (const vector_Type &, vector_Type &) const
 
int ApplyInverse (const vector_Type &X, vector_Type &Y) const
 Returns the High Order Yosida approximation of the inverse pressure Schur Complement applied to X. More...
 
double NormInf () const
 
const char * Label () const
 Return a character string describing the operator. More...
 
bool UseTranspose () const
 Return the current UseTranspose setting. More...
 
bool HasNormInf () const
 Return false. More...
 
const comm_TypeComm () const
 return a reference to the Epetra_Comm communicator associated with this operator More...
 
const map_TypeOperatorDomainMap () const
 Returns the Epetra_Map object associated with the domain of this operator. More...
 
const map_TypeOperatorRangeMap () const
 Returns the Epetra_Map object associated with the range of this operator. More...
 
void setStructureBlock (const matrixEpetraPtr_Type &S)
 Set the structure block. More...
 
void setGeometryBlock (const matrixEpetraPtr_Type &G)
 Set the geometry block. More...
 
void setFluidBlocks (const matrixEpetraPtr_Type &F, const matrixEpetraPtr_Type &Btranspose, const matrixEpetraPtr_Type &B)
 Set the fluid blocks. More...
 
void setFluidBlocks (const matrixEpetraPtr_Type &F, const matrixEpetraPtr_Type &Btranspose, const matrixEpetraPtr_Type &B, const matrixEpetraPtr_Type &D)
 Set the fluid blocks. More...
 
void setCouplingBlocks (const matrixEpetraPtr_Type &C1transpose, const matrixEpetraPtr_Type &C2transpose, const matrixEpetraPtr_Type &C2, const matrixEpetraPtr_Type &C1, const matrixEpetraPtr_Type &C3)
 Set the coupling blocks. More...
 
void setShapeDerivativesBlocks (const matrixEpetraPtr_Type &ShapeVelocity, const matrixEpetraPtr_Type &ShapePressure)
 Set the shape derivatives. More...
 
void updateApproximatedStructureMomentumOperator ()
 Update the approximation of the structure momentum. More...
 
void updateApproximatedGeometryOperator ()
 Update the approximation of the the geometry. More...
 
void updateApproximatedFluidOperator ()
 Update the approximation of the the geometry. More...
 
void setOptions (const Teuchos::ParameterList &solversOptions)
 Interface to set the parameters of each block. More...
 
void setMonolithicMap (const mapEpetraPtr_Type &monolithicMap)
 Set the monolithic map. More...
 
void setUseShapeDerivatives (const bool &useShapeDerivatives)
 Set the use of shape derivatives. More...
 
void setFluidPreconditioner (const std::string &type)
 Set the preconditioner type. More...
 
void setPCDBlocks (const matrixEpetraPtr_Type &Fp, const matrixEpetraPtr_Type &Mp, const matrixEpetraPtr_Type &Mu)
 Set the blocks needed by the PCD preconditioner. More...
 
const char * preconditionerTypeFluid () const
 
void setSubiterateFluidDirichlet (const bool &subiterateFluidDirichlet)
 
void setCouplingOperators_nonconforming (interpolationPtr_Type fluidToStructure, interpolationPtr_Type structureToFluid, mapEpetraPtr_Type lagrangeMap)
 Copy the pointer of the interpolation objects. More...
 
void setVelocityFESpace (const FESpacePtr_Type &fluid_vel_FESpace)
 Copy the pointer of the fluid velocity fespace. More...
 
void setBC (const BCHandlerPtr_Type &bc)
 Copy the pointer of the fluid velocity fespace. More...
 
void setTimeStep (Real dt)
 Copy the value of the timestep. More...
 
void setGamma (Real gamma)
 
void setBeta (Real beta)
 
void setBDFcoeff (Real coef)
 
void setStructureMomentumOptions (const parameterListPtr_Type &_oList)
 Set the list of the structure momentum. More...
 
void setGeometryOptions (const parameterListPtr_Type &_oList)
 Set the list of the geometry. More...
 
void setFluidMomentumOptions (const parameterListPtr_Type &_oList)
 Set the list of the fluid momentum. More...
 
void setSchurOptions (const parameterListPtr_Type &_oList)
 Set the list of the shur complement of the fluid. More...
 
void setPressureMassOptions (const parameterListPtr_Type &_oList)
 Set the list of the shur complement of the fluid. More...
 
std::shared_ptr< Operators::ApproximatedInvertibleRowMatrixM_approximatedStructureMomentumOperator
 
std::shared_ptr< Operators::ApproximatedInvertibleRowMatrixM_approximatedGeometryOperator
 
std::shared_ptr< Operators::ApproximatedInvertibleRowMatrixM_approximatedFluidMomentumOperator
 
std::shared_ptr< Operators::ApproximatedInvertibleRowMatrixM_approximatedSchurComplementOperator
 
std::shared_ptr< Operators::ApproximatedInvertibleRowMatrixM_approximatedSchurComplementCouplingOperator
 
parameterListPtr_Type M_structureMomentumOptions
 Parameters for the structure. More...
 
parameterListPtr_Type M_geometryOptions
 Parameters for the geometry. More...
 
parameterListPtr_Type M_fluidMomentumOptions
 Parameters for the fluid momentum. More...
 
parameterListPtr_Type M_schurOptions
 Parameters for the shur complent of the fluid. More...
 
parameterListPtr_Type M_schurCouplingOptions
 Parameters for the shur complent of the couplig. More...
 
parameterListPtr_Type M_pressureMassOptions
 Parameters for the pressure mass of the PCD. More...
 
matrixEpetraPtr_Type M_S
 Structure block. More...
 
matrixEpetraPtr_Type M_G
 Geometry block. More...
 
matrixEpetraPtr_Type M_F
 Fluid blocks. More...
 
matrixEpetraPtr_Type M_Btranspose
 
matrixEpetraPtr_Type M_B
 
matrixEpetraPtr_Type M_D
 
std::shared_ptr< Operators::NavierStokesPreconditionerOperatorM_FluidPrec
 
std::shared_ptr< Operators::InvertibleOperatorM_invOper
 
std::shared_ptr< Operators::NavierStokesOperatorM_oper
 
matrixEpetraPtr_Type M_C1transpose
 Coupling blocks. More...
 
matrixEpetraPtr_Type M_C2transpose
 
matrixEpetraPtr_Type M_C2
 
matrixEpetraPtr_Type M_C1
 
matrixEpetraPtr_Type M_C3
 
matrixEpetraPtr_Type M_shapeVelocity
 
matrixEpetraPtr_Type M_shapePressure
 

Additional Inherited Members

- Public Types inherited from LinearOperatorAlgebra
typedef Epetra_Comm comm_Type
 
typedef std::shared_ptr< comm_TypecommPtr_Type
 
typedef Epetra_Map map_Type
 
typedef std::shared_ptr< map_TypemapPtr_Type
 
typedef std::shared_ptr< const map_TypeconstMapPtr_Type
 
typedef Epetra_Operator operator_Type
 
typedef std::shared_ptr< operator_TypeoperatorPtr_Type
 
typedef Epetra_MultiVector vector_Type
 
typedef std::shared_ptr< vector_TypevectorPtr_Type
 

Detailed Description

Definition at line 34 of file BlockJacobiPreconditioner.hpp.

Member Typedef Documentation

◆ super

Definition at line 40 of file BlockJacobiPreconditioner.hpp.

◆ matrix_Type

typedef Epetra_CrsMatrix matrix_Type

Definition at line 41 of file BlockJacobiPreconditioner.hpp.

◆ matrixPtr_Type

typedef std::shared_ptr<matrix_Type> matrixPtr_Type

Definition at line 42 of file BlockJacobiPreconditioner.hpp.

◆ matrixEpetra_Type

Definition at line 43 of file BlockJacobiPreconditioner.hpp.

◆ matrixEpetraPtr_Type

typedef std::shared_ptr<matrixEpetra_Type> matrixEpetraPtr_Type

Definition at line 44 of file BlockJacobiPreconditioner.hpp.

◆ lumpedMatrix_Type

typedef Epetra_Vector lumpedMatrix_Type

Definition at line 45 of file BlockJacobiPreconditioner.hpp.

◆ lumpedMatrixPtr_Type

typedef std::shared_ptr<lumpedMatrix_Type> lumpedMatrixPtr_Type

Definition at line 46 of file BlockJacobiPreconditioner.hpp.

◆ comm_Type

Definition at line 47 of file BlockJacobiPreconditioner.hpp.

◆ commPtr_Type

◆ parameterListPtr_Type

typedef std::shared_ptr<Teuchos::ParameterList> parameterListPtr_Type

Definition at line 49 of file BlockJacobiPreconditioner.hpp.

◆ mapEpetra_Type

Definition at line 50 of file BlockJacobiPreconditioner.hpp.

◆ mapEpetraPtr_Type

typedef std::shared_ptr<mapEpetra_Type> mapEpetraPtr_Type

Definition at line 51 of file BlockJacobiPreconditioner.hpp.

◆ VectorEpetra_Type

Definition at line 52 of file BlockJacobiPreconditioner.hpp.

◆ VectorEpetraPtr_Type

typedef std::shared_ptr<VectorEpetra_Type> VectorEpetraPtr_Type

Definition at line 53 of file BlockJacobiPreconditioner.hpp.

◆ interpolationPtr_Type

typedef std::shared_ptr<Interpolation> interpolationPtr_Type

Definition at line 54 of file BlockJacobiPreconditioner.hpp.

◆ FESpace_Type

◆ FESpacePtr_Type

typedef std::shared_ptr<FESpace_Type> FESpacePtr_Type

Definition at line 57 of file BlockJacobiPreconditioner.hpp.

◆ BCHandlerPtr_Type

typedef std::shared_ptr<BCHandler> BCHandlerPtr_Type

Definition at line 59 of file BlockJacobiPreconditioner.hpp.

Constructor & Destructor Documentation

◆ BlockJacobiPreconditioner()

Empty constructor.

Definition at line 23 of file BlockJacobiPreconditioner.cpp.

+ Here is the caller graph for this function:

◆ ~BlockJacobiPreconditioner()

Definition at line 40 of file BlockJacobiPreconditioner.cpp.

Member Function Documentation

◆ setComm()

void setComm ( const commPtr_Type comm)
inline

set the communicator

Definition at line 80 of file BlockJacobiPreconditioner.hpp.

◆ SetUseTranspose()

int SetUseTranspose ( bool  UseTranspose)
inlinevirtual
Warning
Transpose of this operator is not supported

Implements LinearOperatorAlgebra.

Definition at line 82 of file BlockJacobiPreconditioner.hpp.

◆ setDomainMap()

void setDomainMap ( const std::shared_ptr< BlockEpetra_Map > &  domainMap)
inline

set the domain map

Definition at line 84 of file BlockJacobiPreconditioner.hpp.

◆ setRangeMap()

void setRangeMap ( const std::shared_ptr< BlockEpetra_Map > &  rangeMap)
inline

set the range map

Definition at line 86 of file BlockJacobiPreconditioner.hpp.

◆ Apply()

int Apply ( const vector_Type ,
vector_Type  
) const
inlinevirtual
Warning
No method Apply defined for this operator. It return an error code.

Implements LinearOperatorAlgebra.

Definition at line 93 of file BlockJacobiPreconditioner.hpp.

◆ ApplyInverse()

int ApplyInverse ( const vector_Type X,
vector_Type Y 
) const
inlinevirtual

Returns the High Order Yosida approximation of the inverse pressure Schur Complement applied to X.

Input vector

Extract each component of the input vector

Implements LinearOperatorAlgebra.

Definition at line 341 of file BlockJacobiPreconditioner.cpp.

◆ NormInf()

double NormInf ( ) const
inlinevirtual
Warning
Infinity norm not defined for this operator

Implements LinearOperatorAlgebra.

Definition at line 97 of file BlockJacobiPreconditioner.hpp.

◆ Label()

const char* Label ( ) const
inlinevirtual

Return a character string describing the operator.

Implements LinearOperatorAlgebra.

Definition at line 103 of file BlockJacobiPreconditioner.hpp.

◆ UseTranspose()

bool UseTranspose ( ) const
inlinevirtual

Return the current UseTranspose setting.

Warning
Not Supported Yet.

Implements LinearOperatorAlgebra.

Definition at line 105 of file BlockJacobiPreconditioner.hpp.

◆ HasNormInf()

bool HasNormInf ( ) const
inlinevirtual

Return false.

Implements LinearOperatorAlgebra.

Definition at line 107 of file BlockJacobiPreconditioner.hpp.

◆ Comm()

const comm_Type& Comm ( ) const
inlinevirtual

return a reference to the Epetra_Comm communicator associated with this operator

Implements LinearOperatorAlgebra.

Definition at line 109 of file BlockJacobiPreconditioner.hpp.

◆ OperatorDomainMap()

const map_Type& OperatorDomainMap ( ) const
inlinevirtual

Returns the Epetra_Map object associated with the domain of this operator.

Implements LinearOperatorAlgebra.

Definition at line 111 of file BlockJacobiPreconditioner.hpp.

◆ OperatorRangeMap()

const map_Type& OperatorRangeMap ( ) const
inlinevirtual

Returns the Epetra_Map object associated with the range of this operator.

Implements LinearOperatorAlgebra.

Definition at line 113 of file BlockJacobiPreconditioner.hpp.

◆ setStructureBlock()

void setStructureBlock ( const matrixEpetraPtr_Type S)

Set the structure block.

Definition at line 65 of file BlockJacobiPreconditioner.cpp.

◆ setGeometryBlock()

void setGeometryBlock ( const matrixEpetraPtr_Type G)

Set the geometry block.

Definition at line 74 of file BlockJacobiPreconditioner.cpp.

◆ setFluidBlocks() [1/2]

void setFluidBlocks ( const matrixEpetraPtr_Type F,
const matrixEpetraPtr_Type Btranspose,
const matrixEpetraPtr_Type B 
)

Set the fluid blocks.

Definition at line 82 of file BlockJacobiPreconditioner.cpp.

◆ setFluidBlocks() [2/2]

void setFluidBlocks ( const matrixEpetraPtr_Type F,
const matrixEpetraPtr_Type Btranspose,
const matrixEpetraPtr_Type B,
const matrixEpetraPtr_Type D 
)

Set the fluid blocks.

Definition at line 99 of file BlockJacobiPreconditioner.cpp.

◆ setCouplingBlocks()

void setCouplingBlocks ( const matrixEpetraPtr_Type C1transpose,
const matrixEpetraPtr_Type C2transpose,
const matrixEpetraPtr_Type C2,
const matrixEpetraPtr_Type C1,
const matrixEpetraPtr_Type C3 
)

Set the coupling blocks.

Definition at line 118 of file BlockJacobiPreconditioner.cpp.

◆ setShapeDerivativesBlocks()

void setShapeDerivativesBlocks ( const matrixEpetraPtr_Type ShapeVelocity,
const matrixEpetraPtr_Type ShapePressure 
)

Set the shape derivatives.

Definition at line 162 of file BlockJacobiPreconditioner.cpp.

◆ updateApproximatedStructureMomentumOperator()

void updateApproximatedStructureMomentumOperator ( )

Update the approximation of the structure momentum.

Definition at line 247 of file BlockJacobiPreconditioner.cpp.

◆ updateApproximatedGeometryOperator()

void updateApproximatedGeometryOperator ( )

Update the approximation of the the geometry.

Definition at line 256 of file BlockJacobiPreconditioner.cpp.

◆ updateApproximatedFluidOperator()

void updateApproximatedFluidOperator ( )

Update the approximation of the the geometry.

Definition at line 264 of file BlockJacobiPreconditioner.cpp.

◆ showMe()

void showMe ( )

Show information about the class.

Definition at line 46 of file BlockJacobiPreconditioner.cpp.

◆ setOptions()

void setOptions ( const Teuchos::ParameterList &  solversOptions)

Interface to set the parameters of each block.

Definition at line 180 of file BlockJacobiPreconditioner.cpp.

◆ setMonolithicMap()

void setMonolithicMap ( const mapEpetraPtr_Type monolithicMap)

Set the monolithic map.

Definition at line 59 of file BlockJacobiPreconditioner.cpp.

◆ setUseShapeDerivatives()

void setUseShapeDerivatives ( const bool &  useShapeDerivatives)

Set the use of shape derivatives.

Definition at line 150 of file BlockJacobiPreconditioner.cpp.

◆ setFluidPreconditioner()

void setFluidPreconditioner ( const std::string &  type)

Set the preconditioner type.

Definition at line 53 of file BlockJacobiPreconditioner.cpp.

◆ setPCDBlocks()

void setPCDBlocks ( const matrixEpetraPtr_Type Fp,
const matrixEpetraPtr_Type Mp,
const matrixEpetraPtr_Type Mu 
)

Set the blocks needed by the PCD preconditioner.

Definition at line 170 of file BlockJacobiPreconditioner.cpp.

◆ preconditionerTypeFluid()

const char* preconditionerTypeFluid ( ) const
inline

Definition at line 184 of file BlockJacobiPreconditioner.hpp.

◆ setSubiterateFluidDirichlet()

void setSubiterateFluidDirichlet ( const bool &  subiterateFluidDirichlet)

Definition at line 156 of file BlockJacobiPreconditioner.cpp.

◆ setCouplingOperators_nonconforming()

void setCouplingOperators_nonconforming ( interpolationPtr_Type  fluidToStructure,
interpolationPtr_Type  structureToFluid,
mapEpetraPtr_Type  lagrangeMap 
)

Copy the pointer of the interpolation objects.

Definition at line 135 of file BlockJacobiPreconditioner.cpp.

◆ setVelocityFESpace()

void setVelocityFESpace ( const FESpacePtr_Type fluid_vel_FESpace)
inline

Copy the pointer of the fluid velocity fespace.

Definition at line 192 of file BlockJacobiPreconditioner.hpp.

◆ setBC()

void setBC ( const BCHandlerPtr_Type bc)
inline

Copy the pointer of the fluid velocity fespace.

Definition at line 195 of file BlockJacobiPreconditioner.hpp.

◆ setTimeStep()

void setTimeStep ( Real  dt)
inline

Copy the value of the timestep.

Definition at line 198 of file BlockJacobiPreconditioner.hpp.

◆ setGamma()

void setGamma ( Real  gamma)
inline

Definition at line 200 of file BlockJacobiPreconditioner.hpp.

◆ setBeta()

void setBeta ( Real  beta)
inline

Definition at line 202 of file BlockJacobiPreconditioner.hpp.

◆ setBDFcoeff()

void setBDFcoeff ( Real  coef)
inline

Definition at line 204 of file BlockJacobiPreconditioner.hpp.

◆ setStructureMomentumOptions()

void setStructureMomentumOptions ( const parameterListPtr_Type _oList)
private

Set the list of the structure momentum.

Definition at line 209 of file BlockJacobiPreconditioner.cpp.

◆ setGeometryOptions()

void setGeometryOptions ( const parameterListPtr_Type _oList)
private

Set the list of the geometry.

Definition at line 216 of file BlockJacobiPreconditioner.cpp.

◆ setFluidMomentumOptions()

void setFluidMomentumOptions ( const parameterListPtr_Type _oList)
private

Set the list of the fluid momentum.

Definition at line 223 of file BlockJacobiPreconditioner.cpp.

◆ setSchurOptions()

void setSchurOptions ( const parameterListPtr_Type _oList)
private

Set the list of the shur complement of the fluid.

Definition at line 231 of file BlockJacobiPreconditioner.cpp.

◆ setPressureMassOptions()

void setPressureMassOptions ( const parameterListPtr_Type _oList)
private

Set the list of the shur complement of the fluid.

Definition at line 239 of file BlockJacobiPreconditioner.cpp.

◆ setMaps()

void setMaps ( )
private

Create the domain and the range maps.

Field Documentation

◆ M_operatorDomainMap

std::shared_ptr<BlockEpetra_Map> M_operatorDomainMap
private

Definition at line 233 of file BlockJacobiPreconditioner.hpp.

◆ M_operatorRangeMap

std::shared_ptr<BlockEpetra_Map> M_operatorRangeMap
private

Range Map.

Definition at line 235 of file BlockJacobiPreconditioner.hpp.

◆ M_comm

commPtr_Type M_comm
private

Communicator.

Definition at line 238 of file BlockJacobiPreconditioner.hpp.

◆ M_useTranspose

bool M_useTranspose
private

Definition at line 240 of file BlockJacobiPreconditioner.hpp.

◆ M_approximatedStructureMomentumOperator

std::shared_ptr<Operators::ApproximatedInvertibleRowMatrix> M_approximatedStructureMomentumOperator
private

Definition at line 244 of file BlockJacobiPreconditioner.hpp.

◆ M_approximatedGeometryOperator

std::shared_ptr<Operators::ApproximatedInvertibleRowMatrix> M_approximatedGeometryOperator
private

Definition at line 246 of file BlockJacobiPreconditioner.hpp.

◆ M_approximatedFluidMomentumOperator

std::shared_ptr<Operators::ApproximatedInvertibleRowMatrix> M_approximatedFluidMomentumOperator
private

Definition at line 248 of file BlockJacobiPreconditioner.hpp.

◆ M_approximatedSchurComplementOperator

std::shared_ptr<Operators::ApproximatedInvertibleRowMatrix> M_approximatedSchurComplementOperator
private

Definition at line 250 of file BlockJacobiPreconditioner.hpp.

◆ M_approximatedSchurComplementCouplingOperator

std::shared_ptr<Operators::ApproximatedInvertibleRowMatrix> M_approximatedSchurComplementCouplingOperator
private

Definition at line 252 of file BlockJacobiPreconditioner.hpp.

◆ M_structureMomentumOptions

parameterListPtr_Type M_structureMomentumOptions
private

Parameters for the structure.

Definition at line 259 of file BlockJacobiPreconditioner.hpp.

◆ M_geometryOptions

parameterListPtr_Type M_geometryOptions
private

Parameters for the geometry.

Definition at line 262 of file BlockJacobiPreconditioner.hpp.

◆ M_fluidMomentumOptions

parameterListPtr_Type M_fluidMomentumOptions
private

Parameters for the fluid momentum.

Definition at line 265 of file BlockJacobiPreconditioner.hpp.

◆ M_schurOptions

parameterListPtr_Type M_schurOptions
private

Parameters for the shur complent of the fluid.

Definition at line 268 of file BlockJacobiPreconditioner.hpp.

◆ M_schurCouplingOptions

parameterListPtr_Type M_schurCouplingOptions
private

Parameters for the shur complent of the couplig.

Definition at line 271 of file BlockJacobiPreconditioner.hpp.

◆ M_pressureMassOptions

parameterListPtr_Type M_pressureMassOptions
private

Parameters for the pressure mass of the PCD.

Definition at line 274 of file BlockJacobiPreconditioner.hpp.

◆ M_S

matrixEpetraPtr_Type M_S
private

Structure block.

Definition at line 281 of file BlockJacobiPreconditioner.hpp.

◆ M_G

matrixEpetraPtr_Type M_G
private

Geometry block.

Definition at line 284 of file BlockJacobiPreconditioner.hpp.

◆ M_F

matrixEpetraPtr_Type M_F
private

Fluid blocks.

Definition at line 287 of file BlockJacobiPreconditioner.hpp.

◆ M_Btranspose

matrixEpetraPtr_Type M_Btranspose
private

Definition at line 288 of file BlockJacobiPreconditioner.hpp.

◆ M_B

matrixEpetraPtr_Type M_B
private

Definition at line 289 of file BlockJacobiPreconditioner.hpp.

◆ M_D

matrixEpetraPtr_Type M_D
private

Definition at line 290 of file BlockJacobiPreconditioner.hpp.

◆ M_FluidPrec

std::shared_ptr<Operators::NavierStokesPreconditionerOperator> M_FluidPrec
private

Definition at line 292 of file BlockJacobiPreconditioner.hpp.

◆ M_invOper

std::shared_ptr<Operators::InvertibleOperator> M_invOper
private

Definition at line 294 of file BlockJacobiPreconditioner.hpp.

◆ M_oper

std::shared_ptr<Operators::NavierStokesOperator> M_oper
private

Definition at line 295 of file BlockJacobiPreconditioner.hpp.

◆ M_C1transpose

matrixEpetraPtr_Type M_C1transpose
private

Coupling blocks.

Definition at line 298 of file BlockJacobiPreconditioner.hpp.

◆ M_C2transpose

matrixEpetraPtr_Type M_C2transpose
private

Definition at line 299 of file BlockJacobiPreconditioner.hpp.

◆ M_C2

matrixEpetraPtr_Type M_C2
private

Definition at line 300 of file BlockJacobiPreconditioner.hpp.

◆ M_C1

matrixEpetraPtr_Type M_C1
private

Definition at line 301 of file BlockJacobiPreconditioner.hpp.

◆ M_C3

matrixEpetraPtr_Type M_C3
private

Definition at line 302 of file BlockJacobiPreconditioner.hpp.

◆ M_shapeVelocity

matrixEpetraPtr_Type M_shapeVelocity
private

Definition at line 303 of file BlockJacobiPreconditioner.hpp.

◆ M_shapePressure

matrixEpetraPtr_Type M_shapePressure
private

Definition at line 304 of file BlockJacobiPreconditioner.hpp.

◆ M_monolithicMap

mapEpetraPtr_Type M_monolithicMap
private

Definition at line 307 of file BlockJacobiPreconditioner.hpp.

◆ M_invD

std::shared_ptr<Epetra_Vector> M_invD
private

Definition at line 309 of file BlockJacobiPreconditioner.hpp.

◆ M_schurComplement

matrixEpetraPtr_Type M_schurComplement
private

Definition at line 311 of file BlockJacobiPreconditioner.hpp.

◆ M_schurComplementCoupling

matrixEpetraPtr_Type M_schurComplementCoupling
private

Definition at line 312 of file BlockJacobiPreconditioner.hpp.

◆ M_label

const std::string M_label
private

Label.

Definition at line 315 of file BlockJacobiPreconditioner.hpp.

◆ M_shapeDerivatives

bool M_shapeDerivatives
private

Definition at line 317 of file BlockJacobiPreconditioner.hpp.

◆ M_fluidVelocity

Real M_fluidVelocity
private

Definition at line 320 of file BlockJacobiPreconditioner.hpp.

◆ M_fluid

Real M_fluid
private

Definition at line 321 of file BlockJacobiPreconditioner.hpp.

◆ M_structure

Real M_structure
private

Definition at line 322 of file BlockJacobiPreconditioner.hpp.

◆ M_lambda

Real M_lambda
private

Definition at line 323 of file BlockJacobiPreconditioner.hpp.

◆ M_X_velocity

std::shared_ptr<VectorEpetra_Type > M_X_velocity
private

Vectors needed for the applyInverse - input vectors associated to each part.

Definition at line 326 of file BlockJacobiPreconditioner.hpp.

◆ M_X_pressure

std::shared_ptr<VectorEpetra_Type > M_X_pressure
private

Definition at line 327 of file BlockJacobiPreconditioner.hpp.

◆ M_X_displacement

std::shared_ptr<VectorEpetra_Type > M_X_displacement
private

Definition at line 328 of file BlockJacobiPreconditioner.hpp.

◆ M_X_lambda

std::shared_ptr<VectorEpetra_Type > M_X_lambda
private

Definition at line 329 of file BlockJacobiPreconditioner.hpp.

◆ M_X_geometry

std::shared_ptr<VectorEpetra_Type > M_X_geometry
private

Definition at line 330 of file BlockJacobiPreconditioner.hpp.

◆ M_Y_velocity

std::shared_ptr<VectorEpetra_Type > M_Y_velocity
private

Vectors needed for the applyInverse - output vectors associated to each part.

Definition at line 333 of file BlockJacobiPreconditioner.hpp.

◆ M_Y_pressure

std::shared_ptr<VectorEpetra_Type > M_Y_pressure
private

Definition at line 334 of file BlockJacobiPreconditioner.hpp.

◆ M_Y_displacement

std::shared_ptr<VectorEpetra_Type > M_Y_displacement
private

Definition at line 335 of file BlockJacobiPreconditioner.hpp.

◆ M_Y_lambda

std::shared_ptr<VectorEpetra_Type > M_Y_lambda
private

Definition at line 336 of file BlockJacobiPreconditioner.hpp.

◆ M_Y_geometry

std::shared_ptr<VectorEpetra_Type > M_Y_geometry
private

Definition at line 337 of file BlockJacobiPreconditioner.hpp.

◆ M_Fp

matrixEpetraPtr_Type M_Fp
private

PCD blocks.

Definition at line 340 of file BlockJacobiPreconditioner.hpp.

◆ M_Mp

matrixEpetraPtr_Type M_Mp
private

Definition at line 341 of file BlockJacobiPreconditioner.hpp.

◆ M_Mu

matrixEpetraPtr_Type M_Mu
private

Definition at line 342 of file BlockJacobiPreconditioner.hpp.

◆ M_subiterateFluidDirichlet

bool M_subiterateFluidDirichlet
private

Definition at line 344 of file BlockJacobiPreconditioner.hpp.

◆ M_useStabilization

bool M_useStabilization
private

Definition at line 346 of file BlockJacobiPreconditioner.hpp.

◆ M_FluidToStructureInterpolant

interpolationPtr_Type M_FluidToStructureInterpolant
private

Definition at line 348 of file BlockJacobiPreconditioner.hpp.

◆ M_StructureToFluidInterpolant

interpolationPtr_Type M_StructureToFluidInterpolant
private

Definition at line 349 of file BlockJacobiPreconditioner.hpp.

◆ M_lagrangeMap

std::shared_ptr<MapEpetra> M_lagrangeMap
private

Definition at line 350 of file BlockJacobiPreconditioner.hpp.

◆ M_nonconforming

bool M_nonconforming
private

Definition at line 352 of file BlockJacobiPreconditioner.hpp.

◆ M_velocityFESpace

FESpacePtr_Type M_velocityFESpace
private

Definition at line 354 of file BlockJacobiPreconditioner.hpp.

◆ M_myBC

std::shared_ptr<BCHandler> M_myBC
private

Definition at line 355 of file BlockJacobiPreconditioner.hpp.

◆ M_timeStep

Real M_timeStep
private

Definition at line 357 of file BlockJacobiPreconditioner.hpp.

◆ M_gamma

Real M_gamma
private

Definition at line 359 of file BlockJacobiPreconditioner.hpp.

◆ M_beta

Real M_beta
private

Definition at line 361 of file BlockJacobiPreconditioner.hpp.

◆ M_bdfCoef

Real M_bdfCoef
private

Definition at line 363 of file BlockJacobiPreconditioner.hpp.

◆ M_useBDFStructure

bool M_useBDFStructure
private

Definition at line 364 of file BlockJacobiPreconditioner.hpp.


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