Stokhos Package Browser (Single Doxygen Collection)
Version of the Day
|
A multi-point preconditioner based on applying the inverse of the diagonal. More...
#include <Stokhos_MPBlockDiagonalPreconditioner.hpp>
Public Member Functions | |
MPBlockDiagonalPreconditioner (const Teuchos::RCP< const EpetraExt::MultiComm > &mp_comm, int num_mp_blocks, const Teuchos::RCP< const Epetra_Map > &base_map, const Teuchos::RCP< const Epetra_Map > &mp_map, const Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > &prec_factory, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) | |
Constructor. More... | |
virtual | ~MPBlockDiagonalPreconditioner () |
Destructor. More... | |
Public Member Functions inherited from Stokhos::MPPreconditioner | |
MPPreconditioner () | |
Constructor. More... | |
virtual | ~MPPreconditioner () |
Destructor. More... | |
Protected Attributes | |
std::string | label |
Label for operator. More... | |
Teuchos::RCP< const EpetraExt::MultiComm > | mp_comm |
Stores MP parallel communicator. More... | |
int | num_mp_blocks |
Number of mp blocks. More... | |
Teuchos::RCP< const Epetra_Map > | base_map |
Stores base map. More... | |
Teuchos::RCP< const Epetra_Map > | mp_map |
Stores MP map. More... | |
Teuchos::RCP < Stokhos::AbstractPreconditionerFactory > | prec_factory |
Stores factory for building mean preconditioner. More... | |
Teuchos::Array< Teuchos::RCP < Epetra_Operator > > | block_precs |
Stores preconditioner for each block. More... | |
bool | useTranspose |
Flag indicating whether transpose was selected. More... | |
Private Member Functions | |
MPBlockDiagonalPreconditioner (const MPBlockDiagonalPreconditioner &) | |
Private to prohibit copying. More... | |
MPBlockDiagonalPreconditioner & | operator= (const MPBlockDiagonalPreconditioner &) |
Private to prohibit copying. More... | |
Stokhos::MPPreconditioner methods | |
virtual void | setupPreconditioner (const Teuchos::RCP< Stokhos::BlockDiagonalOperator > &mp_op, const Epetra_Vector &x) |
Setup preconditioner. More... | |
Epetra_Operator methods | |
virtual int | SetUseTranspose (bool UseTranspose) |
Set to true if the transpose of the operator is requested. More... | |
virtual int | Apply (const Epetra_MultiVector &Input, Epetra_MultiVector &Result) const |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector Input in Result as described above. More... | |
virtual int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of the inverse of the operator applied to a Epetra_MultiVector Input in Result as described above. More... | |
virtual double | NormInf () const |
Returns an approximate infinity norm of the operator matrix. More... | |
virtual const char * | Label () const |
Returns a character string describing the operator. More... | |
virtual bool | UseTranspose () const |
Returns the current UseTranspose setting. More... | |
virtual bool | HasNormInf () const |
Returns true if the this object can provide an approximate Inf-norm, false otherwise. More... | |
virtual const Epetra_Comm & | Comm () const |
Returns a reference to the Epetra_Comm communicator associated with this operator. More... | |
virtual const Epetra_Map & | OperatorDomainMap () const |
Returns the Epetra_Map object associated with the domain of this matrix operator. More... | |
virtual const Epetra_Map & | OperatorRangeMap () const |
Returns the Epetra_Map object associated with the range of this matrix operator. More... | |
A multi-point preconditioner based on applying the inverse of the diagonal.
Definition at line 60 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
Stokhos::MPBlockDiagonalPreconditioner::MPBlockDiagonalPreconditioner | ( | const Teuchos::RCP< const EpetraExt::MultiComm > & | mp_comm, |
int | num_mp_blocks, | ||
const Teuchos::RCP< const Epetra_Map > & | base_map, | ||
const Teuchos::RCP< const Epetra_Map > & | mp_map, | ||
const Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > & | prec_factory, | ||
const Teuchos::RCP< Teuchos::ParameterList > & | params | ||
) |
Constructor.
Definition at line 46 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Destructor.
Definition at line 65 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
private |
Private to prohibit copying.
|
virtual |
Setup preconditioner.
Implements Stokhos::MPPreconditioner.
Definition at line 71 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Set to true if the transpose of the operator is requested.
Implements Epetra_Operator.
Definition at line 91 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector Input in Result as described above.
Implements Epetra_Operator.
Definition at line 102 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns the result of the inverse of the operator applied to a Epetra_MultiVector Input in Result as described above.
Implements Epetra_Operator.
Definition at line 115 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns an approximate infinity norm of the operator matrix.
Implements Epetra_Operator.
Definition at line 129 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns a character string describing the operator.
Implements Epetra_Operator.
Definition at line 144 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns the current UseTranspose setting.
Implements Epetra_Operator.
Definition at line 151 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Implements Epetra_Operator.
Definition at line 158 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns a reference to the Epetra_Comm communicator associated with this operator.
Implements Epetra_Operator.
Definition at line 167 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns the Epetra_Map object associated with the domain of this matrix operator.
Implements Epetra_Operator.
Definition at line 173 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
virtual |
Returns the Epetra_Map object associated with the range of this matrix operator.
Implements Epetra_Operator.
Definition at line 180 of file Stokhos_MPBlockDiagonalPreconditioner.cpp.
|
private |
Private to prohibit copying.
|
protected |
Label for operator.
Definition at line 153 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
|
protected |
Stores MP parallel communicator.
Definition at line 156 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
|
protected |
Number of mp blocks.
Definition at line 159 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
|
protected |
Stores base map.
Definition at line 162 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
|
protected |
Stores MP map.
Definition at line 165 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
|
protected |
Stores factory for building mean preconditioner.
Definition at line 168 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
|
protected |
Stores preconditioner for each block.
Definition at line 171 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.
|
protected |
Flag indicating whether transpose was selected.
Definition at line 174 of file Stokhos_MPBlockDiagonalPreconditioner.hpp.