MLAPI::Operator Class Reference

Operator: basic class to define operators within MLAPI. More...

#include <MLAPI_Operator.h>

Inheritance diagram for MLAPI::Operator:

Inheritance graph
[legend]
Collaboration diagram for MLAPI::Operator:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Operator ()
 Default constructor.
 Operator (const Space &DomainSpace, const Space &RangeSpace, ML_Operator *Op, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
 Constructor with given already computed ML_Operator pointer.
 Operator (const Space &DomainSpace, const Space &RangeSpace, Epetra_RowMatrix *Matrix, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
 Constructor with given already FillComplete()'d object.
 Operator (const Operator &RHS)
 Copy constructor.
 ~Operator ()
 Destructor.
void Reshape ()
 Resets this object.
void Reshape (const Space &DomainSpace, const Space &RangeSpace, ML_Operator *Op, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
 Reshape with given already computed ML_Operator pointer.
void Reshape (const Space &DomainSpace, const Space &RangeSpace, Epetra_RowMatrix *Matrix, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
 Reshape with given already FillComplete()'d object.
Operatoroperator= (const Operator &RHS)
 Makes this object equivalent to RHS.
Operatoroperator= (const string &Label)
 Sets the label of this object.
const Space GetOperatorDomainSpace () const
 Returns a reference to the internally stored domain space.
const Space GetOperatorRangeSpace () const
 Returns a reference to the internally stored range space.
const Space GetDomainSpace () const
 Returns a reference to the internally stored domain space.
const Space GetRangeSpace () const
 Returns a reference to the internally stored range space.
const Space GetColumnSpace () const
 Returns a reference to the internally stored column space.
int GetNumGlobalRows () const
 Returns the number of global rows.
int GetNumMyRows () const
 Returns the number of local rows.
int GetNumGlobalCols () const
 Returns the number of global columns.
int GetNumMyCols () const
 Returns the number of local columns.
int GetNumGlobalNonzeros () const
 Returns the global number of nonzeros.
int GetNumMyNonzeros () const
 Returns the local number of nonzeros.
const Epetra_RowMatrix * GetRowMatrix () const
 Returns the RefCountPtr of OperatorBox_.
ML_OperatorGetML_Operator () const
 Returns the RefCountPtr of OperatorBox_.
const Teuchos::RefCountPtr
< ML_Operator_Box > & 
GetRCPOperatorBox () const
 Returns the RefCountPtr of OperatorBox_.
const Teuchos::RefCountPtr
< ML_Operator_Box > & 
GetRCPAuxOperatorBox () const
 Returns the RefCountPtr of AuxOperatorBox_.
const Teuchos::RefCountPtr
< Epetra_RowMatrix > & 
GetRCPRowMatrix () const
 Returns the RefCountPtr of RowMatrix_.
int GetGRID (const int LRID) const
 Returns the global ID of local row ID LRID.
int GetGCID (const int LCID) const
 Returns the global ID of local column ID LCID.
int Apply (const MultiVector &X, MultiVector &Y) const
 Applies this operator to LHS, returns the result in RHS.
ostream & Print (std::ostream &os, const bool verbose=true) const
 Prints basic information about this object.
void BuildColumnSpace ()
 Build the column space, by computing the GID of all local columns.

Private Member Functions

void Destroy ()
 Destroys all internal data and resets this object.

Private Attributes

Space DomainSpace_
 Domain space.
Space RangeSpace_
 Range space.
Space ColumnSpace_
 Column space.
Teuchos::RefCountPtr
< ML_Operator_Box
RCPOperatorBox_
 Container for the underlying ML_Operator pointer.
Teuchos::RefCountPtr
< ML_Operator_Box
RCPAuxOperatorBox_
 Container for the underlying ML_Operator pointer.
Teuchos::RefCountPtr
< Epetra_RowMatrix > 
RCPRowMatrix_
 Container for the underlying Epetra_RowMatrix pointer.


Detailed Description

Author:
Marzio Sala, SNL 9214
Date:
Last updated on Feb-05.

Constructor & Destructor Documentation

MLAPI::Operator::Operator (  )  [inline]

MLAPI::Operator::Operator ( const Space DomainSpace,
const Space RangeSpace,
ML_Operator Op,
bool  Ownership = true,
Teuchos::RefCountPtr< ML_Operator_Box AuxOp = Teuchos::null 
) [inline]

MLAPI::Operator::Operator ( const Space DomainSpace,
const Space RangeSpace,
Epetra_RowMatrix *  Matrix,
bool  Ownership = true,
Teuchos::RefCountPtr< ML_Operator_Box AuxOp = Teuchos::null 
) [inline]

MLAPI::Operator::Operator ( const Operator RHS  )  [inline]

MLAPI::Operator::~Operator (  )  [inline]


Member Function Documentation

int MLAPI::Operator::Apply ( const MultiVector X,
MultiVector Y 
) const [inline, virtual]

Implements MLAPI::BaseOperator.

Reimplemented in MLAPI::DistributedMatrix.

void MLAPI::Operator::BuildColumnSpace (  )  [inline]

void MLAPI::Operator::Destroy (  )  [inline, private]

const Space MLAPI::Operator::GetColumnSpace (  )  const [inline]

const Space MLAPI::Operator::GetDomainSpace (  )  const [inline]

Reimplemented in MLAPI::DistributedMatrix.

int MLAPI::Operator::GetGCID ( const int  LCID  )  const [inline]

int MLAPI::Operator::GetGRID ( const int  LRID  )  const [inline]

ML_Operator* MLAPI::Operator::GetML_Operator (  )  const [inline]

int MLAPI::Operator::GetNumGlobalCols (  )  const [inline]

int MLAPI::Operator::GetNumGlobalNonzeros (  )  const [inline]

int MLAPI::Operator::GetNumGlobalRows (  )  const [inline]

int MLAPI::Operator::GetNumMyCols (  )  const [inline]

int MLAPI::Operator::GetNumMyNonzeros (  )  const [inline]

int MLAPI::Operator::GetNumMyRows (  )  const [inline]

const Space MLAPI::Operator::GetOperatorDomainSpace (  )  const [inline, virtual]

Implements MLAPI::BaseOperator.

const Space MLAPI::Operator::GetOperatorRangeSpace (  )  const [inline, virtual]

Implements MLAPI::BaseOperator.

const Space MLAPI::Operator::GetRangeSpace (  )  const [inline]

Reimplemented in MLAPI::DistributedMatrix.

const Teuchos::RefCountPtr<ML_Operator_Box>& MLAPI::Operator::GetRCPAuxOperatorBox (  )  const [inline]

const Teuchos::RefCountPtr<ML_Operator_Box>& MLAPI::Operator::GetRCPOperatorBox (  )  const [inline]

const Teuchos::RefCountPtr<Epetra_RowMatrix>& MLAPI::Operator::GetRCPRowMatrix (  )  const [inline]

const Epetra_RowMatrix* MLAPI::Operator::GetRowMatrix (  )  const [inline]

Operator& MLAPI::Operator::operator= ( const string &  Label  )  [inline]

Operator& MLAPI::Operator::operator= ( const Operator RHS  )  [inline]

ostream& MLAPI::Operator::Print ( std::ostream &  os,
const bool  verbose = true 
) const [inline, virtual]

void MLAPI::Operator::Reshape ( const Space DomainSpace,
const Space RangeSpace,
Epetra_RowMatrix *  Matrix,
bool  Ownership = true,
Teuchos::RefCountPtr< ML_Operator_Box AuxOp = Teuchos::null 
) [inline]

void MLAPI::Operator::Reshape ( const Space DomainSpace,
const Space RangeSpace,
ML_Operator Op,
bool  Ownership = true,
Teuchos::RefCountPtr< ML_Operator_Box AuxOp = Teuchos::null 
) [inline]

void MLAPI::Operator::Reshape (  )  [inline]


Member Data Documentation

Teuchos::RefCountPtr<ML_Operator_Box> MLAPI::Operator::RCPAuxOperatorBox_ [private]

Teuchos::RefCountPtr<ML_Operator_Box> MLAPI::Operator::RCPOperatorBox_ [private]

Teuchos::RefCountPtr<Epetra_RowMatrix> MLAPI::Operator::RCPRowMatrix_ [private]


The documentation for this class was generated from the following file: