Panzer
Version of the Day
|
#include <Panzer_ScatterResidual_BlockedTpetra.hpp>
Public Member Functions | |
ScatterResidual_BlockedTpetra (const Teuchos::RCP< const BlockedDOFManager > &indexer) | |
ScatterResidual_BlockedTpetra (const Teuchos::RCP< const BlockedDOFManager > &indexer, const Teuchos::ParameterList &p) | |
void | postRegistrationSetup (typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &vm) |
void | preEvaluate (typename TRAITS::PreEvalData d) |
void | evaluateFields (typename TRAITS::EvalData workset) |
virtual Teuchos::RCP < CloneableEvaluator > | clone (const Teuchos::ParameterList &pl) const |
Public Member Functions inherited from panzer::EvaluatorWithBaseImpl< TRAITS > | |
void | setDetailsIndex (const int di) |
An evaluator builder sets the details index. More... | |
Public Member Functions inherited from PHX::EvaluatorWithBaseImpl< 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 PHX::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... | |
Public Member Functions inherited from panzer::CloneableEvaluator | |
CloneableEvaluator () | |
virtual | ~CloneableEvaluator () |
Private Types | |
typedef panzer::Traits::Jacobian::ScalarT | ScalarT |
typedef TRAITS::RealType | RealType |
typedef BlockedTpetraLinearObjContainer < RealType, LO, GO, NodeT > | ContainerType |
typedef Tpetra::Operator < RealType, LO, GO, NodeT > | OperatorType |
typedef Tpetra::CrsMatrix < RealType, LO, GO, NodeT > | CrsMatrixType |
typedef Tpetra::Map< LO, GO, NodeT > | MapType |
typedef Thyra::TpetraLinearOp < RealType, LO, GO, NodeT > | ThyraLinearOp |
Private Member Functions | |
ScatterResidual_BlockedTpetra () | |
Private Attributes | |
Teuchos::RCP< PHX::FieldTag > | scatterHolder_ |
std::vector< PHX::MDField < const ScalarT, Cell, NODE > > | scatterFields_ |
Teuchos::RCP< const BlockedDOFManager > | globalIndexer_ |
std::vector< int > | fieldIds_ |
std::vector< int > | productVectorBlockIndex_ |
Teuchos::RCP< const std::map < std::string, std::string > > | fieldMap_ |
std::string | globalDataKey_ |
Teuchos::RCP< const BlockedTpetraLinearObjContainer < RealType, LO, GO, NodeT > > | blockedContainer_ |
Kokkos::View< LO **, Kokkos::LayoutRight, PHX::Device > | worksetLIDs_ |
Local indices for unknowns. More... | |
Kokkos::View< typename Sacado::ScalarType< ScalarT > ::type **, Kokkos::LayoutRight, PHX::Device > | workset_vals_ |
Scratch space for local values. More... | |
std::vector< PHX::View< int * > > | fieldOffsets_ |
Offset into the cell lids for each field. Size of number of fields to scatter. More... | |
PHX::View< LO * > | blockOffsets_ |
The offset values of the blocked DOFs per element. Size of number of blocks in the product vector + 1. The plus one is a sentinel. 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 Attributes inherited from panzer::EvaluatorWithBaseImpl< TRAITS > | |
WorksetDetailsAccessor | wda |
Definition at line 180 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 224 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 225 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 227 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 228 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 229 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 230 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 232 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
inline |
The parameter list passed takes the following values
<ParameterList> <Parameter name="Scatter Name" type="string" value=(required)/> <Parameter name="Dependent Names" type="RCP<vector<string> >" value="(required)"/> <Parameter name="Dependent Map" type="RCP<map<string,string> >" value="(required)"/> <Parameter name="Basis" type="RCP<const PureBasis>" value=(required)/> <Parameter name="Global Data Key" type="string" value="Residual Scatter Container" (default)/> </ParameterList>
The "Scatter Name" is the name for the dummy field that is computed by this evaluator. This field should be required so that the evaluators is guranteed to run. "Dependent Names" specifies the field to be scatter to the operator. The "Dependent Map" gives a mapping from the dependent field to the field string used in the global indexer. "Basis" is the basis used to define the size of the "Dependent Names" fields. Finally "Global Data Key" is the key used to index into the GlobalDataContainer object, for finding the operator and residual linear algebra data structures that need to be filled. By default this is the simple residual/jacobian with key "Residual Scatter Container".
Definition at line 207 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >::ScatterResidual_BlockedTpetra | ( | const Teuchos::RCP< const BlockedDOFManager > & | indexer, |
const Teuchos::ParameterList & | p | ||
) |
Definition at line 244 of file Panzer_ScatterResidual_BlockedTpetra_impl.hpp.
|
private |
void panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >::postRegistrationSetup | ( | typename TRAITS::SetupData | d, |
PHX::FieldManager< TRAITS > & | vm | ||
) |
Definition at line 284 of file Panzer_ScatterResidual_BlockedTpetra_impl.hpp.
void panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >::preEvaluate | ( | typename TRAITS::PreEvalData | d | ) |
Definition at line 348 of file Panzer_ScatterResidual_BlockedTpetra_impl.hpp.
void panzer::ScatterResidual_BlockedTpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >::evaluateFields | ( | typename TRAITS::EvalData | workset | ) |
Definition at line 365 of file Panzer_ScatterResidual_BlockedTpetra_impl.hpp.
|
inlinevirtual |
Implements panzer::CloneableEvaluator.
Definition at line 220 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 235 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 238 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 242 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 244 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Returns the index into the Thyra ProductVector sub-block. Size of number of fields to scatter
Definition at line 248 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 254 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 256 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Definition at line 257 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Local indices for unknowns.
Definition at line 260 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Scratch space for local values.
Definition at line 263 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
Offset into the cell lids for each field. Size of number of fields to scatter.
Definition at line 266 of file Panzer_ScatterResidual_BlockedTpetra.hpp.
|
private |
The offset values of the blocked DOFs per element. Size of number of blocks in the product vector + 1. The plus one is a sentinel.
Definition at line 269 of file Panzer_ScatterResidual_BlockedTpetra.hpp.