Stokhos Package Browser (Single Doxygen Collection)
Version of the Day
|
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. More... | |
virtual | ~KroneckerProductPreconditioner () |
Destructor. More... | |
Public Member Functions inherited from Stokhos::SGPreconditioner | |
SGPreconditioner () | |
Constructor. More... | |
virtual | ~SGPreconditioner () |
Destructor. More... | |
Protected Types | |
typedef Stokhos::Sparse3Tensor < int, double > | Cijk_type |
Short-hand for Cijk. More... | |
Protected Member Functions | |
double | MatrixTrace (const Epetra_CrsMatrix &A, const Epetra_CrsMatrix &B) const |
Compute trace of matrix A'B. More... | |
Protected Attributes | |
std::string | label |
Label for operator. More... | |
Teuchos::RCP< const EpetraExt::MultiComm > | sg_comm |
Stores SG parallel communicator. More... | |
Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > | sg_basis |
Stochastic Galerking basis. More... | |
Teuchos::RCP< const Stokhos::EpetraSparse3Tensor > | epetraCijk |
Stores Epetra Cijk tensor. More... | |
Teuchos::RCP< const Epetra_Map > | base_map |
Stores base map. More... | |
Teuchos::RCP< const Epetra_Map > | sg_map |
Stores SG map. More... | |
Teuchos::RCP < Stokhos::AbstractPreconditionerFactory > | mean_prec_factory |
Stores factory for building mean preconditioner. More... | |
Teuchos::RCP < Stokhos::AbstractPreconditionerFactory > | G_prec_factory |
Stores factory for building G preconditioner. More... | |
Teuchos::RCP < Teuchos::ParameterList > | params |
Preconditioner parameters. More... | |
Teuchos::RCP< Epetra_Operator > | mean_prec |
Stores mean preconditioner. More... | |
Teuchos::RCP< Epetra_Operator > | G_prec |
Stores G preconditioner. More... | |
bool | useTranspose |
Flag indicating whether transpose was selected. More... | |
Teuchos::RCP< Stokhos::SGOperator > | sg_op |
Pointer to the SG operator. More... | |
Teuchos::RCP < Stokhos::EpetraOperatorOrthogPoly > | sg_poly |
Pointer to the PCE expansion of Jacobian. More... | |
Teuchos::RCP< const Cijk_type > | Cijk |
Stores triple product tensor. More... | |
Teuchos::RCP< Epetra_CrsMatrix > | G |
Pointer to CrsMatrix G. More... | |
bool | scale_op |
Flag indicating whether operator be scaled with <^2> More... | |
bool | only_use_linear |
Limit construction of G to linear terms. More... | |
Teuchos::RCP< Epetra_MultiVector > | result_MVT |
Private Member Functions | |
KroneckerProductPreconditioner (const KroneckerProductPreconditioner &) | |
Private to prohibit copying. More... | |
KroneckerProductPreconditioner & | operator= (const KroneckerProductPreconditioner &) |
Private to prohibit copying. More... | |
Stokhos::SGPreconditioner methods | |
virtual void | setupPreconditioner (const Teuchos::RCP< Stokhos::SGOperator > &sg_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... | |
An Epetra operator representing applying the mean in a block stochastic Galerkin expansion.
Definition at line 61 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Short-hand for Cijk.
Definition at line 203 of file Stokhos_KroneckerProductPreconditioner.hpp.
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.
Definition at line 49 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Destructor.
Definition at line 91 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
private |
Private to prohibit copying.
|
virtual |
Setup preconditioner.
Implements Stokhos::SGPreconditioner.
Definition at line 97 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Set to true if the transpose of the operator is requested.
Implements Epetra_Operator.
Definition at line 155 of file Stokhos_KroneckerProductPreconditioner.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 169 of file Stokhos_KroneckerProductPreconditioner.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 217 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Returns an approximate infinity norm of the operator matrix.
Implements Epetra_Operator.
Definition at line 281 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Returns a character string describing the operator.
Implements Epetra_Operator.
Definition at line 290 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Returns the current UseTranspose setting.
Implements Epetra_Operator.
Definition at line 297 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Implements Epetra_Operator.
Definition at line 304 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Returns a reference to the Epetra_Comm communicator associated with this operator.
Implements Epetra_Operator.
Definition at line 311 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Returns the Epetra_Map object associated with the domain of this matrix operator.
Implements Epetra_Operator.
Definition at line 317 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
virtual |
Returns the Epetra_Map object associated with the range of this matrix operator.
Implements Epetra_Operator.
Definition at line 324 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
protected |
Definition at line 331 of file Stokhos_KroneckerProductPreconditioner.cpp.
|
private |
Private to prohibit copying.
|
protected |
Label for operator.
Definition at line 161 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores SG parallel communicator.
Definition at line 164 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stochastic Galerking basis.
Definition at line 167 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores Epetra Cijk tensor.
Definition at line 170 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores base map.
Definition at line 173 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores SG map.
Definition at line 176 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores factory for building mean preconditioner.
Definition at line 179 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores factory for building G preconditioner.
Definition at line 182 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Preconditioner parameters.
Definition at line 185 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores mean preconditioner.
Definition at line 188 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores G preconditioner.
Definition at line 191 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Flag indicating whether transpose was selected.
Definition at line 194 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Pointer to the SG operator.
Definition at line 197 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Pointer to the PCE expansion of Jacobian.
Definition at line 200 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Stores triple product tensor.
Definition at line 206 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Pointer to CrsMatrix G.
Definition at line 209 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Flag indicating whether operator be scaled with <^2>
Definition at line 212 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
protected |
Limit construction of G to linear terms.
Definition at line 215 of file Stokhos_KroneckerProductPreconditioner.hpp.
|
mutableprotected |
Definition at line 217 of file Stokhos_KroneckerProductPreconditioner.hpp.