Stokhos  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Member Functions | Protected Attributes | List of all members
Stokhos::PCECovarianceOp Class Reference

An Epetra operator representing the covariance operator of a polynomial chaos expansion. More...

#include <Stokhos_PCECovarianceOp.hpp>

Inheritance diagram for Stokhos::PCECovarianceOp:
Inheritance graph
[legend]
Collaboration diagram for Stokhos::PCECovarianceOp:
Collaboration graph
[legend]

Public Member Functions

 PCECovarianceOp (const Stokhos::VectorOrthogPoly< Epetra_Vector > &X_poly)
 Constructor with polynomial X.
 
 PCECovarianceOp (const Teuchos::RCP< const EpetraExt::BlockVector > &X, const Stokhos::OrthogPolyBasis< int, double > &basis)
 Constructor with block-vector X.
 
 PCECovarianceOp (const Teuchos::RCP< const Epetra_MultiVector > &X, const Stokhos::OrthogPolyBasis< int, double > &basis)
 Constructor with multi-vector X.
 
virtual ~PCECovarianceOp ()
 Destructor.
 
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 std::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.
 
const Epetra_BlockMap & CoeffMap () const
 Returns PCE coefficient map.
 

Protected Attributes

std::string label
 Label for operator.
 
Teuchos::RCP< const
Epetra_MultiVector > 
X
 Multivector X defining A = X*S*X^T.
 
Teuchos::Array< double > s
 Scaling vector in A = X*S*X^T.
 
bool useTranspose
 Flag indicating whether transpose was selected.
 
Teuchos::RCP< Epetra_Map > tmp_map
 Map needed for temporary vector.
 
Teuchos::RCP< Epetra_MultiVector > tmp
 Temporary vector needed for apply.
 

Detailed Description

An Epetra operator representing the covariance operator of a polynomial chaos expansion.

If X is the matrix whose columns are the coefficients of a given polynomial chaos expansion, starting at order 1 (not including mean term), and S is a diagonal matrix whose entries are given by the norm-squared of the basis polynomials, then the covariance operator is A = X*S*X^T.


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