VertexCFD  0.0-dev
VertexCFD_Mesh_ExodusWriter.hpp
1 #ifndef VERTEXCFD_MESH_EXODUSWRITER_HPP
2 #define VERTEXCFD_MESH_EXODUSWRITER_HPP
3 
4 #include <Panzer_GlobalIndexer.hpp>
5 #include <Panzer_ResponseLibrary.hpp>
6 #include <Panzer_STK_Interface.hpp>
7 #include <Panzer_STK_ResponseEvaluatorFactory_SolutionWriter.hpp>
8 #include <Panzer_STK_Utilities.hpp>
9 
10 #include <Thyra_VectorBase.hpp>
11 
12 #include <Teuchos_ParameterList.hpp>
13 #include <Teuchos_RCP.hpp>
14 
15 namespace VertexCFD
16 {
17 namespace Mesh
18 {
19 //---------------------------------------------------------------------------//
21 {
22  public:
24  const Teuchos::RCP<panzer_stk::STK_Interface>& mesh,
25  const Teuchos::RCP<const panzer::GlobalIndexer>& dof_manager,
26  const Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits>>& lof,
27  const Teuchos::RCP<panzer::ResponseLibrary<panzer::Traits>>&
28  response_library,
29  const Teuchos::ParameterList& output_params);
30 
31  void
32  writeSolution(const Teuchos::RCP<const Thyra::VectorBase<double>>& x,
33  const Teuchos::RCP<const Thyra::VectorBase<double>>& x_dot,
34  const double time = 0.0,
35  const double time_step = 0.0);
36 
37  private:
38  enum class OutputType
39  {
40  Scalar,
41  Vector
42  };
43 
44  enum class OutputLocation
45  {
46  Node,
47  Cell
48  };
49 
50  void add_mesh_outputs(const Teuchos::ParameterList& params,
51  const OutputType output_type,
52  const OutputLocation output_location);
53 
54  Teuchos::RCP<panzer_stk::STK_Interface> _mesh;
55  Teuchos::RCP<const panzer::GlobalIndexer> _dof_manager;
56  Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits>> _lof;
57  Teuchos::RCP<panzer::ResponseLibrary<panzer::Traits>> _response_library;
58 };
59 
60 //---------------------------------------------------------------------------//
61 
62 } // end namespace Mesh
63 } // end namespace VertexCFD
64 
65 #endif // end VERTEXCFD_MESH_EXODUSWRITER_HPP
VertexCFD
Definition: tstMethodManufacturedSolutionBC.cpp:23
VertexCFD::Mesh::ExodusWriter
Definition: VertexCFD_Mesh_ExodusWriter.hpp:21