Panzer Version of the Day
Loading...
Searching...
No Matches
Panzer_FieldSpy.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_FieldSpy_hpp__
12#define __Panzer_FieldSpy_hpp__
13
14#include "PanzerDiscFE_config.hpp"
15#include "Phalanx_Evaluator_WithBaseImpl.hpp"
16#include "Phalanx_Evaluator_Derived.hpp"
17#include "Phalanx_FieldManager.hpp"
18#include "Panzer_Dimension.hpp"
20#include <string>
21
22namespace panzer {
23
26template<typename EvalT, typename Traits>
27class FieldSpy : public PHX::EvaluatorWithBaseImpl<Traits>,
28 public PHX::EvaluatorDerived<EvalT, Traits> {
29
30public:
31 FieldSpy(const std::string & name,
32 const Teuchos::RCP<PHX::DataLayout> & data_layout);
33
34 void evaluateFields(typename Traits::EvalData d);
35
36 const PHX::FieldTag & getRequiredFieldTag() const
37 { return *dummyField; }
38
39private:
40 typedef typename EvalT::ScalarT ScalarT;
41
42 Teuchos::RCP<PHX::FieldTag> dummyField;
43 PHX::MDField<const ScalarT,panzer::Cell,panzer::Point> source;
44};
45
46}
47
48#endif
const PHX::FieldTag & getRequiredFieldTag() const
void evaluateFields(typename Traits::EvalData d)
Teuchos::RCP< PHX::FieldTag > dummyField
EvalT::ScalarT ScalarT
PHX::MDField< const ScalarT, panzer::Cell, panzer::Point > source