36 #ifndef _CONFINEDOPERATOR_HPP_ 37 #define _CONFINEDOPERATOR_HPP_ 39 #include <Epetra_Comm.h> 40 #include <Epetra_MpiComm.h> 41 #include <Epetra_Map.h> 42 #include <Epetra_MultiVector.h> 43 #include <Epetra_Operator.h> 45 #include <lifev/core/array/VectorBlockStructure.hpp> 46 #include <lifev/core/array/MapEpetra.hpp> 47 #include <lifev/core/operator
/LinearOperator.hpp> 78 ConfinedOperator ( std::shared_ptr<Epetra_Comm> comm = std::shared_ptr<Epetra_Comm> (
new Epetra_SerialComm ) );
117 virtual const char*
Label()
const;
std::shared_ptr< Epetra_Comm > M_comm
Abstract class which defines the interface of a Linear Operator.
void setBlockStructure(const blockStructure_Type &blockStructure)
std::shared_ptr< map_Type > M_map
blockStructure_Type M_blockStructure
Epetra_MultiVector vector_Type
double NormInf() const
Returns the infinity norm of the global matrix.
VectorBlockStructure - class representing the structure of a vector.
virtual const map_Type & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
void updateInverseJacobian(const UInt &iQuadPt)
virtual bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
VectorBlockStructure blockStructure_Type
void setOperator(operatorPtr_Type oper)
Epetra_Import const & importer()
Getter for the Epetra_Import.
std::shared_ptr< operator_Type > operatorPtr_Type
void setFullMap(const MapEpetra &map)
Epetra_Operator operator_Type
void setBlockIndex(UInt index)
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
virtual const comm_Type & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
virtual const map_Type & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
virtual const char * Label() const
Returns a character string describing the operator.
ConfinedOperator(std::shared_ptr< Epetra_Comm > comm=std::shared_ptr< Epetra_Comm >(new Epetra_MpiComm(MPI_COMM_WORLD)))
null constructor and destructor
std::shared_ptr< vector_Type > vectorPtr_Type
virtual int Apply(const vector_Type &X, vector_Type &Y) const
Returns the result of a Epetra_Operator applied to a vector_Type X in Y.
virtual int SetUseTranspose(bool useTranspose)
If set true, transpose of this operator will be applied.
virtual int ApplyInverse(const vector_Type &X, vector_Type &Y) const
Returns the result of a Epetra_Operator inverse applied to an vector_Type X in Y. ...
uint32_type UInt
generic unsigned integer (used mainly for addressing)