Panzer
Version of the Day
|
GatherSolution_BlockedEpetra (Tangent Specialization). More...
#include <Panzer_GatherSolution_BlockedEpetra_decl.hpp>
Public Member Functions | |
GatherSolution_BlockedEpetra (const std::vector< Teuchos::RCP< const GlobalIndexer >> &indexers) | |
Constructor. More... | |
GatherSolution_BlockedEpetra (const std::vector< Teuchos::RCP< const GlobalIndexer >> &indexers, const Teuchos::ParameterList &p) | |
Initializing Constructor. More... | |
void | postRegistrationSetup (typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &fm) |
Post-Registration Setup. More... | |
void | preEvaluate (typename TRAITS::PreEvalData d) |
Pre-Evaluate: Sets the solution 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 panzer::Traits::Tangent | EvalT |
The evaluation type. More... | |
typedef panzer::Traits::Tangent::ScalarT | ScalarT |
The scalar type. More... | |
Private Member Functions | |
GatherSolution_BlockedEpetra () | |
Default Constructor (disabled) More... | |
Private Attributes | |
std::vector< Teuchos::RCP < const GlobalIndexer > > | 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... | |
std::vector< std::string > | indexerNames_ |
A list of the names of the fields to be gathered. More... | |
bool | useTimeDerivativeSolutionVector_ |
A flag indicating whether we should be working with or . More... | |
std::string | globalDataKey_ |
The key identifying the GlobalEvaluationData . More... | |
Teuchos::RCP < Thyra::ProductVectorBase < double > > | x_ |
The solution vector. More... | |
Teuchos::RCP < panzer::BlockedVector_ReadOnly_GlobalEvaluationData > | xBvRoGed_ |
The GlobalEvaluationData containing both the owned and ghosted solution vectors. More... | |
bool | hasTangentFields_ |
A flag indicating whether or not we have tangent fields. More... | |
std::vector< std::vector < PHX::MDField< const ScalarT, Cell, NODE > > > | tangentFields_ |
Fields for storing the tangent components of the solution vector . 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 |
GatherSolution_BlockedEpetra (Tangent Specialization).
Gathers solution values from the Newton solution vector into the nodal fields of the field manager.
Currently makes an assumption that the stride is constant for degrees of freedom (DOFs) and that the nmber of DOFs is equal to the size of the solution names vector.
Definition at line 390 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
The evaluation type.
Definition at line 500 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
The scalar type.
Definition at line 505 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
inline |
Constructor.
Simply saves the input indexers
as this object's indexers_
.
[in] | indexers | The vector of GlobalIndexer s that handle the global unknown numbering. |
Definition at line 406 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
panzer::GatherSolution_BlockedEpetra< panzer::Traits::Tangent, TRAITS, LO, GO >::GatherSolution_BlockedEpetra | ( | const std::vector< Teuchos::RCP< const GlobalIndexer >> & | 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 GlobalIndexer s that handle the global unknown numbering. |
[in] | p | A ParameterList used as input for GatherSolution_Input . |
Definition at line 331 of file Panzer_GatherSolution_BlockedEpetra_impl.hpp.
|
private |
Default Constructor (disabled)
void panzer::GatherSolution_BlockedEpetra< panzer::Traits::Tangent, TRAITS, LO, GO >::postRegistrationSetup | ( | typename TRAITS::SetupData | d, |
PHX::FieldManager< TRAITS > & | fm | ||
) |
Post-Registration Setup.
Loops over the gatherFields_
and sets the indexerIds_
and subFieldIds_
.
[in] | d | Unused. |
[in] | fm | Unused. |
Definition at line 403 of file Panzer_GatherSolution_BlockedEpetra_impl.hpp.
void panzer::GatherSolution_BlockedEpetra< panzer::Traits::Tangent, TRAITS, LO, GO >::preEvaluate | ( | typename TRAITS::PreEvalData | d | ) |
Pre-Evaluate: Sets the solution vector.
If using a BlockedVector_ReadOnly_GlobalEvaluationData
, this saves it for use later in evaluateFields()
. If using the older BlockedEpetraLinearObjContainer
, this sets the solution vector.
[in] | d | The PreEvalData containing the GlobalEvaluationDataContainer . |
Definition at line 432 of file Panzer_GatherSolution_BlockedEpetra_impl.hpp.
void panzer::GatherSolution_BlockedEpetra< panzer::Traits::Tangent, 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. Also sets derivative information if tangent fields are enabled.
[in] | d | The Workset on which we're going to do all the work. |
Definition at line 486 of file Panzer_GatherSolution_BlockedEpetra_impl.hpp.
|
inlinevirtual |
Create a copy.
Creates a GatherSolution_BlockedEpetra
using the Initializing Constructor and the current object's indexers_
.
[in] | pl | A ParameterList used as input for GatherSolution_Input . |
GatherSolution_BlockedEpetra
constructed with this object's indexers_
and the input ParameterList
. Implements panzer::CloneableEvaluator.
Definition at line 485 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
These map the local (field, element, basis) triplet to a global ID for scattering.
Definition at line 511 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
The block index into indexers_
.
Definition at line 516 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
Sub-field IDs, which need to be mapped.
Definition at line 521 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
The fields to be gathered.
Definition at line 526 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
A list of the names of the fields to be gathered.
Definition at line 531 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
A flag indicating whether we should be working with or .
Definition at line 537 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
The key identifying the GlobalEvaluationData
.
Definition at line 542 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
The solution vector.
Definition at line 547 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
The GlobalEvaluationData
containing both the owned and ghosted solution vectors.
Definition at line 554 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
A flag indicating whether or not we have tangent fields.
Definition at line 559 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.
|
private |
Fields for storing the tangent components of the solution vector .
These are not actually used by the residual specialization of this evaluator, even if they are supplied, but it is useful to declare them as dependencies anyway when saving the tangent components to the output file.
Definition at line 572 of file Panzer_GatherSolution_BlockedEpetra_decl.hpp.