VertexCFD  0.0-dev
VertexCFD_EquationSet_FullInductionMHD.hpp
1 #ifndef VERTEXCFD_EQUATIONSET_FULLINDUCTIONMHD_HPP
2 #define VERTEXCFD_EQUATIONSET_FULLINDUCTIONMHD_HPP
3 
4 #include <Panzer_CellData.hpp>
5 #include <Panzer_EquationSet_DefaultImpl.hpp>
6 #include <Panzer_GlobalData.hpp>
7 #include <Panzer_Traits.hpp>
8 
9 #include <Phalanx_FieldManager.hpp>
10 
11 #include <Teuchos_ParameterList.hpp>
12 #include <Teuchos_RCP.hpp>
13 
14 #include <string>
15 #include <unordered_map>
16 #include <vector>
17 
18 namespace VertexCFD
19 {
20 namespace EquationSet
21 {
22 //---------------------------------------------------------------------------//
23 // Induction equations for MHD.
24 //---------------------------------------------------------------------------//
25 template<class EvalType>
26 class FullInductionMHD : public panzer::EquationSet_DefaultImpl<EvalType>
27 {
28  public:
29  FullInductionMHD(const Teuchos::RCP<Teuchos::ParameterList>& params,
30  const int& default_integration_order,
31  const panzer::CellData& cell_data,
32  const Teuchos::RCP<panzer::GlobalData>& gd,
33  const bool build_transient_support);
34 
35  void buildAndRegisterEquationSetEvaluators(
36  PHX::FieldManager<panzer::Traits>& fm,
37  const panzer::FieldLibrary& field_library,
38  const Teuchos::ParameterList& user_data) const override;
39 
40  private:
41  int _num_space_dim;
42  std::unordered_map<std::string, std::string> _equ_dof_fim_pair;
43  std::unordered_map<std::string, std::unordered_map<std::string, bool>>
44  _equ_source_term;
45  bool _build_convective_flux;
46  bool _build_resistive_flux;
47 };
48 
49 //---------------------------------------------------------------------------//
50 
51 } // end namespace EquationSet
52 } // end namespace VertexCFD
53 
54 #endif // end VERTEXCFD_EQUATIONSET_FULLINDUCTIONMHD_HPP
VertexCFD
Definition: tstMethodManufacturedSolutionBC.cpp:23
VertexCFD::EquationSet::FullInductionMHD
Definition: VertexCFD_EquationSet_FullInductionMHD.hpp:27