Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Panzer_GatherBasisCoordinates_decl.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_GATHER_BASIS_COORDINATES_DECL_HPP
12 #define PANZER_EVALUATOR_GATHER_BASIS_COORDINATES_DECL_HPP
13 
14 #include "Phalanx_config.hpp"
15 #include "Phalanx_Evaluator_Macros.hpp"
16 #include "Phalanx_MDField.hpp"
17 
19 
20 #include "Panzer_Dimension.hpp"
21 #include "Panzer_Traits.hpp"
23 
24 #include "Panzer_PureBasis.hpp"
25 
27 
28 namespace panzer {
29 
33 template<typename EvalT, typename TRAITS>
35  : public panzer::EvaluatorWithBaseImpl<TRAITS>,
36  public PHX::EvaluatorDerived<EvalT, TRAITS> {
37 public:
38 
40 
41  void postRegistrationSetup(typename TRAITS::SetupData d,
43 
44  void evaluateFields(typename TRAITS::EvalData d);
45 
46  static std::string fieldName(const std::string & basisName);
47 
48 private:
49  typedef typename EvalT::ScalarT ScalarT;
50 
51  std::string basisName_;
52  std::vector<std::string>::size_type basisIndex_;
54 
56 };
57 
58 }
59 
60 // **************************************************************
61 #endif
void evaluateFields(typename TRAITS::EvalData d)
void postRegistrationSetup(typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &vm)
std::vector< std::string >::size_type basisIndex_
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
PHX::MDField< ScalarT, Cell, BASIS, Dim > basisCoordinates_
Description and data layouts associated with a particular basis.
static std::string fieldName(const std::string &basisName)
Gathers coordinates for the basis function from the workset and stores them in the field manager...