|
Stokhos
Development
|
An Epetra operator representing the block stochastic Galerkin operator. More...
#include <Stokhos_MatrixFreeOperator.hpp>


Public Member Functions | |
| MatrixFreeOperator (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 > &domain_base_map, const Teuchos::RCP< const Epetra_Map > &range_base_map, const Teuchos::RCP< const Epetra_Map > &domain_sg_map, const Teuchos::RCP< const Epetra_Map > &range_sg_map, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) | |
| Constructor. | |
| virtual | ~MatrixFreeOperator () |
| Destructor. | |
| double | countApplyFlops () const |
| Return number of FLOPS for each call to Apply() | |
Stokhos::SGOperator methods | |
| virtual void | setupOperator (const Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > &poly) |
| Setup operator. | |
|
virtual Teuchos::RCP < Stokhos::EpetraOperatorOrthogPoly > | getSGPolynomial () |
| Get SG polynomial. | |
|
virtual Teuchos::RCP< const Stokhos::EpetraOperatorOrthogPoly > | getSGPolynomial () const |
| Get SG polynomial. | |
Epetra_Operator methods | |
| 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. | |
Public Member Functions inherited from Stokhos::SGOperator | |
| SGOperator () | |
| Constructor. | |
| virtual | ~SGOperator () |
| Destructor. | |
Protected Types | |
|
typedef Stokhos::Sparse3Tensor < int, double > | Cijk_type |
| Short-hand for Cijk. | |
Protected Attributes | |
| 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 > | domain_base_map |
| Stores domain base map. | |
| Teuchos::RCP< const Epetra_Map > | range_base_map |
| Stores range base map. | |
| Teuchos::RCP< const Epetra_Map > | domain_sg_map |
| Stores domain SG map. | |
| Teuchos::RCP< const Epetra_Map > | range_sg_map |
| Stores range SG map. | |
| bool | is_stoch_parallel |
| Whether we have parallelism over stochastic blocks. | |
| Teuchos::RCP< Epetra_Map > | global_col_map |
| Stores operator column SG map. | |
| Teuchos::RCP< Epetra_Map > | global_col_map_trans |
| Stores operator column SG map for transpose. | |
|
Teuchos::RCP< const Epetra_BlockMap > | stoch_col_map |
| Stores stochastic part of column map. | |
| Teuchos::RCP< Epetra_Import > | col_importer |
| Importer from domain map to column map. | |
| Teuchos::RCP< Epetra_Import > | col_importer_trans |
| Importer from range map to column map. | |
| Teuchos::RCP< const Cijk_type > | Cijk |
| Stores triple product tensor. | |
|
Teuchos::RCP < Stokhos::EpetraOperatorOrthogPoly > | block_ops |
| Stores operators. | |
| bool | scale_op |
| Flag indicating whether operator be scaled with <^2> | |
| bool | include_mean |
| Flag indicating whether to include mean term. | |
| bool | only_use_linear |
| Flag indicating whether to only use linear terms. | |
| bool | useTranspose |
| Flag indicating whether transpose was selected. | |
| bool | use_block_apply |
| Flag indicating whether to use block Epetra_MultiVector apply. | |
| int | expansion_size |
| Number of terms in expansion. | |
| int | num_blocks |
| Number of Jacobian blocks (not necessarily equal to expansion_size) | |
| int | max_num_mat_vec |
| Maximum number of matvecs in Apply. | |
| Teuchos::RCP< Epetra_MultiVector > | input_col |
| Temporary to store result of importing input into column map. | |
| Teuchos::RCP< Epetra_MultiVector > | input_col_trans |
| Temporary to store result of importing input into column map (transpose) | |
|
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 used in Apply() | |
| Teuchos::RCP< Epetra_MultiVector > | tmp_trans |
| Temporary multivector used in Apply() for transpose. | |
| Cijk_type::k_iterator | k_begin |
| Starting k iterator. | |
| Cijk_type::k_iterator | k_end |
| Ending k iterator. | |
An Epetra operator representing the block stochastic Galerkin operator.
1.8.5