Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Panzer_GatherSolution_Input.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // Panzer: A partial differential equation assembly
4 // engine for strongly coupled complex multiphysics systems
5 //
6 // Copyright 2011 NTESS and the Panzer contributors.
7 // SPDX-License-Identifier: BSD-3-Clause
8 // *****************************************************************************
9 // @HEADER
10 
11 #ifndef __Panzer_GatherSolution_Input_hpp__
12 #define __Panzer_GatherSolution_Input_hpp__
13 
14 #include <vector>
15 #include <string>
16 
17 #include "Teuchos_RCP.hpp"
19 #include "Teuchos_ParameterListAcceptorDefaultBase.hpp"
20 
21 namespace panzer {
22 
23 // forward declaration
24 class PureBasis;
25 
31 public:
33 
38 
43 
46 
47  // Accessor functions
48 
50  const std::vector<std::string> & getDofNames() const { return dofNames_; }
51 
55  const std::vector<std::string> & getIndexerNames() const { return indexerNames_; }
56 
59 
62 
64  std::string getGlobalDataKey() const { return globalDataKey_; }
65 
66  // tangent
67 
69  const std::vector<std::vector<std::string> > & getTangentNames() const { return tangentNames_; }
70 
71  // jacobian
72 
74  std::string getSensitivitiesName() const { return sensName_; }
75 
77  int getGatherSeedIndex() const { return gatherSeedIndex_; }
78 
81 
82  // hessian
83 
86 
89 
90 private:
91  GatherSolution_Input(const GatherSolution_Input &); // hide me
92 
93  // residual
94  std::vector<std::string> dofNames_;
95  std::vector<std::string> indexerNames_;
98  std::string globalDataKey_;
99 
100  // tangent
101  std::vector<std::vector<std::string> > tangentNames_;
102 
103  // jacobian
104  std::string sensName_;
107 
108  // hessian
111 };
112 
113 }
114 
115 #endif
Teuchos::RCP< const PureBasis > basis_
const std::vector< std::vector< std::string > > & getTangentNames() const
Get the name of the tangent fields (tangent only)
const std::vector< std::string > & getDofNames() const
The names of the DOFs to be gathered (all types)
void setParameterList(const Teuchos::ParameterList &pl)
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
Get valid parameters.
std::string getGlobalDataKey() const
Name of the global evaluation data container to use for the source vector (all types) ...
std::vector< std::vector< std::string > > tangentNames_
Teuchos::RCP< const PureBasis > getBasis() const
Basis definiting layout of dof names (all types)
std::vector< std::string > indexerNames_
int getGatherSeedIndex() const
What index to use for initializing the seed (Jacobian and Hessian)
bool firstSensitivitiesAvailable()
Are first derivative sensitivities enabled or disabled? (Jacobian and Hessian)
bool useTimeDerivativeSolutionVector() const
Gather a time derivative vector? (all types)
bool secondSensitivitiesAvailable()
Are second derivative sensitivies enabled or disabled (Hessian only)
const std::vector< std::string > & getIndexerNames() const
std::string getSecondSensitivityDataKeyPrefix()
What prefix to use for the GEDC for second derivative sensitivity direction (Hessian only) ...
std::string getSensitivitiesName() const
The name of the sensitivities. Enables sensitivities at &quot;preEvaluate&quot; time (Jacobian and Hessian) ...