|
Stokhos Development
|
An Epetra operator representing applying the mean in a block stochastic Galerkin expansion. More...
#include <Stokhos_KroneckerProductPreconditioner.hpp>


Public Member Functions | |
| KroneckerProductPreconditioner (const Teuchos::RCP< const EpetraExt::MultiComm > &sg_comm, const Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > &sg_basis, const Teuchos::RCP< const Stokhos::EpetraSparse3Tensor > &epetraCijk, const Teuchos::RCP< const Epetra_Map > &base_map, const Teuchos::RCP< const Epetra_Map > &sg_map, const Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > &mean_prec_factory, const Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > &G_prec_factory, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) | |
| Constructor. | |
| virtual | ~KroneckerProductPreconditioner () |
| Destructor. | |
Stokhos::SGPreconditioner methods | |
| virtual void | setupPreconditioner (const Teuchos::RCP< Stokhos::SGOperator > &sg_op, const Epetra_Vector &x) |
| Setup preconditioner. | |
| Public Member Functions inherited from Stokhos::SGPreconditioner | |
| SGPreconditioner () | |
| Constructor. | |
| virtual | ~SGPreconditioner () |
| Destructor. | |
Epetra_Operator methods | |
| typedef Stokhos::Sparse3Tensor< int, double > | Cijk_type |
| Short-hand for Cijk. | |
| std::string | label |
| Label for operator. | |
| Teuchos::RCP< const EpetraExt::MultiComm > | sg_comm |
| Stores SG parallel communicator. | |
| Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > | sg_basis |
| Stochastic Galerking basis. | |
| Teuchos::RCP< const Stokhos::EpetraSparse3Tensor > | epetraCijk |
| Stores Epetra Cijk tensor. | |
| Teuchos::RCP< const Epetra_Map > | base_map |
| Stores base map. | |
| Teuchos::RCP< const Epetra_Map > | sg_map |
| Stores SG map. | |
| Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > | mean_prec_factory |
| Stores factory for building mean preconditioner. | |
| Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > | G_prec_factory |
| Stores factory for building G preconditioner. | |
| Teuchos::RCP< Teuchos::ParameterList > | params |
| Preconditioner parameters. | |
| Teuchos::RCP< Epetra_Operator > | mean_prec |
| Stores mean preconditioner. | |
| Teuchos::RCP< Epetra_Operator > | G_prec |
| Stores G preconditioner. | |
| bool | useTranspose |
| Flag indicating whether transpose was selected. | |
| Teuchos::RCP< Stokhos::SGOperator > | sg_op |
| Pointer to the SG operator. | |
| Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > | sg_poly |
| Pointer to the PCE expansion of Jacobian. | |
| Teuchos::RCP< const Cijk_type > | Cijk |
| Stores triple product tensor. | |
| Teuchos::RCP< Epetra_CrsMatrix > | G |
| Pointer to CrsMatrix G. | |
| bool | scale_op |
| Flag indicating whether operator be scaled with <\psi_i^2>. | |
| bool | only_use_linear |
| Limit construction of G to linear terms. | |
| Teuchos::RCP< Epetra_MultiVector > | result_MVT |
| 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. | |
| double | MatrixTrace (const Epetra_CrsMatrix &A, const Epetra_CrsMatrix &B) const |
| Compute trace of matrix A'B. | |
An Epetra operator representing applying the mean in a block stochastic Galerkin expansion.
| Stokhos::KroneckerProductPreconditioner::KroneckerProductPreconditioner | ( | const Teuchos::RCP< const EpetraExt::MultiComm > & | sg_comm, |
| const Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > & | sg_basis, | ||
| const Teuchos::RCP< const Stokhos::EpetraSparse3Tensor > & | epetraCijk, | ||
| const Teuchos::RCP< const Epetra_Map > & | base_map, | ||
| const Teuchos::RCP< const Epetra_Map > & | sg_map, | ||
| const Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > & | mean_prec_factory, | ||
| const Teuchos::RCP< Stokhos::AbstractPreconditionerFactory > & | G_prec_factory, | ||
| const Teuchos::RCP< Teuchos::ParameterList > & | params ) |
Constructor.
References base_map, Cijk, epetraCijk, G_prec_factory, label, mean_prec, mean_prec_factory, only_use_linear, params, scale_op, sg_basis, sg_comm, sg_map, sg_op, sg_poly, and useTranspose.
|
virtual |
|
virtual |
|
virtual |
Returns a reference to the Epetra_Comm communicator associated with this operator.
References sg_comm.
|
virtual |
|
virtual |
Returns a character string describing the operator.
References label.
|
protected |
Compute trace of matrix A'B.
Referenced by setupPreconditioner().
|
virtual |
|
virtual |
Returns the Epetra_Map object associated with the domain of this matrix operator.
References sg_map.
|
virtual |
Returns the Epetra_Map object associated with the range of this matrix operator.
References sg_map.
|
virtual |
Setup preconditioner.
Implements Stokhos::SGPreconditioner.
References Cijk, epetraCijk, G, G_prec, G_prec_factory, label, MatrixTrace(), mean_prec, mean_prec_factory, only_use_linear, scale_op, sg_basis, sg_op, and sg_poly.
|
virtual |
Set to true if the transpose of the operator is requested.
References mean_prec, UseTranspose(), and useTranspose.
|
virtual |
|
protected |
Stores base map.
Referenced by Apply(), ApplyInverse(), and KroneckerProductPreconditioner().
|
protected |
Stores triple product tensor.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Stores Epetra Cijk tensor.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Pointer to CrsMatrix G.
Referenced by Apply(), ApplyInverse(), and setupPreconditioner().
|
protected |
Stores G preconditioner.
Referenced by Apply(), ApplyInverse(), HasNormInf(), NormInf(), and setupPreconditioner().
|
protected |
Stores factory for building G preconditioner.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Label for operator.
Referenced by KroneckerProductPreconditioner(), Label(), and setupPreconditioner().
|
protected |
Stores mean preconditioner.
Referenced by Apply(), ApplyInverse(), HasNormInf(), KroneckerProductPreconditioner(), NormInf(), setupPreconditioner(), and SetUseTranspose().
|
protected |
Stores factory for building mean preconditioner.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Limit construction of G to linear terms.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Preconditioner parameters.
Referenced by KroneckerProductPreconditioner().
|
protected |
Flag indicating whether operator be scaled with <\psi_i^2>.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Stochastic Galerking basis.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Stores SG parallel communicator.
Referenced by Comm(), and KroneckerProductPreconditioner().
|
protected |
Stores SG map.
Referenced by KroneckerProductPreconditioner(), OperatorDomainMap(), and OperatorRangeMap().
|
protected |
Pointer to the SG operator.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Pointer to the PCE expansion of Jacobian.
Referenced by KroneckerProductPreconditioner(), and setupPreconditioner().
|
protected |
Flag indicating whether transpose was selected.
Referenced by KroneckerProductPreconditioner(), SetUseTranspose(), and UseTranspose().