|
Stokhos Development
|
An Epetra operator representing the block stochastic Galerkin operator. More...
#include <Stokhos_KLReducedMatrixFreeEpetraOp.hpp>
Public Member Functions | |
| KLReducedMatrixFreeEpetraOp (const Teuchos::RCP< const Epetra_Map > &base_map, const Teuchos::RCP< const Epetra_Map > &sg_map, const Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > &sg_basis, const Teuchos::RCP< const Stokhos::Sparse3Tensor< int, double > > &Cijk, const Teuchos::RCP< Stokhos::VectorOrthogPoly< Epetra_Operator > > &ops, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) | |
| Constructor. | |
| virtual | ~KLReducedMatrixFreeEpetraOp () |
| Destructor. | |
| virtual void | reset (const Teuchos::RCP< Stokhos::VectorOrthogPoly< Epetra_Operator > > &ops) |
| Reset operator blocks. | |
|
virtual const Stokhos::VectorOrthogPoly < Epetra_Operator > & | getOperatorBlocks () |
| Get operator blocks. | |
| 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. | |
| virtual const double | ApplyTime () const |
| Returns the time spent applying this operator. | |
Protected Member Functions | |
| void | setup () |
| Setup KL blocks. | |
Protected Attributes | |
| std::string | label |
| Label for operator. | |
| Teuchos::RCP< const Epetra_Map > | base_map |
| Stores base map. | |
| Teuchos::RCP< const Epetra_Map > | sg_map |
| Stores SG map. | |
|
Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > | sg_basis |
| Stochastic Galerking basis. | |
|
Teuchos::RCP< const Stokhos::Sparse3Tensor< int, double > > | Cijk |
| Stores triple product tensor. | |
|
Teuchos::RCP < Stokhos::VectorOrthogPoly < Epetra_Operator > > | block_ops |
| Stores operators. | |
|
Teuchos::RCP < Teuchos::ParameterList > | params |
| Algorithmic parameters. | |
| bool | useTranspose |
| Flag indicating whether transpose was selected. | |
| int | num_blocks |
| Number of blocks. | |
|
Teuchos::Array< Teuchos::RCP < const Epetra_MultiVector > > | input_block |
| MultiVectors for each block for Apply() input. | |
|
Teuchos::Array< Teuchos::RCP < Epetra_MultiVector > > | result_block |
| MultiVectors for each block for Apply() result. | |
| Teuchos::RCP< Epetra_MultiVector > | tmp |
| Temporary multivector. | |
| Teuchos::RCP< Epetra_MultiVector > | tmp2 |
| Temporary multivector. | |
| Teuchos::RCP< Teuchos::Time > | ApplyTimer |
| Operation Timer. | |
| int | num_KL |
| Number of KL terms. | |
| int | num_KL_computed |
| Number of computed KL terms. | |
| Teuchos::RCP< Epetra_CrsMatrix > | mean |
| Mean block. | |
| Teuchos::RCP< Epetra_Map > | block_vec_map |
| Block map for vectorized-matrices. | |
|
Teuchos::RCP < Stokhos::VectorOrthogPoly < Epetra_Vector > > | block_vec_poly |
| Polynomial sorting vectorized matrix coefficients. | |
|
Teuchos::Array< Teuchos::Array < double > > | dot_products |
| Dot products of KL eigenvectors and Jacobian blocks. | |
|
Teuchos::RCP < Stokhos::Sparse3Tensor< int, double > > | sparse_kl_coeffs |
| Sparse KL coefficients. | |
|
Teuchos::Array< Teuchos::RCP < Epetra_CrsMatrix > > | kl_blocks |
| KL blocks. | |
| double | drop_tolerance |
| Tolerance for dropping entries in sparse 3 tensor. | |
| bool | do_error_tests |
| Whether to do KL error tests (can be expensive) | |
An Epetra operator representing the block stochastic Galerkin operator.
1.7.4