VertexCFD  0.0-dev
VertexCFD_InitialConditionManager.hpp
1 #ifndef VERTEXCFD_INITIALCONDITIONMANAGER_HPP
2 #define VERTEXCFD_INITIALCONDITIONMANAGER_HPP
3 
4 #include "VertexCFD_MeshManager.hpp"
5 #include "VertexCFD_PhysicsManager.hpp"
6 
7 #include "initial_conditions/VertexCFD_InitialConditionFactory_TemplateBuilder.hpp"
8 #include "mesh/VertexCFD_Mesh_Restart.hpp"
9 #include "parameters/VertexCFD_ParameterDatabase.hpp"
10 
11 #include <Panzer_InitialCondition_Builder.hpp>
12 
13 #include <Thyra_VectorSpaceBase.hpp>
14 
15 #include <Teuchos_RCP.hpp>
16 
17 namespace VertexCFD
18 {
19 //---------------------------------------------------------------------------//
21 {
22  public:
24  const Teuchos::RCP<Parameter::ParameterDatabase>& parameter_db,
25  const Teuchos::RCP<MeshManager>& mesh_manager);
26 
27  double initialTime() const;
28 
29  template<int NumSpaceDim>
30  void
31  applyInitialConditions(const std::integral_constant<int, NumSpaceDim>&,
32  const PhysicsManager& physics_manager,
33  Teuchos::RCP<Thyra::VectorBase<double>>& x,
34  Teuchos::RCP<Thyra::VectorBase<double>>& x_dot) const;
35 
36  private:
37  Teuchos::RCP<Parameter::ParameterDatabase> _parameter_db;
38  Teuchos::RCP<MeshManager> _mesh_manager;
39  Teuchos::RCP<Mesh::RestartReader> _restart_reader;
40  bool _do_restart;
41  double _t_init;
42 };
43 
44 //---------------------------------------------------------------------------//
45 
46 } // end namespace VertexCFD
47 
48 #endif // end VERTEXCFD_INITIALCONDITIONMANAGER_HPP
VertexCFD
Definition: tstMethodManufacturedSolutionBC.cpp:23
VertexCFD::InitialConditionManager
Definition: VertexCFD_InitialConditionManager.hpp:21
VertexCFD::PhysicsManager
Definition: VertexCFD_PhysicsManager.hpp:29