1 #ifndef VERTEXCFD_COMPUTE_VOLUME_HPP
2 #define VERTEXCFD_COMPUTE_VOLUME_HPP
4 #include <Panzer_BCStrategy_Factory.hpp>
5 #include <Panzer_FieldManagerBuilder.hpp>
6 #include <Panzer_GlobalIndexer.hpp>
7 #include <Panzer_ResponseEvaluatorFactory_Functional.hpp>
8 #include <Panzer_ResponseLibrary.hpp>
9 #include <Panzer_Response_Functional.hpp>
11 #include <Thyra_VectorBase.hpp>
13 #include <Teuchos_ParameterList.hpp>
14 #include <Teuchos_RCP.hpp>
16 #include <Tempus_SolutionHistory_decl.hpp>
20 namespace ComputeVolume
23 template<
class Scalar>
28 const Teuchos::RCP<panzer_stk::STK_Interface>& mesh,
29 const Teuchos::RCP<
const panzer::LinearObjFactory<panzer::Traits>>& lof,
30 const Teuchos::RCP<panzer::ResponseLibrary<panzer::Traits>>&
32 const std::vector<Teuchos::RCP<panzer::PhysicsBlock>>& physics_blocks,
33 const panzer::ClosureModelFactory_TemplateManager<panzer::Traits>&
35 const Teuchos::ParameterList& closure_params,
36 const Teuchos::ParameterList& user_params,
37 const Teuchos::RCP<panzer::WorksetContainer>& workset_container,
38 const std::vector<panzer::BC>& bcs,
39 const Teuchos::RCP<panzer::BCStrategyFactory>& bc_factory,
40 const Teuchos::RCP<panzer::EquationSetFactory>& eq_set_factory,
41 const int integration_order);
44 double volume()
const;
47 Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits>> _lof;
48 Teuchos::RCP<panzer::ResponseLibrary<panzer::Traits>> _response_library;
49 std::vector<Teuchos::RCP<panzer::PhysicsBlock>> _physics_blocks;
50 panzer::ClosureModelFactory_TemplateManager<panzer::Traits> _cm_factory;
51 Teuchos::ParameterList _closure_params;
52 Teuchos::ParameterList _user_params;
53 Teuchos::RCP<panzer::WorksetContainer> _workset_container;
55 std::vector<panzer::BC> _bcs;
56 Teuchos::RCP<panzer::BCStrategyFactory> _bc_factory;
57 Teuchos::RCP<panzer::EquationSetFactory> _eq_set_factory;
67 #include "VertexCFD_Compute_Volume_impl.hpp"
69 #endif // end VERTEXCFD_COMPUTE_VOLUME_HPP