11 #ifndef __Panzer_ResponseFactory_BCStrategyAdapter_hpp__
12 #define __Panzer_ResponseFactory_BCStrategyAdapter_hpp__
20 #include "Panzer_BCStrategy.hpp"
24 #include "Panzer_Normals.hpp"
27 #include "Phalanx_Evaluator_WithBaseImpl.hpp"
28 #include "Phalanx_FieldManager.hpp"
29 #include "Phalanx_MDField.hpp"
37 namespace response_bc_adapters {
41 template <
typename EvalT>
44 std::vector<std::pair<std::string,Teuchos::RCP<ResponseEvaluatorFactory_TemplateManager<panzer::Traits> > > >
refVec_;
67 for(std::size_t i=0;i<
refVec_.size();i++) {
71 if(respEvalFact!=Teuchos::null && respEvalFact->typeSupported())
72 respEvalFact->buildAndRegisterEvaluators(
refVec_[i].first,fm,side_pb,user_data);
95 const std::map<int,Teuchos::RCP<panzer::IntegrationRule> > & int_rules = side_pb.
getIntegrationRules();
97 itr!=int_rules.end();++itr) {
102 p.
set<std::string>(
"Name",
"Side Normal");
105 p.set<
bool>(
"Normalize",
true);
109 fm.template registerEvaluator<EvalT>(op);
122 typedef std::vector<std::pair<std::string,Teuchos::RCP<ResponseEvaluatorFactory_TemplateManager<panzer::Traits> > > >
RespFact_TM_Vector;
129 template <
typename EvalT>
136 typedef std::vector<std::pair<std::string,Teuchos::RCP<ResponseEvaluatorFactory_TemplateManager<panzer::Traits> > > >
RespFact_TM_Vector;
148 BCHashMap::const_iterator itr =
hashMap_.find(bc);
152 bcstrategy_tm->buildObjects(builder);
154 return bcstrategy_tm;
Interface for constructing a BCStrategy_TemplateManager.
const RespFact_TM_Vector & vec_
Object that contains information on the physics and discretization of a block of elements with the SA...
virtual void setup(const panzer::PhysicsBlock &, const Teuchos::ParameterList &)
const panzer::CellData & cellData() const
Teuchos::RCP< panzer::BCStrategy_TemplateManager< panzer::Traits > > buildBCStrategy(const panzer::BC &bc, const Teuchos::RCP< panzer::GlobalData > &) const
void buildAndRegisterClosureModelEvaluatorsForType(PHX::FieldManager< panzer::Traits > &fm, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &factory, const Teuchos::ParameterList &models, const Teuchos::ParameterList &user_data) const
ParameterList & set(std::string const &name, T &&value, std::string const &docString="", RCP< const ParameterEntryValidator > const &validator=null)
std::vector< std::pair< std::string, Teuchos::RCP< ResponseEvaluatorFactory_TemplateManager< panzer::Traits > > > > refVec_
ResponseFactory_BCStrategyAdapter(const panzer::BC &bc, const std::vector< std::pair< std::string, Teuchos::RCP< ResponseEvaluatorFactory_TemplateManager< panzer::Traits > > > > &refVec)
void buildAndRegisterGatherAndOrientationEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const
BCFactoryResponse(const BCHashMap &hashMap)
BCStrategy_TM_ResponseAdapterBuilder(const BC &bc, const RespFact_TM_Vector &vec)
void buildAndRegisterDOFProjectionsToIPEvaluators(PHX::FieldManager< panzer::Traits > &fm, const Teuchos::Ptr< const panzer::LinearObjFactory< panzer::Traits > > &lof, const Teuchos::ParameterList &user_data) const
virtual void buildAndRegisterScatterEvaluators(PHX::FieldManager< panzer::Traits > &, const panzer::PhysicsBlock &, const LinearObjFactory< panzer::Traits > &, const Teuchos::ParameterList &) const
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
virtual ~ResponseFactory_BCStrategyAdapter()
Teuchos::RCP< BCStrategyBase > build() const
virtual void buildAndRegisterEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &side_pb, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &factory, const Teuchos::ParameterList &models, const Teuchos::ParameterList &user_data) const
std::vector< std::pair< std::string, Teuchos::RCP< ResponseEvaluatorFactory_TemplateManager< panzer::Traits > > > > RespFact_TM_Vector
const std::map< int, Teuchos::RCP< panzer::IntegrationRule > > & getIntegrationRules() const
Returns the unique set of point rules, key is the unique panzer::PointRule::name() ...
Stores input information for a boundary condition.
std::unordered_map< BC, Teuchos::RCP< RespFact_TM_Vector >, BC::BCHash, BC::BCEquality > BCHashMap
#define TEUCHOS_ASSERT(assertion_test)
std::vector< std::pair< std::string, Teuchos::RCP< ResponseEvaluatorFactory_TemplateManager< panzer::Traits > > > > RespFact_TM_Vector
void buildAndRegisterEquationSetEvaluators(PHX::FieldManager< panzer::Traits > &fm, const Teuchos::ParameterList &user_data) const
virtual void buildAndRegisterGatherAndOrientationEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &side_pb, const LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const