Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Panzer_CrossProduct.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_CrossProduct_HPP
12 #define PANZER_EVALUATOR_CrossProduct_HPP
13 
14 #include "Phalanx_Evaluator_Macros.hpp"
15 #include "Phalanx_MDField.hpp"
16 
18 
19 namespace panzer {
20 
30 template<typename EvalT, typename Traits>
32  :
33  public panzer::EvaluatorWithBaseImpl<Traits>,
34  public PHX::EvaluatorDerived<EvalT, Traits>
35 {
36  public:
37 
39  const Teuchos::ParameterList& p);
40 
41  void
43  typename Traits::SetupData d,
45 
46  void
48  typename Traits::EvalData d);
49 
50  private:
51 
52  using ScalarT = typename EvalT::ScalarT;
53 
56 
58 
59  int num_pts;
60  int num_dim;
61 
62 }; // end of class CrossProduct
63 
64 
65 }
66 
67 #endif
Evaluates cross product at a set of points.
PHX::MDField< const ScalarT > vec_b
void postRegistrationSetup(typename Traits::SetupData d, PHX::FieldManager< Traits > &fm)
PHX::MDField< const ScalarT > vec_a
typename EvalT::ScalarT ScalarT
void evaluateFields(typename Traits::EvalData d)
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
PHX::MDField< ScalarT > vec_a_cross_vec_b
CrossProduct(const Teuchos::ParameterList &p)