An Epetra operator that evaluates the Jacobian of a QCAD coupled Poisson-Schrodinger problem. More...
#include <QCAD_CoupledPSPreconditioner.hpp>
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 |
An Epetra operator that evaluates the Jacobian of a QCAD coupled Poisson-Schrodinger problem.
Definition at line 27 of file QCAD_CoupledPSPreconditioner.hpp.
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.
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.
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.
bool QCAD::CoupledPSPreconditioner::bUseTranspose [private] |
Definition at line 75 of file QCAD_CoupledPSPreconditioner.hpp.
bool QCAD::CoupledPSPreconditioner::bInitialized [private] |
Definition at line 76 of file QCAD_CoupledPSPreconditioner.hpp.
int QCAD::CoupledPSPreconditioner::nEigenvalues [private] |
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.