Panzer Version of the Day
Loading...
Searching...
No Matches
Panzer_DOFGradient.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Panzer: A partial differential equation assembly
4// engine for strongly coupled complex multiphysics systems
5//
6// Copyright 2011 NTESS and the Panzer contributors.
7// SPDX-License-Identifier: BSD-3-Clause
8// *****************************************************************************
9// @HEADER
10
11#ifndef PANZER_EVALUATOR_DOF_GRADIENT_DECL_HPP
12#define PANZER_EVALUATOR_DOF_GRADIENT_DECL_HPP
13
14#include "Phalanx_Evaluator_Macros.hpp"
15#include "Phalanx_MDField.hpp"
17
18namespace panzer {
19
21template <typename EvalT, typename TRAITS>
23 public PHX::EvaluatorDerived<EvalT, TRAITS> {
24public:
25
26 DOFGradient(const Teuchos::ParameterList& p);
27
35 DOFGradient(const PHX::FieldTag & input,
36 const PHX::FieldTag & output,
37 const panzer::BasisDescriptor & bd,
39
40 void postRegistrationSetup(typename TRAITS::SetupData d,
42
43 void evaluateFields(typename TRAITS::EvalData d);
44
45private:
46
47 typedef typename EvalT::ScalarT ScalarT;
48
52
53 // <cell,point>
54 PHX::MDField<const ScalarT,Cell,Point> dof_value;
55 // <cell,point,dim>
56 PHX::MDField<ScalarT> dof_gradient;
57
58 std::string basis_name;
59 std::size_t basis_index;
60};
61
62}
63
64#endif
Interpolates basis DOF values to IP DOF Gradient values.
PHX::MDField< ScalarT > dof_gradient
panzer::IntegrationDescriptor id_
panzer::BasisDescriptor bd_
void postRegistrationSetup(typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &fm)
PHX::MDField< const ScalarT, Cell, Point > dof_value
void evaluateFields(typename TRAITS::EvalData d)
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.