11#ifndef PANZER_EVALUATOR_GATHER_TANGENTS_DECL_HPP
12#define PANZER_EVALUATOR_GATHER_TANGENTS_DECL_HPP
14#include "Phalanx_Evaluator_Macros.hpp"
15#include "Phalanx_MDField.hpp"
17#include "Teuchos_ParameterList.hpp"
23#include "Intrepid2_CellTools.hpp"
30template<
typename EvalT,
typename Traits>
32 :
public PHX::EvaluatorWithBaseImpl<Traits>,
33 public PHX::EvaluatorDerived<EvalT, Traits>,
45 virtual Teuchos::RCP<CloneableEvaluator>
clone(
const Teuchos::ParameterList & pl)
const
58 Teuchos::RCP<const PureBasis>
basis_;
60 Intrepid2::RefSubcellParametrization<PHX::Device>::ConstViewType
edgeParam_;
63 PHX::MDField<const double,Cell,IP,Dim,Dim>
constJac_;
66 Kokkos::View<unsigned int*>
keys_;
Non-templated empty base class for template managers.
Gathers tangent vectors per field from the global indexer and stores them in the field manager.
PointValues2< double > pointValues_
Intrepid2::RefSubcellParametrization< PHX::Device >::ConstViewType edgeParam_
Kokkos::View< unsigned int * > keys_
void evaluateFields(typename Traits::EvalData d)
Teuchos::RCP< const PureBasis > basis_
Kokkos::View< Intrepid2::Orientation * > orientations_
PHX::MDField< const double, Cell, IP, Dim, Dim > constJac_
PHX::MDField< ScalarT, Cell, NODE, Dim > gatherFieldTangents_
virtual Teuchos::RCP< CloneableEvaluator > clone(const Teuchos::ParameterList &pl) const
void postRegistrationSetup(typename Traits::SetupData d, PHX::FieldManager< Traits > &vm)
Teuchos::RCP< const PointRule > pointRule_
User-defined data passed to PHX::Evaluator::postRegistrationSetup() during the one-time setup phase.