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 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 **, PHX::Device > | worksetLIDs_ |
Local indices for unknowns. More... | |
std::vector< Kokkos::View< int *, PHX::Device > > | fieldOffsets_ |
Offset into the cell lids for each field. Size of number of fields to scatter. More... | |
Kokkos::View< LO *, PHX::Device > | 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, ALL =4 } |
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 237 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 277 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 345 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 362 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 |
Offset into the cell lids for each field. Size of number of fields to scatter.
Definition at line 263 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 266 of file Panzer_ScatterResidual_BlockedTpetra.hpp.