Public Member Functions | Private Attributes

QCAD::CoupledPSPreconditioner Class Reference

An Epetra operator that evaluates the Jacobian of a QCAD coupled Poisson-Schrodinger problem. More...

#include <QCAD_CoupledPSPreconditioner.hpp>

List of all members.

Public Member Functions

 CoupledPSPreconditioner (int nEigenvals, const Teuchos::RCP< const Epetra_Map > &discMap, const Teuchos::RCP< const Epetra_Map > &fullPSMap, const Teuchos::RCP< const Epetra_Comm > &comm)
 ~CoupledPSPreconditioner ()
void initialize (const Teuchos::RCP< Epetra_Operator > &poissonPrecond, const Teuchos::RCP< Epetra_Operator > &schrodingerPrecond)
 Initialize the operator with everything needed to apply it.
virtual int SetUseTranspose (bool UseTranspose)
 If set true, transpose of this operator will be applied.
virtual 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.
virtual 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.
virtual double NormInf () const
 Returns the infinity norm of the global matrix.
virtual const char * Label () const
 Returns a character string describing the operator.
virtual bool UseTranspose () const
 Returns the current UseTranspose setting.
virtual bool HasNormInf () const
 Returns true if this object can provide an approximate Inf-norm, false otherwise.
virtual const Epetra_Comm & Comm () const
 Returns a pointer to the Epetra_Comm communicator associated with this operator.
virtual const Epetra_Map & OperatorDomainMap () const
 Returns the Epetra_Map object associated with the domain of this operator.
virtual const Epetra_Map & OperatorRangeMap () const
 Returns the Epetra_Map object associated with the range of this operator.

Private Attributes

Teuchos::RCP< const Epetra_Map > discMap
Teuchos::RCP< const Epetra_Map > dist_evalMap
Teuchos::RCP< const Epetra_Map > domainMap
Teuchos::RCP< const Epetra_Map > rangeMap
Teuchos::RCP< const Epetra_Comm > myComm
bool bUseTranspose
bool bInitialized
int nEigenvalues
Teuchos::RCP< Epetra_Operator > poissonPreconditioner
Teuchos::RCP< Epetra_Operator > schrodingerPreconditioner

Detailed Description

An Epetra operator that evaluates the Jacobian of a QCAD coupled Poisson-Schrodinger problem.

Definition at line 27 of file QCAD_CoupledPSPreconditioner.hpp.


Constructor & Destructor Documentation

QCAD::CoupledPSPreconditioner::CoupledPSPreconditioner ( int  nEigenvals,
const Teuchos::RCP< const Epetra_Map > &  discMap,
const Teuchos::RCP< const Epetra_Map > &  fullPSMap,
const Teuchos::RCP< const Epetra_Comm > &  comm 
)

Definition at line 13 of file QCAD_CoupledPSPreconditioner.cpp.

QCAD::CoupledPSPreconditioner::~CoupledPSPreconditioner (  ) 

Definition at line 26 of file QCAD_CoupledPSPreconditioner.cpp.


Member Function Documentation

void QCAD::CoupledPSPreconditioner::initialize ( const Teuchos::RCP< Epetra_Operator > &  poissonPrecond,
const Teuchos::RCP< Epetra_Operator > &  schrodingerPrecond 
)

Initialize the operator with everything needed to apply it.

Definition at line 32 of file QCAD_CoupledPSPreconditioner.cpp.

virtual int QCAD::CoupledPSPreconditioner::SetUseTranspose ( bool  UseTranspose  )  [inline, virtual]

If set true, transpose of this operator will be applied.

Definition at line 39 of file QCAD_CoupledPSPreconditioner.hpp.

int QCAD::CoupledPSPreconditioner::Apply ( const Epetra_MultiVector &  X,
Epetra_MultiVector &  Y 
) const [virtual]

Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.

Definition at line 48 of file QCAD_CoupledPSPreconditioner.cpp.

int QCAD::CoupledPSPreconditioner::ApplyInverse ( const Epetra_MultiVector &  X,
Epetra_MultiVector &  Y 
) const [virtual]

Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.

Definition at line 56 of file QCAD_CoupledPSPreconditioner.cpp.

virtual double QCAD::CoupledPSPreconditioner::NormInf (  )  const [inline, virtual]

Returns the infinity norm of the global matrix.

Definition at line 48 of file QCAD_CoupledPSPreconditioner.hpp.

virtual const char* QCAD::CoupledPSPreconditioner::Label (  )  const [inline, virtual]

Returns a character string describing the operator.

Definition at line 51 of file QCAD_CoupledPSPreconditioner.hpp.

virtual bool QCAD::CoupledPSPreconditioner::UseTranspose (  )  const [inline, virtual]

Returns the current UseTranspose setting.

Definition at line 54 of file QCAD_CoupledPSPreconditioner.hpp.

virtual bool QCAD::CoupledPSPreconditioner::HasNormInf (  )  const [inline, virtual]

Returns true if this object can provide an approximate Inf-norm, false otherwise.

Definition at line 57 of file QCAD_CoupledPSPreconditioner.hpp.

virtual const Epetra_Comm& QCAD::CoupledPSPreconditioner::Comm (  )  const [inline, virtual]

Returns a pointer to the Epetra_Comm communicator associated with this operator.

Definition at line 60 of file QCAD_CoupledPSPreconditioner.hpp.

virtual const Epetra_Map& QCAD::CoupledPSPreconditioner::OperatorDomainMap (  )  const [inline, virtual]

Returns the Epetra_Map object associated with the domain of this operator.

Definition at line 63 of file QCAD_CoupledPSPreconditioner.hpp.

virtual const Epetra_Map& QCAD::CoupledPSPreconditioner::OperatorRangeMap (  )  const [inline, virtual]

Returns the Epetra_Map object associated with the range of this operator.

Definition at line 66 of file QCAD_CoupledPSPreconditioner.hpp.


Member Data Documentation

Teuchos::RCP<const Epetra_Map> QCAD::CoupledPSPreconditioner::discMap [private]

Definition at line 70 of file QCAD_CoupledPSPreconditioner.hpp.

Teuchos::RCP<const Epetra_Map> QCAD::CoupledPSPreconditioner::dist_evalMap [private]

Definition at line 71 of file QCAD_CoupledPSPreconditioner.hpp.

Teuchos::RCP<const Epetra_Map> QCAD::CoupledPSPreconditioner::domainMap [private]

Definition at line 72 of file QCAD_CoupledPSPreconditioner.hpp.

Teuchos::RCP<const Epetra_Map> QCAD::CoupledPSPreconditioner::rangeMap [private]

Definition at line 72 of file QCAD_CoupledPSPreconditioner.hpp.

Teuchos::RCP<const Epetra_Comm> QCAD::CoupledPSPreconditioner::myComm [private]

Definition at line 73 of file QCAD_CoupledPSPreconditioner.hpp.

Definition at line 75 of file QCAD_CoupledPSPreconditioner.hpp.

Definition at line 76 of file QCAD_CoupledPSPreconditioner.hpp.

Definition at line 77 of file QCAD_CoupledPSPreconditioner.hpp.

Teuchos::RCP<Epetra_Operator> QCAD::CoupledPSPreconditioner::poissonPreconditioner [private]

Definition at line 79 of file QCAD_CoupledPSPreconditioner.hpp.

Teuchos::RCP<Epetra_Operator> QCAD::CoupledPSPreconditioner::schrodingerPreconditioner [private]

Definition at line 79 of file QCAD_CoupledPSPreconditioner.hpp.


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