Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT > Class Template Reference

#include <Panzer_ScatterResidual_BlockedTpetra.hpp>

Inheritance diagram for panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >:
Inheritance graph
[legend]

Public Member Functions

 ScatterResidual_BlockedTpetra (const Teuchos::RCP< const BlockedDOFManager > &indexer)
 
 ScatterResidual_BlockedTpetra (const Teuchos::RCP< const BlockedDOFManager > &indexer, const Teuchos::ParameterList &p)
 
void postRegistrationSetup (typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &vm)
 
void preEvaluate (typename TRAITS::PreEvalData d)
 
void evaluateFields (typename TRAITS::EvalData workset)
 
virtual Teuchos::RCP
< CloneableEvaluator
clone (const Teuchos::ParameterList &pl) const
 
- Public Member Functions inherited from panzer::EvaluatorWithBaseImpl< TRAITS >
void setDetailsIndex (const int di)
 An evaluator builder sets the details index. More...
 
- Public Member Functions inherited from PHX::EvaluatorWithBaseImpl< TRAITS >
virtual void evaluateFields (typename Traits::EvalData d) override=0
 
- Public Member Functions inherited from PHX::Evaluator< Traits >
 Evaluator ()
 
virtual ~Evaluator ()
 
virtual void postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &vm)=0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
evaluatedFields () const =0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
contributedFields () const =0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
dependentFields () const =0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
unsharedFields () const =0
 
virtual void preEvaluate (typename Traits::PreEvalData d)=0
 
virtual void postEvaluate (typename Traits::PostEvalData d)=0
 
virtual const std::string & getName () const =0
 
virtual void bindField (const PHX::FieldTag &ft, const PHX::any &f)=0
 
virtual PHX::DeviceEvaluator
< Traits > * 
createDeviceEvaluator () const =0
 
virtual void rebuildDeviceEvaluator (PHX::DeviceEvaluator< Traits > *e) const =0
 
virtual void deleteDeviceEvaluator (PHX::DeviceEvaluator< Traits > *e) const =0
 
virtual void printFieldValues (std::ostream &os) const =0
 
- Public Member Functions inherited from panzer::DomainEvaluator
 DomainEvaluator (DomainType domain=ALL)
 Constructor. More...
 
virtual ~DomainEvaluator ()=default
 Default destructor. More...
 
void setDomain (const DomainType domain)
 Set the domain for the evaluator. More...
 
DomainType getDomain ()
 Get the domain for the evaluator. More...
 
virtual int cellStartIndex (const panzer::Workset &workset) const
 Returns the starting cell for the specified domain for a given workset. More...
 
virtual int cellEndIndex (const panzer::Workset &workset) const
 Returns the non-inclusive end cell for the specified domain for a given workset. More...
 
- Public Member Functions inherited from panzer::CloneableEvaluator
 CloneableEvaluator ()
 
virtual ~CloneableEvaluator ()
 

Private Types

typedef
panzer::Traits::Residual::ScalarT 
ScalarT
 
typedef TRAITS::RealType RealType
 
typedef
BlockedTpetraLinearObjContainer
< RealType, LO, GO, NodeT > 
ContainerType
 
typedef Tpetra::Vector
< RealType, LO, GO, NodeT > 
VectorType
 
typedef Tpetra::CrsMatrix
< RealType, LO, GO, NodeT > 
CrsMatrixType
 
typedef Tpetra::CrsGraph< LO,
GO, NodeT > 
CrsGraphType
 
typedef Tpetra::Map< LO, GO,
NodeT > 
MapType
 
typedef Tpetra::Import< LO, GO,
NodeT > 
ImportType
 
typedef Tpetra::Export< LO, GO,
NodeT > 
ExportType
 

Private Member Functions

 ScatterResidual_BlockedTpetra ()
 

Private Attributes

Teuchos::RCP< PHX::FieldTagscatterHolder_
 Dummy evalauted field so that the evaluator will have something to do. More...
 
std::vector< PHX::MDField
< const ScalarT, Cell, NODE > > 
scatterFields_
 Fields that need to be scattered will be put in this vector. More...
 
Teuchos::RCP< const
BlockedDOFManager
globalIndexer_
 Maps the local (field,element,basis) triplet to a global ID for scattering. More...
 
std::vector< Teuchos::RCP
< const panzer::GlobalIndexer > > 
fieldGlobalIndexers_
 Vector of global indexers, one for each scattered field respectively. More...
 
std::vector< int > fieldIds_
 Field IDs in the local product vector block (not global field id) More...
 
std::vector< int > productVectorBlockIndex_
 
Teuchos::RCP< const std::map
< std::string, std::string > > 
fieldMap_
 
std::string globalDataKey_
 
Teuchos::RCP< const
BlockedTpetraLinearObjContainer
< RealType, LO, GO, NodeT > > 
blockedContainer_
 
PHX::View< LO ** > worksetLIDs_
 Local indices for unknowns. More...
 
std::vector< PHX::View< int * > > fieldOffsets_
 Offset into the cell lids for each field. More...
 

Additional Inherited Members

- Public Types inherited from panzer::DomainEvaluator
enum  DomainType : int {
  OWNED =0, GHOST =1, REAL =2, VIRTUAL =3,
  EXTERNAL =4, ALL =5
}
 Domain types supported by worksets. More...
 
- Protected Attributes inherited from panzer::EvaluatorWithBaseImpl< TRAITS >
WorksetDetailsAccessor wda
 

Detailed Description

template<typename TRAITS, typename LO, typename GO, typename NodeT>
class panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >

Definition at line 104 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

Member Typedef Documentation

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef panzer::Traits::Residual::ScalarT panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::ScalarT
private

Definition at line 127 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef TRAITS::RealType panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::RealType
private

Definition at line 128 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef BlockedTpetraLinearObjContainer<RealType,LO,GO,NodeT> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::ContainerType
private

Definition at line 130 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef Tpetra::Vector<RealType,LO,GO,NodeT> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::VectorType
private

Definition at line 131 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef Tpetra::CrsMatrix<RealType,LO,GO,NodeT> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::CrsMatrixType
private

Definition at line 132 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef Tpetra::CrsGraph<LO,GO,NodeT> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::CrsGraphType
private

Definition at line 133 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef Tpetra::Map<LO,GO,NodeT> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::MapType
private

Definition at line 134 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef Tpetra::Import<LO,GO,NodeT> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::ImportType
private

Definition at line 135 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
typedef Tpetra::Export<LO,GO,NodeT> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::ExportType
private

Definition at line 136 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

Constructor & Destructor Documentation

template<typename TRAITS , typename LO , typename GO , typename NodeT >
panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::ScatterResidual_BlockedTpetra ( const Teuchos::RCP< const BlockedDOFManager > &  indexer)
inline

Definition at line 110 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::ScatterResidual_BlockedTpetra ( const Teuchos::RCP< const BlockedDOFManager > &  indexer,
const Teuchos::ParameterList p 
)
template<typename TRAITS , typename LO , typename GO , typename NodeT >
panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::ScatterResidual_BlockedTpetra ( )
private

Member Function Documentation

template<typename TRAITS , typename LO , typename GO , typename NodeT >
void panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::postRegistrationSetup ( typename TRAITS::SetupData  d,
PHX::FieldManager< TRAITS > &  vm 
)
template<typename TRAITS , typename LO , typename GO , typename NodeT >
void panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::preEvaluate ( typename TRAITS::PreEvalData  d)
template<typename TRAITS , typename LO , typename GO , typename NodeT >
void panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::evaluateFields ( typename TRAITS::EvalData  workset)
template<typename TRAITS , typename LO , typename GO , typename NodeT >
virtual Teuchos::RCP<CloneableEvaluator> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::clone ( const Teuchos::ParameterList pl) const
inlinevirtual

Member Data Documentation

template<typename TRAITS , typename LO , typename GO , typename NodeT >
Teuchos::RCP<PHX::FieldTag> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::scatterHolder_
private

Dummy evalauted field so that the evaluator will have something to do.

Definition at line 139 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
std::vector< PHX::MDField<const ScalarT,Cell,NODE> > panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::scatterFields_
private

Fields that need to be scattered will be put in this vector.

Definition at line 142 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
Teuchos::RCP<const BlockedDOFManager> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::globalIndexer_
private

Maps the local (field,element,basis) triplet to a global ID for scattering.

Definition at line 145 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
std::vector<Teuchos::RCP<const panzer::GlobalIndexer> > panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::fieldGlobalIndexers_
private

Vector of global indexers, one for each scattered field respectively.

Definition at line 148 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
std::vector<int> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::fieldIds_
private

Field IDs in the local product vector block (not global field id)

Definition at line 151 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
std::vector<int> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::productVectorBlockIndex_
private

Returns the index into the Thyra ProductVector sub-block. Size of number of fields to scatter

Definition at line 155 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
Teuchos::RCP<const std::map<std::string,std::string> > panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::fieldMap_
private

Definition at line 161 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
std::string panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::globalDataKey_
private

Definition at line 163 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
Teuchos::RCP<const BlockedTpetraLinearObjContainer<RealType,LO,GO,NodeT> > panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::blockedContainer_
private

Definition at line 164 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
PHX::View<LO**> panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::worksetLIDs_
private

Local indices for unknowns.

Definition at line 167 of file Panzer_ScatterResidual_BlockedTpetra.hpp.

template<typename TRAITS , typename LO , typename GO , typename NodeT >
std::vector<PHX::View<int*> > panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >::fieldOffsets_
private

Offset into the cell lids for each field.

Definition at line 170 of file Panzer_ScatterResidual_BlockedTpetra.hpp.


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