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... | |
![]() | |
void | setDetailsIndex (const int di) |
An evaluator builder sets the details index. More... | |
![]() | |
virtual void | evaluateFields (typename Traits::EvalData d) override=0 |
![]() | |
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 std::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 |
![]() | |
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... | |
![]() | |
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 ![]() ![]() | |
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 | |
![]() | |
enum | DomainType : int { OWNED =0, GHOST =1, REAL =2, VIRTUAL =3, EXTERNAL =4, ALL =5 } |
Domain types supported by worksets. More... | |
![]() | |
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 30 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The evaluation type.
Definition at line 140 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The scalar type.
Definition at line 145 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 46 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 50 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 105 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 134 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 215 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 124 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A list of the names of the fields to be gathered.
Definition at line 150 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The key identifying the GlobalEvaluationData
.
Definition at line 155 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 161 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The block index into indexers_
.
Definition at line 166 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Sub-field IDs, which need to be mapped.
Definition at line 171 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The fields to be gathered.
Definition at line 176 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A flag indicating whether we should be working with or
.
Definition at line 182 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Sets which gather operations have sensitivities.
Definition at line 187 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 194 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A flag indicating whether or not first sensitivities information is available.
Definition at line 200 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Used by evaluateFields()
to turn on/off the first sensitivities.
Definition at line 206 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The prefix for the field containing the second sensitivities.
Definition at line 211 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
A flag indicating whether or not second sensitivities information is available.
Definition at line 217 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
Used by evaluateFields()
to turn on/off the second sensitivities.
Definition at line 223 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The solution vector.
Definition at line 228 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The GlobalEvaluationData
containing both the owned and ghosted solution vectors.
Definition at line 235 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.
|
private |
The GlobalEvaluationData
containing both the owned and ghosted derivative vectors.
Definition at line 242 of file Panzer_GatherSolution_BlockedEpetra_Hessian.hpp.