10 #ifndef STOKHOS_BLOCK_DIAGONAL_OPERATOR_HPP
11 #define STOKHOS_BLOCK_DIAGONAL_OPERATOR_HPP
15 #include "EpetraExt_MultiComm.h"
81 virtual const char*
Label ()
const;
153 #endif // STOKHOS_BLOCK_DIAGIONAL_OPERATOR_HPP
virtual const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this matrix operator.
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 ...
virtual int SetUseTranspose(bool UseTranspose)
Set to true if the transpose of the operator is requested.
BlockDiagonalOperator(const Teuchos::RCP< const EpetraExt::MultiComm > &mp_comm, int num_mp_blocks, 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_mp_map, const Teuchos::RCP< const Epetra_Map > &range_mp_map)
Constructor.
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
Teuchos::RCP< Stokhos::ProductEpetraOperator > block_ops
Stores operators.
bool useTranspose
Whether to use transpose.
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 ...
virtual double NormInf() const
Returns an approximate infinity norm of the operator matrix.
virtual void setupOperator(const Teuchos::RCP< Stokhos::ProductEpetraOperator > &ops)
Setup operator.
int num_mp_blocks
Stores number of blocks.
std::string label
Label for operator.
An Epetra operator representing the block stochastic Galerkin operator.
virtual bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Teuchos::RCP< const EpetraExt::MultiComm > mp_comm
Stores MP parallel communicator.
Teuchos::RCP< const Epetra_Map > range_mp_map
Stores range MP map.
Teuchos::RCP< const Epetra_Map > range_base_map
Stores range base map.
BlockDiagonalOperator & operator=(const BlockDiagonalOperator &)
Private to prohibit copying.
virtual Teuchos::RCP< Stokhos::ProductEpetraOperator > getMPOps()
Get multi-point ops.
virtual const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this matrix operator. ...
virtual const char * Label() const
Returns a character string describing the operator.
Teuchos::RCP< const Epetra_Map > domain_mp_map
Stores domain MP map.
virtual ~BlockDiagonalOperator()
Destructor.
Teuchos::RCP< const Epetra_Map > domain_base_map
Stores domain base map.
virtual const Epetra_Comm & Comm() const
Returns a reference to the Epetra_Comm communicator associated with this operator.