43#ifndef _POISSON2DOPERATOR_H_
44#define _POISSON2DOPERATOR_H_
Poisson2dOperator: A sample implementation of the Epetra_Operator class.
const char * Label() const
Returns a character string describing the operator.
bool UseTranspose() const
Returns the current UseTranspose setting.
~Poisson2dOperator()
Destructor.
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Poisson2dOperator inverse applied to an Epetra_MultiVector X in Y.
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Poisson2dOperator(int nx, int ny, const Epetra_Comm &comm)
Builds a 2 dimensional Poisson operator for a nx by ny grid, assuming zero Dirichlet BCs.
bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
int SetUseTranspose(bool UseTranspose)
If set true, transpose of this operator will be applied.
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
double NormInf() const
Returns the infinity norm of the global matrix.
Epetra_CrsMatrix * GeneratePrecMatrix() const
Generate a tridiagonal approximation to the 5-point Poisson as an Epetra_CrsMatrix.
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Poisson2dOperator applied to a Epetra_MultiVector X in Y.
Epetra_Import * importer_
const Epetra_Comm & comm_
Epetra_MultiVector * importX_