Panzer
Version of the Day
|
GatherSolution_BlockedEpetra
(Hessian Specialization).
More...
#include <Panzer_GatherSolution_BlockedEpetra_Hessian.hpp>
Public Member Functions | |
GatherSolution_BlockedEpetra (const std::vector< Teuchos::RCP< const GlobalIndexer< LO, int >>> &indexers) | |
Constructor. More... | |
GatherSolution_BlockedEpetra (const std::vector< Teuchos::RCP< const GlobalIndexer< 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 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 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::Hessian | EvalT |
The evaluation type. More... | |
typedef panzer::Traits::Hessian::ScalarT | ScalarT |
The scalar type. More... | |
Private Member Functions | |
GatherSolution_BlockedEpetra () | |
Default Constructor (disabled) More... | |
Private Attributes | |
std::vector< std::string > | indexerNames_ |
A list of the names of the fields to be gathered. More... | |
std::string | globalDataKey_ |
The key identifying the GlobalEvaluationData . More... | |
std::vector< Teuchos::RCP < const GlobalIndexer< 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... | |
bool | useTimeDerivativeSolutionVector_ |
A flag indicating whether we should be working with or . More... | |
std::string | sensitivitiesName_ |
Sets which gather operations have sensitivities. More... | |
int | gatherSeedIndex_ |
Which gather seed in the workset to use. More... | |
bool | firstSensitivitiesAvailable_ |
A flag indicating whether or not first sensitivities information is available. More... | |
bool | firstApplySensitivities_ |
Used by evaluateFields() to turn on/off the first sensitivities. More... | |
std::string | sensitivities2ndPrefix_ |
The prefix for the field containing the second sensitivities. More... | |
bool | secondSensitivitiesAvailable_ |
A flag indicating whether or not second sensitivities information is available. More... | |
bool | secondApplySensitivities_ |
Used by evaluateFields() to turn on/off the second sensitivities. 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... | |
Teuchos::RCP < panzer::BlockedVector_ReadOnly_GlobalEvaluationData > | dxBvRoGed_ |
The GlobalEvaluationData containing both the owned and ghosted derivative vectors. 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 |
GatherSolution_BlockedEpetra
(Hessian 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 62 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The evaluation type.
Definition at line 172 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The scalar type.
Definition at line 177 of file Panzer_GatherSolution_BlockedEpetra_Hessian.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 78 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
panzer::GatherSolution_BlockedEpetra< panzer::Traits::Hessian, TRAITS, LO, GO >::GatherSolution_BlockedEpetra | ( | const std::vector< Teuchos::RCP< const GlobalIndexer< 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 GlobalIndexer s that handle the global unknown numbering. |
[in] | p | A ParameterList used as input for GatherSolution_Input . |
Definition at line 82 of file Panzer_GatherSolution_BlockedEpetra_Hessian_impl.hpp.
|
private |
Default Constructor (disabled)
void panzer::GatherSolution_BlockedEpetra< panzer::Traits::Hessian, 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 137 of file Panzer_GatherSolution_BlockedEpetra_Hessian_impl.hpp.
void panzer::GatherSolution_BlockedEpetra< panzer::Traits::Hessian, 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 166 of file Panzer_GatherSolution_BlockedEpetra_Hessian_impl.hpp.
void panzer::GatherSolution_BlockedEpetra< panzer::Traits::Hessian, 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 247 of file Panzer_GatherSolution_BlockedEpetra_Hessian_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 156 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A list of the names of the fields to be gathered.
Definition at line 182 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The key identifying the GlobalEvaluationData
.
Definition at line 187 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
These map the local (field, element, basis) triplet to a global ID for scattering.
Definition at line 193 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The block index into indexers_
.
Definition at line 198 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Sub-field IDs, which need to be mapped.
Definition at line 203 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The fields to be gathered.
Definition at line 208 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A flag indicating whether we should be working with or .
Definition at line 214 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Sets which gather operations have sensitivities.
Definition at line 219 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Which gather seed in the workset to use.
If it's less than zero, then use alpha or beta as appropriate.
Definition at line 226 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A flag indicating whether or not first sensitivities information is available.
Definition at line 232 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Used by evaluateFields()
to turn on/off the first sensitivities.
Definition at line 238 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The prefix for the field containing the second sensitivities.
Definition at line 243 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A flag indicating whether or not second sensitivities information is available.
Definition at line 249 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Used by evaluateFields()
to turn on/off the second sensitivities.
Definition at line 255 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The solution vector.
Definition at line 260 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The GlobalEvaluationData
containing both the owned and ghosted solution vectors.
Definition at line 267 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The GlobalEvaluationData
containing both the owned and ghosted derivative vectors.
Definition at line 274 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.