Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
Stokhos::DiagEpetraOp Class Reference

An Epetra operator representing the block stochastic Galerkin operator. More...

#include <Stokhos_DiagEpetraOp.hpp>

Inheritance diagram for Stokhos::DiagEpetraOp:
Inheritance graph
[legend]

Public Member Functions

 DiagEpetraOp (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< const Stokhos::OrthogPolyBasis< int, double > > &sg_basis, const Teuchos::RCP< const Stokhos::Sparse3Tensor< int, double > > &Cijk, const Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > &ops)
 Constructor. More...
 
virtual ~DiagEpetraOp ()
 Destructor. More...
 
virtual void reset (const Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > &ops)
 Reset operator blocks. More...
 
virtual Teuchos::RCP< const
Stokhos::EpetraOperatorOrthogPoly
getOperatorBlocks () const
 Get operator blocks. More...
 
virtual Teuchos::RCP
< Stokhos::EpetraOperatorOrthogPoly
getOperatorBlocks ()
 Get operator blocks. More...
 
virtual int SetUseTranspose (bool UseTranspose)
 Set to true if the transpose of the operator is requested. More...
 
virtual int Apply (std::vector< Teuchos::RCP< const Epetra_CrsMatrix > > &sg_J_all, std::vector< Teuchos::RCP< Epetra_CrsMatrix > > &sg_Kkk_all) const
 Returns Diagonal blocks of SG matrix when PC coefficients of the SG matrix are given. 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_CommComm () const
 Returns a reference to the Epetra_Comm communicator associated with this operator. More...
 
virtual const Epetra_MapOperatorDomainMap () const
 Returns the Epetra_Map object associated with the domain of this matrix operator. More...
 
virtual const Epetra_MapOperatorRangeMap () const
 Returns the Epetra_Map object associated with the range of this matrix operator. More...
 
virtual const double ApplyTime () const
 Returns the time spent applying this operator. More...
 
- Public Member Functions inherited from Epetra_Operator
virtual int Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const =0
 

Protected Attributes

std::string label
 Label for operator. More...
 
Teuchos::RCP< const Epetra_Mapdomain_base_map
 Stores domain base map. More...
 
Teuchos::RCP< const Epetra_Maprange_base_map
 Stores range base map. More...
 
Teuchos::RCP< const Epetra_Mapdomain_sg_map
 Stores domain SG map. More...
 
Teuchos::RCP< const Epetra_Maprange_sg_map
 Stores range SG map. More...
 
Teuchos::RCP< const
Stokhos::OrthogPolyBasis< int,
double > > 
sg_basis
 Stochastic Galerking basis. More...
 
Teuchos::RCP< const
Stokhos::Sparse3Tensor< int,
double > > 
Cijk
 Stores triple product tensor. More...
 
Teuchos::RCP
< Stokhos::EpetraOperatorOrthogPoly
block_ops
 Stores operators. More...
 
bool useTranspose
 Flag indicating whether transpose was selected. More...
 
int expansion_size
 Number of terms in expansion. More...
 
int num_blocks
 Number of Jacobian blocks (not necessarily equal to expansion_size) More...
 
Teuchos::Array< Teuchos::RCP
< const Epetra_MultiVector > > 
input_block
 MultiVectors for each block for Apply() input. More...
 
Teuchos::Array< Teuchos::RCP
< Epetra_MultiVector > > 
result_block
 MultiVectors for each block for Apply() result. More...
 
Teuchos::RCP< Epetra_MultiVectortmp
 Temporary multivector used in Apply() More...
 
Teuchos::RCP< Epetra_MultiVectortmp_trans
 Temporary multivector used in Apply() for transpose. More...
 
Teuchos::RCP< Teuchos::TimeApplyTimer
 Operation Timer. More...
 

Private Member Functions

 DiagEpetraOp (const DiagEpetraOp &)
 Private to prohibit copying. More...
 
DiagEpetraOpoperator= (const DiagEpetraOp &)
 Private to prohibit copying. More...
 

Detailed Description

An Epetra operator representing the block stochastic Galerkin operator.

Definition at line 66 of file Stokhos_DiagEpetraOp.hpp.

Constructor & Destructor Documentation

Stokhos::DiagEpetraOp::DiagEpetraOp ( 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< const Stokhos::OrthogPolyBasis< int, double > > &  sg_basis,
const Teuchos::RCP< const Stokhos::Sparse3Tensor< int, double > > &  Cijk,
const Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > &  ops 
)

Constructor.

Definition at line 49 of file Stokhos_DiagEpetraOp.cpp.

Stokhos::DiagEpetraOp::~DiagEpetraOp ( )
virtual

Destructor.

Definition at line 75 of file Stokhos_DiagEpetraOp.cpp.

Stokhos::DiagEpetraOp::DiagEpetraOp ( const DiagEpetraOp )
private

Private to prohibit copying.

Member Function Documentation

void Stokhos::DiagEpetraOp::reset ( const Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > &  ops)
virtual

Reset operator blocks.

Definition at line 80 of file Stokhos_DiagEpetraOp.cpp.

Teuchos::RCP< const Stokhos::EpetraOperatorOrthogPoly > Stokhos::DiagEpetraOp::getOperatorBlocks ( ) const
virtual

Get operator blocks.

Definition at line 87 of file Stokhos_DiagEpetraOp.cpp.

Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > Stokhos::DiagEpetraOp::getOperatorBlocks ( )
virtual

Get operator blocks.

Definition at line 93 of file Stokhos_DiagEpetraOp.cpp.

int Stokhos::DiagEpetraOp::SetUseTranspose ( bool  UseTranspose)
virtual

Set to true if the transpose of the operator is requested.

Implements Epetra_Operator.

Definition at line 99 of file Stokhos_DiagEpetraOp.cpp.

int Stokhos::DiagEpetraOp::Apply ( std::vector< Teuchos::RCP< const Epetra_CrsMatrix > > &  sg_J_all,
std::vector< Teuchos::RCP< Epetra_CrsMatrix > > &  sg_Kkk_all 
) const
virtual

Returns Diagonal blocks of SG matrix when PC coefficients of the SG matrix are given.

Definition at line 109 of file Stokhos_DiagEpetraOp.cpp.

int Stokhos::DiagEpetraOp::ApplyInverse ( const Epetra_MultiVector X,
Epetra_MultiVector Y 
) const
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 201 of file Stokhos_DiagEpetraOp.cpp.

double Stokhos::DiagEpetraOp::NormInf ( ) const
virtual

Returns an approximate infinity norm of the operator matrix.

Implements Epetra_Operator.

Definition at line 209 of file Stokhos_DiagEpetraOp.cpp.

const char * Stokhos::DiagEpetraOp::Label ( ) const
virtual

Returns a character string describing the operator.

Implements Epetra_Operator.

Definition at line 216 of file Stokhos_DiagEpetraOp.cpp.

bool Stokhos::DiagEpetraOp::UseTranspose ( ) const
virtual

Returns the current UseTranspose setting.

Implements Epetra_Operator.

Definition at line 222 of file Stokhos_DiagEpetraOp.cpp.

bool Stokhos::DiagEpetraOp::HasNormInf ( ) const
virtual

Returns true if the this object can provide an approximate Inf-norm, false otherwise.

Implements Epetra_Operator.

Definition at line 228 of file Stokhos_DiagEpetraOp.cpp.

const Epetra_Comm & Stokhos::DiagEpetraOp::Comm ( ) const
virtual

Returns a reference to the Epetra_Comm communicator associated with this operator.

Implements Epetra_Operator.

Definition at line 234 of file Stokhos_DiagEpetraOp.cpp.

const Epetra_Map & Stokhos::DiagEpetraOp::OperatorDomainMap ( ) const
virtual

Returns the Epetra_Map object associated with the domain of this matrix operator.

Implements Epetra_Operator.

Definition at line 239 of file Stokhos_DiagEpetraOp.cpp.

const Epetra_Map & Stokhos::DiagEpetraOp::OperatorRangeMap ( ) const
virtual

Returns the Epetra_Map object associated with the range of this matrix operator.

Implements Epetra_Operator.

Definition at line 245 of file Stokhos_DiagEpetraOp.cpp.

virtual const double Stokhos::DiagEpetraOp::ApplyTime ( ) const
inlinevirtual

Returns the time spent applying this operator.

Definition at line 147 of file Stokhos_DiagEpetraOp.hpp.

DiagEpetraOp& Stokhos::DiagEpetraOp::operator= ( const DiagEpetraOp )
private

Private to prohibit copying.

Member Data Documentation

std::string Stokhos::DiagEpetraOp::label
protected

Label for operator.

Definition at line 161 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::DiagEpetraOp::domain_base_map
protected

Stores domain base map.

Definition at line 164 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::DiagEpetraOp::range_base_map
protected

Stores range base map.

Definition at line 167 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::DiagEpetraOp::domain_sg_map
protected

Stores domain SG map.

Definition at line 170 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::DiagEpetraOp::range_sg_map
protected

Stores range SG map.

Definition at line 173 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<const Stokhos::OrthogPolyBasis<int,double> > Stokhos::DiagEpetraOp::sg_basis
protected

Stochastic Galerking basis.

Definition at line 176 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<const Stokhos::Sparse3Tensor<int,double> > Stokhos::DiagEpetraOp::Cijk
protected

Stores triple product tensor.

Definition at line 179 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<Stokhos::EpetraOperatorOrthogPoly > Stokhos::DiagEpetraOp::block_ops
protected

Stores operators.

Definition at line 182 of file Stokhos_DiagEpetraOp.hpp.

bool Stokhos::DiagEpetraOp::useTranspose
protected

Flag indicating whether transpose was selected.

Definition at line 185 of file Stokhos_DiagEpetraOp.hpp.

int Stokhos::DiagEpetraOp::expansion_size
protected

Number of terms in expansion.

Definition at line 188 of file Stokhos_DiagEpetraOp.hpp.

int Stokhos::DiagEpetraOp::num_blocks
protected

Number of Jacobian blocks (not necessarily equal to expansion_size)

Definition at line 191 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::Array< Teuchos::RCP<const Epetra_MultiVector> > Stokhos::DiagEpetraOp::input_block
mutableprotected

MultiVectors for each block for Apply() input.

Definition at line 194 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::Array< Teuchos::RCP<Epetra_MultiVector> > Stokhos::DiagEpetraOp::result_block
mutableprotected

MultiVectors for each block for Apply() result.

Definition at line 197 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<Epetra_MultiVector> Stokhos::DiagEpetraOp::tmp
mutableprotected

Temporary multivector used in Apply()

Definition at line 200 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<Epetra_MultiVector> Stokhos::DiagEpetraOp::tmp_trans
mutableprotected

Temporary multivector used in Apply() for transpose.

Definition at line 203 of file Stokhos_DiagEpetraOp.hpp.

Teuchos::RCP<Teuchos::Time> Stokhos::DiagEpetraOp::ApplyTimer
protected

Operation Timer.

Definition at line 206 of file Stokhos_DiagEpetraOp.hpp.


The documentation for this class was generated from the following files: