43 #ifndef __Panzer_ScatterDirichletResidual_Epetra_Hessian_hpp__ 44 #define __Panzer_ScatterDirichletResidual_Epetra_Hessian_hpp__ 47 #ifdef Panzer_BUILD_HESSIAN_SUPPORT 57 template<
typename TRAITS,
typename LO,
typename GO>
58 class ScatterDirichletResidual_Epetra<
panzer::Traits::Hessian,TRAITS,LO,GO>
60 public PHX::EvaluatorDerived<panzer::Traits::Hessian, TRAITS>,
64 ScatterDirichletResidual_Epetra(
const Teuchos::RCP<
const UniqueGlobalIndexer<LO,GO> > & indexer,
66 : globalIndexer_(indexer), colGlobalIndexer_(cIndexer) {}
68 ScatterDirichletResidual_Epetra(
const Teuchos::RCP<
const UniqueGlobalIndexer<LO,GO> > & indexer,
72 void postRegistrationSetup(
typename TRAITS::SetupData d,
75 void preEvaluate(
typename TRAITS::PreEvalData d);
77 void evaluateFields(
typename TRAITS::EvalData workset);
80 {
return Teuchos::rcp(
new ScatterDirichletResidual_Epetra<panzer::Traits::Hessian,TRAITS,LO,GO>(globalIndexer_,colGlobalIndexer_,pl)); }
83 typedef typename panzer::Traits::Hessian::ScalarT ScalarT;
89 std::vector< PHX::MDField<const ScalarT,Cell,NODE> >
scatterFields_;
94 std::vector<int> fieldIds_;
105 std::size_t side_subcell_dim_;
106 std::size_t local_side_id_;
110 std::string globalDataKey_;
113 bool preserveDiagonal_;
119 std::vector< PHX::MDField<const bool,Cell,NODE> > applyBC_;
121 ScatterDirichletResidual_Epetra();
std::vector< PHX::MDField< const ScalarT, panzer::Cell, panzer::Point > > scatterFields_
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
Non-templated empty base class for template managers.