43#ifndef IFPACK_SOLVEOBJECT_H
44#define IFPACK_SOLVEOBJECT_H
121 int Condest(
bool Trans,
double & ConditionNumberEstimate)
const;
219 virtual int SetupXY(
bool Trans,
const Epetra_Map & OperatorRangeMap() const
const Epetra_Map & OperatorDomainMap() const
Ifpack_OverlapSolveObject: Provides Overlapped Forward/back solve services for Ifpack.
Ifpack_OverlapSolveObject(char *Label, const Epetra_Comm &Comm)
Constructor.
const Epetra_CrsMatrix & L() const
Returns the address of the L factor associated with this factored matrix.
double NormInf() const
Returns 0.0 because this class cannot compute Inf-norm.
bool HasNormInf() const
Returns false because this class cannot compute an Inf-norm.
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.
const char * Label() const
Returns a character string describing the operator.
int Solve(bool Trans, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Ifpack_CrsIlut forward/back solve on a Epetra_MultiVector X in Y (works for E...
void SetOverlapMode(Epetra_CombineMode OverlapMode)
Generate Ifpack_OverlapGraph object using current settings.
const Epetra_Comm & Comm_
Epetra_CombineMode OverlapMode() const
Returns the overlap mode used to combine terms that are redundantly computed.
int NumMyNonzeros() const
Returns the number of nonzero entries in the local graph.
const Epetra_Comm & Comm() const
Returns the Epetra_BlockMap object associated with the range of this matrix operator.
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.
int NumGlobalNonzeros() const
Returns the number of nonzero entries in the global graph.
int SetUseTranspose(bool UseTranspose)
If set true, transpose of this operator will be applied.
bool UseTranspose() const
Returns the current UseTranspose setting.
int Condest(bool Trans, double &ConditionNumberEstimate) const
Returns the maximum over all the condition number estimate for each local ILU set of factors.
const Epetra_Vector & D() const
Returns the address of the D factor associated with this factored matrix.
Epetra_CombineMode OverlapMode_
virtual ~Ifpack_OverlapSolveObject()
Ifpack_OverlapSolveObject Destructor.
int SetLowerOperator(Epetra_CrsMatrix *L, bool UseLTrans)
Define the operator to be used for the lower triangle.
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
const Epetra_CrsMatrix & U() const
Returns the address of the L factor associated with this factored matrix.
int Multiply(bool Trans, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of multiplying U, D and L in that order on an Epetra_MultiVector X in Y.
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
int SetUpperOperator(Epetra_CrsMatrix *U, bool UseUTrans)
Define the operator to be used for the upper triangle.
int SetDiagonal(Epetra_Vector *D, bool UseDInv)
Define the vector to be used for the diagonal.
virtual int SetupXY(bool Trans, const Epetra_MultiVector &Xin, const Epetra_MultiVector &Yin, Epetra_MultiVector *&Xout, Epetra_MultiVector *&Yout) const =0