Panzer Version of the Day
Loading...
Searching...
No Matches
Panzer_Product_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_PRODUCT_HPP
12#define PANZER_PRODUCT_HPP
13
14#include "Phalanx_Evaluator_Macros.hpp"
15#include "Phalanx_MDField.hpp"
16
18
19namespace panzer {
20
32template<typename EvalT, typename Traits>
34 :
35 public panzer::EvaluatorWithBaseImpl<Traits>,
36 public PHX::EvaluatorDerived<EvalT, Traits>
37{
38 public:
39
40 Product(
41 const Teuchos::ParameterList& p);
42
43 void
45 typename Traits::EvalData d);
46
47 private:
48
49 using ScalarT = typename EvalT::ScalarT;
50
51 double scaling;
52 PHX::MDField<ScalarT> product;
53 std::vector< PHX::MDField<const ScalarT> > values;
54
55}; // end of class Product
56
57
58}
59
60#endif
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
PHX::MDField< ScalarT > product
std::vector< PHX::MDField< const ScalarT > > values
typename EvalT::ScalarT ScalarT
void evaluateFields(typename Traits::EvalData d)