LifeV
|
#include <aSIMPLEOperator.hpp>
Private Member Functions | |
void | setMaps () |
Create the domain and the range maps. More... | |
void | buildShurComplement () |
create the matrix B*diag(F)^-1*Btranspose More... | |
Public Types | |
typedef Epetra_MultiVector | vector_Type |
typedef std::shared_ptr< vector_Type > | vectorPtr_Type |
typedef Epetra_Map | map_Type |
typedef std::shared_ptr< map_Type > | mapPtr_Type |
typedef LinearOperatorAlgebra | super |
typedef Epetra_CrsMatrix | matrix_Type |
typedef std::shared_ptr< matrix_Type > | matrixPtr_Type |
typedef MatrixEpetra< Real > | matrixEpetra_Type |
typedef std::shared_ptr< matrixEpetra_Type > | matrixEpetraPtr_Type |
typedef Epetra_Vector | lumpedMatrix_Type |
typedef std::shared_ptr< lumpedMatrix_Type > | lumpedMatrixPtr_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_Type > | mapEpetraPtr_Type |
typedef VectorEpetra | VectorEpetra_Type |
typedef std::shared_ptr< VectorEpetra_Type > | VectorEpetraPtr_Type |
Constructors and Destructors | |
aSIMPLEOperator () | |
Empty constructor. More... | |
virtual | ~aSIMPLEOperator () |
Destructor. More... | |
SetUp | |
void | setUp (const matrixEpetraPtr_Type &F, const matrixEpetraPtr_Type &B, const matrixEpetraPtr_Type &Btranspose) |
SetUp - case without stabilization. More... | |
void | setUp (const matrixEpetraPtr_Type &F, const matrixEpetraPtr_Type &B, const matrixEpetraPtr_Type &Btranspose, const matrixEpetraPtr_Type &D) |
SetUp - case with stabilization. More... | |
Setters | |
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... | |
void | setMomentumOptions (const parameterListPtr_Type &_oList) |
Set the momentum preconditioner options. More... | |
void | setSchurOptions (const parameterListPtr_Type &_oList) |
Set the Schur Complement preconditioner options. More... | |
Methods | |
int | Apply (const vector_Type &, vector_Type &) const |
int | ApplyInverse (VectorEpetra_Type const &X_velocity, VectorEpetra_Type const &X_pressure, VectorEpetra_Type &Y_velocity, VectorEpetra_Type &Y_pressure) const |
Returns the High Order Yosida approximation of the inverse pressure Schur Complement applied to (Xu, Xp). More... | |
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 |
void | updateApproximatedMomentumOperator () |
Updates the momentum preconditioner operator. More... | |
void | updateApproximatedSchurComplementOperator () |
Updates the Schur Complement preconditioner operator. More... | |
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_Type & | Comm () const |
return a reference to the Epetra_Comm communicator associated with this operator More... | |
const map_Type & | OperatorDomainMap () const |
Returns the Epetra_Map object associated with the domain of this operator. More... | |
const map_Type & | OperatorRangeMap () const |
Returns the Epetra_Map object associated with the range of this operator. More... | |
Getters | |
void | showMe () |
Show information about the class. More... | |
void | setOptions (const Teuchos::ParameterList &solversOptions) |
Return the list of options being used. More... | |
matrixEpetraPtr_Type const & | F () const |
Return the block(0,0) More... | |
matrixEpetraPtr_Type const & | B () const |
Return the block(0,1) More... | |
matrixEpetraPtr_Type const & | Btranspose () const |
Return the block(1,0) More... | |
Definition at line 62 of file aSIMPLEOperator.hpp.
typedef Epetra_MultiVector vector_Type |
Definition at line 68 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<vector_Type> vectorPtr_Type |
Definition at line 69 of file aSIMPLEOperator.hpp.
typedef Epetra_Map map_Type |
Definition at line 70 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<map_Type> mapPtr_Type |
Definition at line 71 of file aSIMPLEOperator.hpp.
typedef LinearOperatorAlgebra super |
Definition at line 72 of file aSIMPLEOperator.hpp.
typedef Epetra_CrsMatrix matrix_Type |
Definition at line 73 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<matrix_Type> matrixPtr_Type |
Definition at line 74 of file aSIMPLEOperator.hpp.
typedef MatrixEpetra<Real> matrixEpetra_Type |
Definition at line 75 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<matrixEpetra_Type> matrixEpetraPtr_Type |
Definition at line 76 of file aSIMPLEOperator.hpp.
typedef Epetra_Vector lumpedMatrix_Type |
Definition at line 77 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<lumpedMatrix_Type> lumpedMatrixPtr_Type |
Definition at line 78 of file aSIMPLEOperator.hpp.
typedef super::comm_Type comm_Type |
Definition at line 79 of file aSIMPLEOperator.hpp.
typedef super::commPtr_Type commPtr_Type |
Definition at line 80 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<Teuchos::ParameterList> parameterListPtr_Type |
Definition at line 81 of file aSIMPLEOperator.hpp.
typedef MapEpetra mapEpetra_Type |
Definition at line 82 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<mapEpetra_Type> mapEpetraPtr_Type |
Definition at line 83 of file aSIMPLEOperator.hpp.
typedef VectorEpetra VectorEpetra_Type |
Definition at line 84 of file aSIMPLEOperator.hpp.
typedef std::shared_ptr<VectorEpetra_Type> VectorEpetraPtr_Type |
Definition at line 85 of file aSIMPLEOperator.hpp.
aSIMPLEOperator | ( | ) |
Empty constructor.
Definition at line 18 of file aSIMPLEOperator.cpp.
|
virtual |
Destructor.
Definition at line 28 of file aSIMPLEOperator.cpp.
|
virtual |
SetUp - case without stabilization.
F | block(0,0) of NS matrix |
B | block(1,0) of NS matrix |
Btranspose | block(0,1) of NS matrix |
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 40 of file aSIMPLEOperator.cpp.
|
virtual |
SetUp - case with stabilization.
F | block(0,0) of NS matrix |
B | block(1,0) of NS matrix |
Btranspose | block(0,1) of NS matrix |
D | block(1,1) of NS matrix |
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 61 of file aSIMPLEOperator.cpp.
|
inlinevirtual |
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 129 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
set the domain map
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 132 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
set the range map
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 135 of file aSIMPLEOperator.hpp.
|
virtual |
Set the momentum preconditioner options.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 96 of file aSIMPLEOperator.cpp.
|
virtual |
Set the Schur Complement preconditioner options.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 103 of file aSIMPLEOperator.cpp.
|
inlinevirtual |
Apply
defined for this operator. It return an error code. Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 150 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
Returns the High Order Yosida approximation of the inverse pressure Schur Complement applied to (Xu, Xp).
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 157 of file aSIMPLEOperator.cpp.
|
virtual |
Returns the High Order Yosida approximation of the inverse pressure Schur Complement applied to X
.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 173 of file aSIMPLEOperator.cpp.
|
inlinevirtual |
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 162 of file aSIMPLEOperator.hpp.
|
virtual |
Updates the momentum preconditioner operator.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 109 of file aSIMPLEOperator.cpp.
|
virtual |
Updates the Schur Complement preconditioner operator.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 117 of file aSIMPLEOperator.cpp.
|
inlinevirtual |
Return a character string describing the operator.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 175 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
Return the current UseTranspose setting.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 177 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
Return false.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 179 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
return a reference to the Epetra_Comm communicator associated with this operator
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 181 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
Returns the Epetra_Map object associated with the domain of this operator.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 183 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
Returns the Epetra_Map object associated with the range of this operator.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 185 of file aSIMPLEOperator.hpp.
void showMe | ( | ) |
Show information about the class.
Definition at line 34 of file aSIMPLEOperator.cpp.
|
virtual |
Return the list of options being used.
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 85 of file aSIMPLEOperator.cpp.
|
inlinevirtual |
Return the block(0,0)
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 198 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
Return the block(0,1)
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 201 of file aSIMPLEOperator.hpp.
|
inlinevirtual |
Return the block(1,0)
Reimplemented from NavierStokesPreconditionerOperator.
Definition at line 204 of file aSIMPLEOperator.hpp.
|
private |
Create the domain and the range maps.
|
private |
create the matrix B*diag(F)^-1*Btranspose
Definition at line 125 of file aSIMPLEOperator.cpp.
|
private |
Definition at line 216 of file aSIMPLEOperator.hpp.
|
private |
Range Map.
Definition at line 218 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 220 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 222 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 224 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 226 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 228 of file aSIMPLEOperator.hpp.
|
private |
Communicator.
Definition at line 231 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 233 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 235 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 237 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 239 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 241 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 243 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 245 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 247 of file aSIMPLEOperator.hpp.
|
private |
Label.
Definition at line 250 of file aSIMPLEOperator.hpp.
|
private |
Vectors needed for the apply inverse.
Definition at line 253 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 255 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 256 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 257 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 258 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 260 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 261 of file aSIMPLEOperator.hpp.
|
private |
Definition at line 263 of file aSIMPLEOperator.hpp.