37 #ifndef PRECONDITIONERSIMPLE_HPP 38 #define PRECONDITIONERSIMPLE_HPP 1
42 #include <boost/shared_ptr.hpp> 44 #include <Teuchos_ParameterList.hpp> 46 #include <lifev/core/filter/GetPot.hpp> 47 #include <lifev/core/array/MatrixEpetra.hpp> 48 #include <lifev/core/array/VectorEpetra.hpp> 49 #include <lifev/core/algorithm/PreconditionerComposition.hpp> 50 #include <lifev/core/array/MatrixEpetraStructured.hpp> 51 #include <lifev/core/solver/ADRAssembler.hpp> 52 #include <lifev/core/fem/FESpace.hpp> 53 #include <lifev/core/mesh/RegionMesh.hpp> 99 PreconditionerSIMPLE ( std::shared_ptr<Epetra_Comm> comm = std::shared_ptr<Epetra_Comm> (
new Epetra_SerialComm ) );
113 void createParametersList (
list_Type& list,
115 const std::string& section,
116 const std::string& subsection =
"SIMPLE" );
141 void setDataFromGetPot (
const GetPot& dataFile,
142 const std::string& section );
195 return new PreconditionerSIMPLE();
MatrixEpetraStructured< Real > matrixBlock_Type
VectorEpetra - The Epetra Vector format Wrapper.
std::shared_ptr< FESpace< mesh_Type, map_Type > > FESpacePtr_Type
FESpacePtr_Type M_uFESpace
std::shared_ptr< super_Type > superPtr_Type
PreconditionerSIMPLE(std::shared_ptr< Epetra_Comm > comm=std::shared_ptr< Epetra_Comm >(new Epetra_MpiComm(MPI_COMM_WORLD)))
default constructor
PreconditionerSIMPLE(const PreconditionerSIMPLE &P)
Teuchos::ParameterList list_Type
Preconditioner * createSIMPLE()
void importFromHDF5(std::string const &fileName, std::string const &matrixName="matrix")
Read a matrix from a HDF5 (.h5) file.
std::string M_fluidDataSection
std::shared_ptr< vector_Type > vectorPtr_Type
void updateInverseJacobian(const UInt &iQuadPt)
static const LifeV::UInt elm_nodes_num[]
std::shared_ptr< preconditioner_Type > preconditionerPtr_Type
RegionMesh< LinearTetra > mesh_Type
PreconditionerComposition(std::shared_ptr< Epetra_Comm > comm=std::shared_ptr< Epetra_Comm >(new Epetra_MpiComm(MPI_COMM_WORLD)))
Constructor.
MatrixEpetraStructuredView< Real > matrixBlockView_Type
double condest()
Return an estimation of the conditionement number of the preconditioner.
Epetra_Import const & importer()
Getter for the Epetra_Import.
MatrixEpetra< Real > matrix_Type
int buildPreconditioner(matrixPtr_Type &A)
Build the preconditioner.
Preconditioner super_Type
int numBlocksRows() const
FESpacePtr_Type M_pFESpace
std::string M_schurDataSection
MatrixEpetraStructuredView - class representing a block in a MatrixEpetraStructured.
double Real
Generic real data.
Preconditioner - Abstract preconditioner class.
PreconditionerSIMPLE(const std::shared_ptr< PreconditionerSIMPLE > &)
void setFESpace(FESpacePtr_Type uFESpace, FESpacePtr_Type pFESpace)
Setter for the FESpace.
MatrixEpetraStructured - class of block matrix.
int numBlocksColumns() const
virtual void setParameters(Teuchos::ParameterList &list)
Method to setup the solver using Teuchos::ParameterList.
ComposedOperator< Preconditioner > preconditioner_Type
void setDampingFactor(const Real &dampingFactor)
Setter for the damping factor.
std::shared_ptr< matrix_Type > matrixPtr_Type
virtual ~PreconditionerSIMPLE()
constructor from matrix A.
static bool registerSIMPLE