11 #ifndef PANZER_BCSTRATEGY_NEUMANN_DEFAULT_IMPL_DECL_HPP
12 #define PANZER_BCSTRATEGY_NEUMANN_DEFAULT_IMPL_DECL_HPP
20 #include "Panzer_BCStrategy.hpp"
25 #include "Phalanx_Evaluator_WithBaseImpl.hpp"
26 #include "Phalanx_FieldManager.hpp"
27 #include "Phalanx_MDField.hpp"
33 template <
typename EvalT>
98 const std::string dof_name,
99 const std::string flux_name,
100 const int integration_order,
std::vector< std::tuple< std::string, std::string, std::string, int, Teuchos::RCP< panzer::PureBasis >, Teuchos::RCP< panzer::IntegrationRule > > > m_residual_contributions
A vector of tuples containing information for each residual contribution for a corresponding Neumann ...
BCStrategy_Neumann_DefaultImpl(const panzer::BC &bc, const Teuchos::RCP< panzer::GlobalData > &global_data)
std::vector< std::string > m_required_dof_names
All DOF field names needed by this BC: this vector is used to build gather evaluators for each DOF...
virtual void requireDOFGather(const std::string required_dof_name)
Requires that a gather evaluator for the DOF be constructed.
Object that contains information on the physics and discretization of a block of elements with the SA...
virtual void postRegistrationSetup(typename Traits::SetupData d, PHX::FieldManager< Traits > &vm)=0
virtual ~BCStrategy_Neumann_DefaultImpl()
virtual void addResidualContribution(const std::string residual_name, const std::string dof_name, const std::string flux_name, const int integration_order, const panzer::PhysicsBlock &side_pb)
Adds a residual contribution for a neumann condition to a particular equation.
Default implementation for accessing the GlobalData object.
virtual void buildAndRegisterGatherAndOrientationEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &side_pb, const LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
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 =0
const panzer::BC bc() const
Returns the boundary condition data for this object.
Teuchos::RCP< panzer::IntegrationRule > buildIntegrationRule(const int integration_order, const panzer::PhysicsBlock &side_pb) const
Allocates and returns the integration rule associated with an integration order and side physics bloc...
virtual void evaluateFields(typename Traits::EvalData d)=0
const std::vector< std::tuple< std::string, std::string, std::string, int, Teuchos::RCP< panzer::PureBasis >, Teuchos::RCP< panzer::IntegrationRule > > > getResidualContributionData() const
Returns information for the residual contribution integrations associated with this Neumann BC...
virtual void buildAndRegisterGatherScatterEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &side_pb, const panzer::LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const
Stores input information for a boundary condition.
virtual void buildAndRegisterScatterEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &side_pb, const LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const
Teuchos::RCP< panzer::PureBasis > getBasis(const std::string dof_name, const panzer::PhysicsBlock &side_pb) const
Finds the basis for the corresponding dof_name in the physics block.
virtual void setup(const panzer::PhysicsBlock &side_pb, const Teuchos::ParameterList &user_data)=0