43 #ifndef __Panzer_GatherSolution_BlockedEpetra_Hessian_hpp__ 44 #define __Panzer_GatherSolution_BlockedEpetra_Hessian_hpp__ 47 #ifdef Panzer_BUILD_HESSIAN_SUPPORT 57 template<
typename TRAITS,
typename LO,
typename GO>
58 class GatherSolution_BlockedEpetra<
panzer::Traits::Hessian,TRAITS,LO,GO>
60 public PHX::EvaluatorDerived<panzer::Traits::Hessian, TRAITS>,
67 : indexers_(indexers) {}
75 void preEvaluate(
typename TRAITS::PreEvalData d);
80 {
return Teuchos::rcp(
new GatherSolution_BlockedEpetra<panzer::Traits::Hessian,TRAITS,LO,GO>(indexers_,pl)); }
83 typedef typename panzer::Traits::Hessian EvalT;
84 typedef typename panzer::Traits::Hessian::ScalarT
ScalarT;
88 std::vector<std::string> indexerNames_;
90 std::string globalDataKey_;
92 std::vector<Teuchos::RCP<const UniqueGlobalIndexer<LO,int> > > indexers_;
93 std::vector<int> indexerIds_;
94 std::vector<int> subFieldIds_;
96 std::vector< PHX::MDField<ScalarT,Cell,NODE> > gatherFields_;
98 bool useTimeDerivativeSolutionVector_;
100 std::string sensitivitiesName_;
103 int gatherSeedIndex_;
106 bool firstSensitivitiesAvailable_;
108 bool firstApplySensitivities_;
111 std::string sensitivities2ndPrefix_;
112 bool secondSensitivitiesAvailable_;
113 bool secondApplySensitivities_;
123 #endif // end hessian support
PHX::MDField< ScalarT > vector
virtual Teuchos::RCP< CloneableEvaluator > clone(const Teuchos::ParameterList &pl) const
void postRegistrationSetup(typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &vm)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
GatherSolution_BlockedEpetra(const Teuchos::ParameterList &p)
void evaluateFields(typename TRAITS::EvalData d)
Non-templated empty base class for template managers.