|
Stokhos Development
|
A multi-point preconditioner based on applying the inverse of the mean. More...
#include <Stokhos_MPMeanBasedPreconditioner.hpp>


Public Member Functions | |
| MPMeanBasedPreconditioner (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. | |
| virtual | ~MPMeanBasedPreconditioner () |
| Destructor. | |
Stokhos::MPPreconditioner methods | |
| virtual void | setupPreconditioner (const Teuchos::RCP< Stokhos::BlockDiagonalOperator > &mp_op, const Epetra_Vector &x) |
| Setup preconditioner. | |
| Public Member Functions inherited from Stokhos::MPPreconditioner | |
| MPPreconditioner () | |
| Constructor. | |
| virtual | ~MPPreconditioner () |
| Destructor. | |
Epetra_Operator methods | |
| std::string | label |
| Label for operator. | |
| Teuchos::RCP< const EpetraExt::MultiComm > | mp_comm |
| Stores MP parallel communicator. | |
| int | num_mp_blocks |
| Number of mp blocks. | |
| Teuchos::RCP< const Epetra_Map > | base_map |
| Stores base map. | |
| Teuchos::RCP< const Epetra_Map > | mp_map |
| Stores MP map. | |
| Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > | prec_factory |
| Stores factory for building mean preconditioner. | |
| Teuchos::RCP< Epetra_Operator > | mean_prec |
| Stores preconditioner for each block. | |
| bool | useTranspose |
| Flag indicating whether transpose was selected. | |
| virtual int | SetUseTranspose (bool UseTranspose) |
| Set to true if the transpose of the operator is requested. | |
| 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. | |
| 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. | |
| virtual double | NormInf () const |
| Returns an approximate infinity norm of the operator 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 the this object can provide an approximate Inf-norm, false otherwise. | |
| virtual const Epetra_Comm & | Comm () const |
| Returns a reference 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 matrix operator. | |
| virtual const Epetra_Map & | OperatorRangeMap () const |
| Returns the Epetra_Map object associated with the range of this matrix operator. | |
A multi-point preconditioner based on applying the inverse of the mean.
| Stokhos::MPMeanBasedPreconditioner::MPMeanBasedPreconditioner | ( | 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.
References base_map, label, mean_prec, mp_comm, mp_map, num_mp_blocks, prec_factory, and useTranspose.
|
virtual |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector Input in Result as described above.
References base_map, mean_prec, and num_mp_blocks.
|
virtual |
Returns the result of the inverse of the operator applied to a Epetra_MultiVector Input in Result as described above.
References base_map, mean_prec, and num_mp_blocks.
|
virtual |
Returns a reference to the Epetra_Comm communicator associated with this operator.
References mp_comm.
|
virtual |
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
References mean_prec.
|
virtual |
Returns a character string describing the operator.
References label.
|
virtual |
Returns an approximate infinity norm of the operator matrix.
References mean_prec.
|
virtual |
Returns the Epetra_Map object associated with the domain of this matrix operator.
References mp_map.
|
virtual |
Returns the Epetra_Map object associated with the range of this matrix operator.
References mp_map.
|
virtual |
Setup preconditioner.
Implements Stokhos::MPPreconditioner.
References label, mean_prec, num_mp_blocks, and prec_factory.
|
virtual |
Set to true if the transpose of the operator is requested.
References mean_prec, and useTranspose.
|
virtual |
Returns the current UseTranspose setting.
References useTranspose.
|
protected |
Stores base map.
Referenced by Apply(), ApplyInverse(), and MPMeanBasedPreconditioner().
|
protected |
Label for operator.
Referenced by Label(), MPMeanBasedPreconditioner(), and setupPreconditioner().
|
protected |
Stores preconditioner for each block.
Referenced by Apply(), ApplyInverse(), HasNormInf(), MPMeanBasedPreconditioner(), NormInf(), setupPreconditioner(), and SetUseTranspose().
|
protected |
Stores MP parallel communicator.
Referenced by Comm(), and MPMeanBasedPreconditioner().
|
protected |
Stores MP map.
Referenced by MPMeanBasedPreconditioner(), OperatorDomainMap(), and OperatorRangeMap().
|
protected |
Number of mp blocks.
Referenced by Apply(), ApplyInverse(), MPMeanBasedPreconditioner(), and setupPreconditioner().
|
protected |
Stores factory for building mean preconditioner.
Referenced by MPMeanBasedPreconditioner(), and setupPreconditioner().
|
protected |
Flag indicating whether transpose was selected.
Referenced by MPMeanBasedPreconditioner(), SetUseTranspose(), and UseTranspose().