11#ifndef PANZER_INITIAL_CONDITION_BUILDER_HPP
12#define PANZER_INITIAL_CONDITION_BUILDER_HPP
20#include "Phalanx_FieldManager.hpp"
21#include "Teuchos_RCP.hpp"
22#include "Teuchos_ParameterList.hpp"
41 const std::vector<Teuchos::RCP<panzer::PhysicsBlock> >& physicsBlocks,
43 const Teuchos::ParameterList& ic_block_closure_models,
45 const Teuchos::ParameterList& user_data,
46 const bool write_graphviz_file,
47 const std::string& graphviz_file_prefix,
63 const std::vector<Teuchos::RCP<panzer::PhysicsBlock> >& physicsBlocks,
65 const Teuchos::ParameterList& ic_closure_models,
66 const Teuchos::ParameterList& closure_models,
68 const Teuchos::ParameterList& user_data,
69 const bool write_graphviz_file,
70 const std::string& graphviz_file_prefix,
96 const std::map<std::string,std::vector<ICFieldDescriptor> > & block_ids_to_fields,
100 const Teuchos::ParameterList & ic_closure_models,
101 const Teuchos::ParameterList & user_data,
114 void buildICPhysicsBlocks(
const std::map<std::string,Teuchos::RCP<const shards::CellTopology> > & block_ids_to_cell_topo,
115 const std::map<std::string,std::vector<ICFieldDescriptor> > & block_ids_to_fields,
117 std::vector<Teuchos::RCP<panzer::PhysicsBlock> > & physics_blocks);
125 Teuchos::RCP<panzer::LinearObjContainer> loc,
127 const double time_stamp,
128 const double step_size = 0.0,
129 const int stage_number = 0);
Class that provides access to worksets on each element block and side set.
void buildICPhysicsBlocks(const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &block_ids_to_cell_topo, const std::map< std::string, std::vector< ICFieldDescriptor > > &block_ids_to_fields, int workset_size, std::vector< Teuchos::RCP< PhysicsBlock > > &physics_blocks)
void setupInitialConditionFieldManagers(WorksetContainer &wkstContainer, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const Teuchos::ParameterList &ic_block_closure_models, const panzer::LinearObjFactory< panzer::Traits > &lo_factory, const Teuchos::ParameterList &user_data, const bool write_graphviz_file, const std::string &graphviz_file_prefix, std::map< std::string, Teuchos::RCP< PHX::FieldManager< panzer::Traits > > > &phx_ic_field_managers)
Builds PHX::FieldManager objects for inital conditions and registers evaluators.
void setupControlInitialCondition(const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &block_ids_to_cell_topo, const std::map< std::string, std::vector< ICFieldDescriptor > > &block_ids_to_fields, WorksetContainer &wkstContainer, const LinearObjFactory< Traits > &lof, const ClosureModelFactory_TemplateManager< Traits > &cm_factory, const Teuchos::ParameterList &ic_closure_models, const Teuchos::ParameterList &user_data, int workset_size, double t0, const Teuchos::RCP< Thyra::VectorBase< double > > &vec)
void evaluateInitialCondition(WorksetContainer &wkstContainer, const std::map< std::string, Teuchos::RCP< PHX::FieldManager< panzer::Traits > > > &phx_ic_field_managers, Teuchos::RCP< panzer::LinearObjContainer > loc, const panzer::LinearObjFactory< panzer::Traits > &lo_factory, const double time_stamp, const double step_size, const int stage_number)