Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Private Attributes | List of all members
panzer::SGEpetraLinearObjContainer Class Reference

#include <Panzer_SGEpetraLinearObjContainer.hpp>

Inheritance diagram for panzer::SGEpetraLinearObjContainer:
Inheritance graph
[legend]

Public Types

typedef std::vector
< Teuchos::RCP
< EpetraLinearObjContainer > > 
CoeffVector
 
typedef CoeffVector::iterator iterator
 
typedef CoeffVector::const_iterator const_iterator
 
- Public Types inherited from panzer::LinearObjContainer
enum  Members { X =0x1, DxDt =0x2, F =0x4, Mat =0x8 }
 

Public Member Functions

 SGEpetraLinearObjContainer (const CoeffVector &coeffs, const Teuchos::RCP< Stokhos::OrthogPolyExpansion< int, double > > &basis)
 
virtual void initialize ()
 
virtual std::size_t size () const
 
CoeffVector::iterator begin ()
 
CoeffVector::iterator end ()
 
CoeffVector::const_iterator begin () const
 
CoeffVector::const_iterator end () const
 
Teuchos::RCP
< Stokhos::OrthogPolyExpansion
< int, double > > 
getExpansion () const
 
void storeForSafeKeeping (const Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > &v)
 
- Public Member Functions inherited from panzer::LinearObjContainer
virtual ~LinearObjContainer ()
 
- Public Member Functions inherited from panzer::GlobalEvaluationData_Default
 GlobalEvaluationData_Default ()
 
 GlobalEvaluationData_Default (const GlobalEvaluationData_Default &s)
 
virtual void ghostToGlobal (int mem)
 
virtual void globalToGhost (int mem)
 
virtual void initializeData ()
 
void setRequiresDirichletAdjustment (bool b)
 
bool requiresDirichletAdjustment () const
 
- Public Member Functions inherited from panzer::GlobalEvaluationData
virtual ~GlobalEvaluationData ()=0
 

Private Attributes

CoeffVector coeffs_
 
Teuchos::RCP
< Stokhos::OrthogPolyExpansion
< int, double > > 
expansion_
 
std::vector< Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly > > 
sg_vecs_
 

Detailed Description

Linear object container for SG-Epetra objects.

Definition at line 61 of file Panzer_SGEpetraLinearObjContainer.hpp.

Member Typedef Documentation

Definition at line 63 of file Panzer_SGEpetraLinearObjContainer.hpp.

typedef CoeffVector::iterator panzer::SGEpetraLinearObjContainer::iterator

Definition at line 64 of file Panzer_SGEpetraLinearObjContainer.hpp.

typedef CoeffVector::const_iterator panzer::SGEpetraLinearObjContainer::const_iterator

Definition at line 65 of file Panzer_SGEpetraLinearObjContainer.hpp.

Constructor & Destructor Documentation

panzer::SGEpetraLinearObjContainer::SGEpetraLinearObjContainer ( const CoeffVector coeffs,
const Teuchos::RCP< Stokhos::OrthogPolyExpansion< int, double > > &  basis 
)

Definition at line 51 of file Panzer_SGEpetraLinearObjContainer.cpp.

Member Function Documentation

void panzer::SGEpetraLinearObjContainer::initialize ( )
virtual

Implements panzer::LinearObjContainer.

Definition at line 56 of file Panzer_SGEpetraLinearObjContainer.cpp.

virtual std::size_t panzer::SGEpetraLinearObjContainer::size ( ) const
inlinevirtual

Definition at line 72 of file Panzer_SGEpetraLinearObjContainer.hpp.

CoeffVector::iterator panzer::SGEpetraLinearObjContainer::begin ( )
inline

Definition at line 75 of file Panzer_SGEpetraLinearObjContainer.hpp.

CoeffVector::iterator panzer::SGEpetraLinearObjContainer::end ( )
inline

Definition at line 76 of file Panzer_SGEpetraLinearObjContainer.hpp.

CoeffVector::const_iterator panzer::SGEpetraLinearObjContainer::begin ( ) const
inline

Definition at line 78 of file Panzer_SGEpetraLinearObjContainer.hpp.

CoeffVector::const_iterator panzer::SGEpetraLinearObjContainer::end ( ) const
inline

Definition at line 79 of file Panzer_SGEpetraLinearObjContainer.hpp.

Teuchos::RCP<Stokhos::OrthogPolyExpansion<int,double> > panzer::SGEpetraLinearObjContainer::getExpansion ( ) const
inline

Definition at line 81 of file Panzer_SGEpetraLinearObjContainer.hpp.

void panzer::SGEpetraLinearObjContainer::storeForSafeKeeping ( const Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > &  v)
inline

Used to get around a minor flaw in the Stokhos::EpetraVectorOrthogPoly where it contains a view of the data it uses and distributes through an RCP mechansism. When it is deallocated then the eventual content of those RCPs (while still technically valid pointers to Epetra_Vector objects that are views of another Epetra_Vector that have been deallocated) is no longer valid. Yuck!

Definition at line 90 of file Panzer_SGEpetraLinearObjContainer.hpp.

Member Data Documentation

CoeffVector panzer::SGEpetraLinearObjContainer::coeffs_
private

Definition at line 94 of file Panzer_SGEpetraLinearObjContainer.hpp.

Teuchos::RCP<Stokhos::OrthogPolyExpansion<int,double> > panzer::SGEpetraLinearObjContainer::expansion_
private

Definition at line 95 of file Panzer_SGEpetraLinearObjContainer.hpp.

std::vector<Teuchos::RCP<Stokhos::EpetraVectorOrthogPoly> > panzer::SGEpetraLinearObjContainer::sg_vecs_
private

Definition at line 96 of file Panzer_SGEpetraLinearObjContainer.hpp.


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