Panzer
Version of the Day
|
GatherTangent_BlockedEpetra. More...
#include <Panzer_GatherTangent_BlockedEpetra_decl.hpp>
Public Member Functions | |
GatherTangent_BlockedEpetra (const std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LO, int >>> &indexers) | |
Constructor. More... | |
GatherTangent_BlockedEpetra (const std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LO, int >>> &indexers, const Teuchos::ParameterList &p) | |
Initializing Constructor. More... | |
void | postRegistrationSetup (typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &vm) |
Post-Registration Setup. More... | |
void | preEvaluate (typename TRAITS::PreEvalData d) |
Pre-Evaluate: Sets the tangent vector. More... | |
void | evaluateFields (typename TRAITS::EvalData d) |
Evaluate Fields: Gather operation. More... | |
virtual Teuchos::RCP < CloneableEvaluator > | clone (const Teuchos::ParameterList &pl) const |
Create a copy. More... | |
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 EvalT::ScalarT | ScalarT |
The scalar type. More... | |
Private Member Functions | |
GatherTangent_BlockedEpetra () | |
Default Constructor (disabled) More... | |
Private Attributes | |
std::vector< Teuchos::RCP < const UniqueGlobalIndexer < LO, int > > > | indexers_ |
These map the local (field, element, basis) triplet to a global ID for scattering. More... | |
std::vector< int > | indexerIds_ |
The block index into indexers_ . More... | |
std::vector< int > | subFieldIds_ |
Sub-field IDs, which need to be mapped. More... | |
std::vector< PHX::MDField < ScalarT, Cell, NODE > > | gatherFields_ |
The fields to be gathered. More... | |
Teuchos::RCP< std::vector < std::string > > | indexerNames_ |
A list of the names of the fields to be gathered. More... | |
bool | useTimeDerivativeSolutionVector_ |
A flag indicating whether we're to be working with or . More... | |
std::string | globalDataKey_ |
The key identifying the GlobalEvaluationData . More... | |
Teuchos::RCP < panzer::BlockedVector_ReadOnly_GlobalEvaluationData > | xBvRoGed_ |
The GlobalEvaluationData containing both the owned and ghosted tangent vectors. 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 |
Gathers tangent vectors for computing into the nodal fields of the field manager.
This evaluator is very similar to GatherSolution
, however it always gathers into fields of type double
, and it is a no-op if the global evaluation data container does not exist (which is an error for GatherSolution
).
Currently makes an assumption that the stride is constant for DOFs and that the number of DOFs is equal to the size of the solution names vector.
Definition at line 99 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
The scalar type.
Definition at line 202 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
inline |
Constructor.
Simply saves the input indexers
as this object's indexers_
.
[in] | indexers | The vector of UniqueGlobalIndexer s that handle the global unknown numbering. |
Definition at line 115 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
panzer::GatherTangent_BlockedEpetra< EvalT, TRAITS, LO, GO >::GatherTangent_BlockedEpetra | ( | const std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LO, int >>> & | indexers, |
const Teuchos::ParameterList & | p | ||
) |
Initializing Constructor.
Saves the input indexers
as this object's indexers_
, allocates fields, sets up dependent tangent fields (if requested), and determines the first active name.
[in] | indexers | The vector of UniqueGlobalIndexer s that handle the global unknown numbering. |
[in] | p | The input parameters. |
Definition at line 81 of file Panzer_GatherTangent_BlockedEpetra_impl.hpp.
|
private |
Default Constructor (disabled)
void panzer::GatherTangent_BlockedEpetra< EvalT, TRAITS, LO, GO >::postRegistrationSetup | ( | typename TRAITS::SetupData | d, |
PHX::FieldManager< TRAITS > & | vm | ||
) |
Post-Registration Setup.
Loops over the gatherFields_
and sets the indexerIds_
and subFieldIds_
.
[in] | d | Unused. |
[in] | fm | Unused. |
Definition at line 135 of file Panzer_GatherTangent_BlockedEpetra_impl.hpp.
void panzer::GatherTangent_BlockedEpetra< EvalT, TRAITS, LO, GO >::preEvaluate | ( | typename TRAITS::PreEvalData | d | ) |
Pre-Evaluate: Sets the tangent vector.
Sets the owned and ghosted tangent vectors.
[in] | d | The PreEvalData containing the GlobalEvaluationDataContainer . |
Definition at line 165 of file Panzer_GatherTangent_BlockedEpetra_impl.hpp.
void panzer::GatherTangent_BlockedEpetra< EvalT, TRAITS, LO, GO >::evaluateFields | ( | typename TRAITS::EvalData | d | ) |
Evaluate Fields: Gather operation.
Loops over the fields to be gathered, the cells in the workset, and the basis functions, and fills in the fields.
[in] | d | The Workset on which we're going to do all the work. |
Definition at line 190 of file Panzer_GatherTangent_BlockedEpetra_impl.hpp.
|
inlinevirtual |
Create a copy.
Creates a GatherTangent_BlockedEpetra
using the Initializing Constructor and the current object's indexers_
.
[in] | pl | The input parameters. |
GatherTangent_BlockedEpetra
constructed with this object's indexers_
and the input ParameterList
. Implements panzer::CloneableEvaluator.
Definition at line 189 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
These map the local (field, element, basis) triplet to a global ID for scattering.
Definition at line 208 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
The block index into indexers_
.
Definition at line 213 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
Sub-field IDs, which need to be mapped.
Definition at line 218 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
The fields to be gathered.
Definition at line 223 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
A list of the names of the fields to be gathered.
Definition at line 228 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
A flag indicating whether we're to be working with or .
Definition at line 234 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
The key identifying the GlobalEvaluationData
.
Definition at line 239 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.
|
private |
The GlobalEvaluationData
containing both the owned and ghosted tangent vectors.
Definition at line 246 of file Panzer_GatherTangent_BlockedEpetra_decl.hpp.