42 #ifndef __Panzer_ScatterResidual_BlockedTpetra_Hessian_hpp__ 43 #define __Panzer_ScatterResidual_BlockedTpetra_Hessian_hpp__ 46 #ifdef Panzer_BUILD_HESSIAN_SUPPORT 57 template <
typename TRAITS,
typename LO,
typename GO,
typename NodeT>
58 class ScatterResidual_BlockedTpetra<
panzer::Traits::Hessian,TRAITS,LO,GO,NodeT>
60 public PHX::EvaluatorDerived<panzer::Traits::Hessian, TRAITS>,
65 : globalIndexer_(indexer) {}
73 void preEvaluate(
typename TRAITS::PreEvalData d);
78 {
return Teuchos::rcp(
new ScatterResidual_BlockedTpetra<panzer::Traits::Hessian,TRAITS,LO,GO,NodeT>(globalIndexer_,pl)); }
81 typedef typename panzer::Traits::Hessian::ScalarT
ScalarT;
82 typedef typename TRAITS::RealType RealType;
84 typedef BlockedTpetraLinearObjContainer<RealType,LO,GO,NodeT> ContainerType;
85 typedef Tpetra::Vector<RealType,LO,GO,NodeT> VectorType;
86 typedef Tpetra::CrsMatrix<RealType,LO,GO,NodeT> CrsMatrixType;
87 typedef Tpetra::CrsGraph<LO,GO,NodeT> CrsGraphType;
88 typedef Tpetra::Map<LO,GO,NodeT> MapType;
89 typedef Tpetra::Import<LO,GO,NodeT> ImportType;
90 typedef Tpetra::Export<LO,GO,NodeT> ExportType;
96 std::vector< PHX::MDField<const ScalarT,Cell,NODE> >
scatterFields_;
102 std::vector<int> fieldIds_;
110 std::string globalDataKey_;
std::vector< PHX::MDField< const ScalarT, panzer::Cell, panzer::Point > > scatterFields_
virtual Teuchos::RCP< CloneableEvaluator > clone(const Teuchos::ParameterList &pl) const
ScatterResidual_BlockedTpetra(const Teuchos::RCP< const BlockedDOFManager< LO, GO > > &indexer)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
void evaluateFields(typename TRAITS::EvalData d)
void postRegistrationSetup(typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &vm)
Non-templated empty base class for template managers.