Panzer
Version of the Day
|
#include <Panzer_BCStrategy_WeakDirichlet_DefaultImpl.hpp>
Public Member Functions | |
BCStrategy_WeakDirichlet_DefaultImpl (const panzer::BC &bc, const Teuchos::RCP< panzer::GlobalData > &global_data) | |
virtual | ~BCStrategy_WeakDirichlet_DefaultImpl () |
Public Member Functions inherited from panzer::BCStrategy< EvalT > | |
BCStrategy (const panzer::BC &bc) | |
virtual | ~BCStrategy () |
Public Member Functions inherited from panzer::BCStrategyBase | |
BCStrategyBase () | |
virtual | ~BCStrategyBase () |
Public Member Functions inherited from panzer::EvaluatorsRegistrar | |
int | setDetailsIndex (const int details_index) |
int | getDetailsIndex () const |
Get the WorksetDetails index. More... | |
Public Member Functions inherited from panzer::GlobalDataAcceptorDefaultImpl | |
GlobalDataAcceptorDefaultImpl () | |
GlobalDataAcceptorDefaultImpl (const Teuchos::RCP< panzer::GlobalData > &gd) | |
~GlobalDataAcceptorDefaultImpl () | |
void | setGlobalData (const Teuchos::RCP< panzer::GlobalData > &gd) |
Teuchos::RCP< panzer::GlobalData > | getGlobalData () const |
Public Member Functions inherited from panzer::GlobalDataAcceptor | |
virtual | ~GlobalDataAcceptor () |
Public Member Functions inherited from panzer::EvaluatorWithBaseImpl< panzer::Traits > | |
void | setDetailsIndex (const int di) |
An evaluator builder sets the details index. More... | |
Public Member Functions inherited from PHX::EvaluatorWithBaseImpl< panzer::Traits > | |
virtual void | evaluateFields (typename Traits::EvalData d) override=0 |
Public Member Functions inherited from PHX::Evaluator< Traits > | |
Evaluator () | |
virtual | ~Evaluator () |
virtual void | postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &vm)=0 |
virtual const std::vector < Teuchos::RCP< FieldTag > > & | evaluatedFields () const =0 |
virtual const std::vector < Teuchos::RCP< FieldTag > > & | contributedFields () const =0 |
virtual const std::vector < Teuchos::RCP< FieldTag > > & | dependentFields () const =0 |
virtual const std::vector < Teuchos::RCP< FieldTag > > & | unsharedFields () const =0 |
virtual void | preEvaluate (typename Traits::PreEvalData d)=0 |
virtual void | postEvaluate (typename Traits::PostEvalData d)=0 |
virtual const std::string & | getName () const =0 |
virtual void | bindField (const PHX::FieldTag &ft, const std::any &f)=0 |
virtual PHX::DeviceEvaluator < Traits > * | createDeviceEvaluator () const =0 |
virtual void | rebuildDeviceEvaluator (PHX::DeviceEvaluator< Traits > *e) const =0 |
virtual void | deleteDeviceEvaluator (PHX::DeviceEvaluator< Traits > *e) const =0 |
virtual void | printFieldValues (std::ostream &os) const =0 |
Public Member Functions inherited from panzer::DomainEvaluator | |
DomainEvaluator (DomainType domain=ALL) | |
Constructor. More... | |
virtual | ~DomainEvaluator ()=default |
Default destructor. More... | |
void | setDomain (const DomainType domain) |
Set the domain for the evaluator. More... | |
DomainType | getDomain () |
Get the domain for the evaluator. More... | |
virtual int | cellStartIndex (const panzer::Workset &workset) const |
Returns the starting cell for the specified domain for a given workset. More... | |
virtual int | cellEndIndex (const panzer::Workset &workset) const |
Returns the non-inclusive end cell for the specified domain for a given workset. More... | |
Private Attributes | |
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 bc. More... | |
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. More... | |
Derived from PHX::EvaluatorWithDefaultImpl | |
virtual void | postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &vm)=0 |
virtual void | evaluateFields (typename Traits::EvalData d)=0 |
User Interface methods to provide information to the default implementation to be able to build the default evaluators for a Neumann BC | |
virtual void | requireDOFGather (const std::string required_dof_name) |
Requires that a gather evaluator for the DOF be constructed. More... | |
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. More... | |
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. More... | |
Query methods for underlying data | |
const panzer::BC | bc () const |
Returns the boundary condition data for this object. More... | |
Utility functions used by default implementation | |
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. More... | |
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 block. More... | |
Additional Inherited Members | |
Public Types inherited from panzer::DomainEvaluator | |
enum | DomainType : int { OWNED =0, GHOST =1, REAL =2, VIRTUAL =3, EXTERNAL =4, ALL =5 } |
Domain types supported by worksets. More... | |
Protected Member Functions inherited from panzer::EvaluatorsRegistrar | |
EvaluatorsRegistrar () | |
Default ctor initializes WorksetDetails index to 0. More... | |
virtual | ~EvaluatorsRegistrar () |
template<typename EvalT > | |
void | registerEvaluator (PHX::FieldManager< panzer::Traits > &fm, const Teuchos::RCP< PHX::Evaluator< panzer::Traits > > &op) const |
Protected Attributes inherited from panzer::BCStrategy< EvalT > | |
const panzer::BC | m_bc |
Protected Attributes inherited from panzer::EvaluatorWithBaseImpl< panzer::Traits > | |
WorksetDetailsAccessor | wda |
Definition at line 34 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl.hpp.
panzer::BCStrategy_WeakDirichlet_DefaultImpl< EvalT >::BCStrategy_WeakDirichlet_DefaultImpl | ( | const panzer::BC & | bc, |
const Teuchos::RCP< panzer::GlobalData > & | global_data | ||
) |
Definition at line 42 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
virtual |
Definition at line 53 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
pure virtual |
Must be called before this->buildAndRegisterEvaluators() and
this->buildAndRegisterGatherScatterEvaluators().
Implements panzer::BCStrategy< EvalT >.
|
pure virtual |
Implements panzer::BCStrategy< EvalT >.
|
virtual |
Definition at line 61 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
virtual |
Implements panzer::BCStrategy< EvalT >.
Definition at line 137 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
virtual |
Implements panzer::BCStrategy< EvalT >.
Definition at line 73 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
pure virtual |
|
pure virtual |
|
virtual |
Requires that a gather evaluator for the DOF be constructed.
Definition at line 196 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
virtual |
Adds a residual contribution for a neumann condition to a particular equation.
residual_name | [in] Name of the residual field that is to be scattered to the global residual. |
dof_name | [in] Name of the DOF residual that the Neumann contribution should be added to. |
flux_name | [in] Name of the flux field that will be integrated over to form the residual. |
integration_order | [in] Order of the integration rule needed to define the data layouts for the flux integration. |
side_pb | [in] The side physics block. Used to build the PureBasis and IntegrationRule for a residual contribution. |
Definition at line 204 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
const std::vector< std::tuple< std::string, std::string, std::string, int, Teuchos::RCP< panzer::PureBasis >, Teuchos::RCP< panzer::IntegrationRule > > > panzer::BCStrategy_WeakDirichlet_DefaultImpl< EvalT >::getResidualContributionData | ( | ) | const |
Returns information for the residual contribution integrations associated with this Neumann BC.
Definition at line 225 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
const panzer::BC panzer::BCStrategy_WeakDirichlet_DefaultImpl< EvalT >::bc | ( | ) | const |
Returns the boundary condition data for this object.
Definition at line 266 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
private |
Finds the basis for the corresponding dof_name in the physics block.
Definition at line 234 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
private |
Allocates and returns the integration rule associated with an integration order and side physics block.
Definition at line 256 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl_impl.hpp.
|
private |
A vector of tuples containing information for each residual contribution for a corresponding Neumann bc.
Each entry in the vector is a different contribution to an individual residual equation. A single Neumann BC can contribute to multiple equations (e.g. all momentum equations). The tuple has 6 entries, with the indices described below. \param index 0 - Name of the residual field that is to be scattered to the global residual.
index | 1 - Name of the DOF residual that the Neumann residual contribution should be added to. |
index | 2 - Name of the flux field that will be integrated over to form the residual. |
index | 3 - Order of the integration rule needed to define the data layouts for the flux integration. |
index | 4 - RCP to the basis for the dof that the Neumann residual contribution is added to. |
index | 5 - RCP to the Integration Rule for the side integration for the Neumann residual contribution. |
Definition at line 149 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl.hpp.
|
private |
All DOF field names needed by this BC: this vector is used to build gather evaluators for each DOF.
Definition at line 152 of file Panzer_BCStrategy_WeakDirichlet_DefaultImpl.hpp.