11#ifndef __Panzer_GatherSolution_Epetra_decl_hpp__
12#define __Panzer_GatherSolution_Epetra_decl_hpp__
27#include "Phalanx_Evaluator_Macros.hpp"
28#include "Phalanx_MDField.hpp"
51 template<
typename EvalT,
typename TRAITS,
typename LO,
typename GO>
64 template<
typename TRAITS,
typename LO,
typename GO>
68 public PHX::EvaluatorDerived<panzer::Traits::Residual, TRAITS>,
82 const Teuchos::RCP<const panzer::GlobalIndexer>& indexer)
84 globalIndexer_(indexer)
101 const Teuchos::RCP<const panzer::GlobalIndexer>& indexer,
102 const Teuchos::ParameterList& p);
113 postRegistrationSetup(
114 typename TRAITS::SetupData d,
131 typename TRAITS::PreEvalData d);
143 typename TRAITS::EvalData d);
157 virtual Teuchos::RCP<CloneableEvaluator>
159 const Teuchos::ParameterList& pl)
const
164 (globalIndexer_, pl));
214 Teuchos::RCP<Epetra_Vector>
x_;
220 Teuchos::RCP<panzer::EpetraVector_ReadOnly_GlobalEvaluationData>
238 std::vector<std::vector<PHX::MDField<const ScalarT, Cell, NODE>>>
258 template<
typename TRAITS,
typename LO,
typename GO>
262 public PHX::EvaluatorDerived<panzer::Traits::Tangent, TRAITS>,
276 const Teuchos::RCP<const panzer::GlobalIndexer>& indexer)
278 globalIndexer_(indexer)
295 const Teuchos::RCP<const panzer::GlobalIndexer>& indexer,
296 const Teuchos::ParameterList& p);
307 postRegistrationSetup(
308 typename TRAITS::SetupData d,
325 typename TRAITS::PreEvalData d);
338 typename TRAITS::EvalData d);
352 virtual Teuchos::RCP<CloneableEvaluator>
354 const Teuchos::ParameterList& pl)
const
359 (globalIndexer_, pl));
409 Teuchos::RCP<Epetra_Vector>
x_;
415 Teuchos::RCP<panzer::EpetraVector_ReadOnly_GlobalEvaluationData>
428 std::vector<std::vector<PHX::MDField<const ScalarT, Cell, NODE>>>
448 template<
typename TRAITS,
typename LO,
typename GO>
452 public PHX::EvaluatorDerived<panzer::Traits::Jacobian, TRAITS>,
466 const Teuchos::RCP<const panzer::GlobalIndexer>& indexer)
468 globalIndexer_(indexer)
484 const Teuchos::RCP<const panzer::GlobalIndexer>& indexer,
485 const Teuchos::ParameterList& p);
496 postRegistrationSetup(
497 typename TRAITS::SetupData d,
515 typename TRAITS::PreEvalData d);
528 typename TRAITS::EvalData d);
542 virtual Teuchos::RCP<CloneableEvaluator>
544 const Teuchos::ParameterList& pl)
const
549 (globalIndexer_, pl));
622 Teuchos::RCP<Epetra_Vector>
x_;
628 Teuchos::RCP<panzer::EpetraVector_ReadOnly_GlobalEvaluationData>
640#ifdef Panzer_BUILD_HESSIAN_SUPPORT
Non-templated empty base class for template managers.
Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers.
GatherSolution_Epetra(const Teuchos::RCP< const panzer::GlobalIndexer > &indexer)
Constructor.
std::string globalDataKey_
The key identifying the GlobalEvaluationData.
bool disableSensitivities_
Flag to disable sensitivities absolutely.
std::vector< int > fieldIds_
Field IDs, which need to be mapped.
std::vector< std::string > indexerNames_
A list of the names of the fields to be gathered.
panzer::Traits::Jacobian::ScalarT ScalarT
The scalar type.
GatherSolution_Epetra()
Default Constructor (disabled).
std::vector< PHX::MDField< ScalarT, Cell, NODE > > gatherFields_
The fields to be gathered.
std::string sensitivitiesName_
Sets which gather operations have sensitivities.
Teuchos::RCP< panzer::EpetraVector_ReadOnly_GlobalEvaluationData > xEvRoGed_
The GlobalEvaluationData containing both the owned and ghosted vectors.
bool applySensitivities_
Used by evaluateFields() to turn on/off a certain set of sensitivities.
Teuchos::RCP< Epetra_Vector > x_
The solution vector.
panzer::Traits::Jacobian EvalT
The evaluation type.
int gatherSeedIndex_
Which gather seed in the workset to use.
bool useTimeDerivativeSolutionVector_
A flag indicating whether we're to be working with or .
Teuchos::RCP< const panzer::GlobalIndexer > globalIndexer_
Maps the local (field, element, basis) triplet to a global ID for scattering.
virtual Teuchos::RCP< CloneableEvaluator > clone(const Teuchos::ParameterList &pl) const
Create a copy.
GatherSolution_Epetra(const Teuchos::RCP< const panzer::GlobalIndexer > &indexer)
Constructor.
Teuchos::RCP< panzer::EpetraVector_ReadOnly_GlobalEvaluationData > xEvRoGed_
The GlobalEvaluationData containing both the owned and ghosted vectors.
panzer::Traits::Residual::ScalarT ScalarT
The scalar type.
virtual Teuchos::RCP< CloneableEvaluator > clone(const Teuchos::ParameterList &pl) const
Create a copy.
bool hasTangentFields_
A flag indicating whether or not we have tangent fields.
panzer::Traits::Residual EvalT
The evaluation type.
GatherSolution_Epetra()
Default Constructor (disabled).
std::vector< PHX::MDField< ScalarT, Cell, NODE > > gatherFields_
The fields to be gathered.
std::vector< std::string > indexerNames_
A list of the names of the fields to be gathered.
Teuchos::RCP< const panzer::GlobalIndexer > globalIndexer_
Maps the local (field, element, basis) triplet to a global ID for scattering.
bool useTimeDerivativeSolutionVector_
A flag indicating whether we're to be working with or .
std::vector< int > fieldIds_
Field IDs, which need to be mapped.
std::vector< std::vector< PHX::MDField< const ScalarT, Cell, NODE > > > tangentFields_
Fields for storing the tangent components of the solution vector .
Teuchos::RCP< Epetra_Vector > x_
The solution vector.
std::string globalDataKey_
The key identifying the GlobalEvaluationData.
bool useTimeDerivativeSolutionVector_
A flag indicating whether we should be working with or .
std::vector< int > fieldIds_
Field IDs, which need to be mapped.
std::string globalDataKey_
The key identifying the GlobalEvaluationData.
GatherSolution_Epetra(const Teuchos::RCP< const panzer::GlobalIndexer > &indexer)
Constructor.
std::vector< PHX::MDField< ScalarT, Cell, NODE > > gatherFields_
The fields to be gathered.
std::vector< std::string > indexerNames_
A list of the names of the fields to be gathered.
virtual Teuchos::RCP< CloneableEvaluator > clone(const Teuchos::ParameterList &pl) const
Create a copy.
std::vector< std::vector< PHX::MDField< const ScalarT, Cell, NODE > > > tangentFields_
Fields for storing the tangent components of the solution vector .
bool hasTangentFields_
A flag indicating whether or not we have tangent fields.
GatherSolution_Epetra()
Default Constructor (disabled).
panzer::Traits::Tangent::ScalarT ScalarT
The scalar type.
panzer::Traits::Tangent EvalT
The evaluation type.
Teuchos::RCP< const panzer::GlobalIndexer > globalIndexer_
Maps the local (field, element, basis) triplet to a global ID for scattering.
Teuchos::RCP< panzer::EpetraVector_ReadOnly_GlobalEvaluationData > xEvRoGed_
The GlobalEvaluationData containing both the owned and ghosted vectors.
Teuchos::RCP< Epetra_Vector > x_
The solution vector.
Gathers solution values from the Newton solution vector into the nodal fields of the field manager.
Evaluation type for computing the residual and its Jacobian, using FadType as the scalar type.
Evaluation type for computing the residual only, using RealType as the scalar type.
Evaluation type for computing directional derivatives (e.g. parameter sensitivities),...
Panzer's specialization of the Phalanx traits class.