Panzer  Version of the Day
Panzer_EquationSet_DefaultImpl_decl.hpp
Go to the documentation of this file.
1 // @HEADER
2 // ***********************************************************************
3 //
4 // Panzer: A partial differential equation assembly
5 // engine for strongly coupled complex multiphysics systems
6 // Copyright (2011) Sandia Corporation
7 //
8 // Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9 // the U.S. Government retains certain rights in this software.
10 //
11 // Redistribution and use in source and binary forms, with or without
12 // modification, are permitted provided that the following conditions are
13 // met:
14 //
15 // 1. Redistributions of source code must retain the above copyright
16 // notice, this list of conditions and the following disclaimer.
17 //
18 // 2. Redistributions in binary form must reproduce the above copyright
19 // notice, this list of conditions and the following disclaimer in the
20 // documentation and/or other materials provided with the distribution.
21 //
22 // 3. Neither the name of the Corporation nor the names of the
23 // contributors may be used to endorse or promote products derived from
24 // this software without specific prior written permission.
25 //
26 // THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27 // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37 //
38 // Questions? Contact Roger P. Pawlowski (rppawlo@sandia.gov) and
39 // Eric C. Cyr (eccyr@sandia.gov)
40 // ***********************************************************************
41 // @HEADER
42 
43 #ifndef PANZER_EQUATION_SET_DEFAULTIMPL_DECL_HPP
44 #define PANZER_EQUATION_SET_DEFAULTIMPL_DECL_HPP
45 
46 #include "Panzer_EquationSet.hpp"
48 #include "Panzer_CellData.hpp"
49 
50 #include <map>
51 
52 namespace Teuchos {
53  class ParameterList;
54 }
55 
56 namespace PHX {
57  template<typename Traits> class FieldManager;
58 }
59 
60 namespace panzer {
61 
62  template <typename EvalT>
65 
66  public:
67 
69  const int& default_integration_order,
70  const panzer::CellData& cell_data,
71  const Teuchos::RCP<panzer::GlobalData>& global_data,
72  const bool build_transient_support);
73 
75 
77  const panzer::FieldLibrary& fl,
79  const Teuchos::ParameterList& user_data) const;
80 
82  const panzer::FieldLibrary& fl,
84  const Teuchos::ParameterList& user_data) const;
85 
87  const panzer::FieldLibrary& fl,
88  const Teuchos::ParameterList& user_data) const = 0;
89 
94  const Teuchos::ParameterList& user_data) const;
95 
100  const Teuchos::ParameterList& models,
101  const Teuchos::ParameterList& user_data) const;
102 
104  const panzer::FieldLayoutLibrary& fl,
107  const std::string & model_name,
108  const Teuchos::ParameterList& models,
109  const Teuchos::ParameterList& user_data) const;
110 
112  const panzer::FieldLibrary& fl,
114  const std::string& model_name,
115  const Teuchos::ParameterList& models,
117  const Teuchos::ParameterList& user_data) const;
118 
120 
121  virtual const std::vector<std::pair<std::string,Teuchos::RCP<panzer::PureBasis> > > & getProvidedDOFs() const;
122 
123  virtual const std::vector<std::vector<std::string> > & getCoordinateDOFs() const;
124 
125  virtual const std::map<int,Teuchos::RCP<panzer::IntegrationRule> > & getIntegrationRules() const;
126 
127  virtual void setElementBlockId(const std::string & blockId);
128 
129  virtual std::string getElementBlockId() const;
130 
131  virtual std::string getType() const;
132 
134  virtual void setTangentParamNames(const std::vector<std::string>& tangent_param_names);
135 
144  void getAddedDOFs(std::vector<std::string> & dofNames) const;
145 
160  void updateDOF(const std::string & dofName,
161  int basisOrder,
162  int integrationOrder = -1);
163 
169  int getBasisOrder(const std::string & dofName) const;
170 
176  int getIntegrationOrder(const std::string & dofName) const;
177 
178  protected:
179 
181  virtual void setupDOFs();
182 
184  bool buildTransientSupport() const;
185 
186  // The set of functions below are for use by derived classes to specify the
187  // provided degree of freedom (and associated residual name), in addition
188  // to enabling the, gradient, curl and time derivative for those.
189 
211  void addDOF(const std::string & dofName,
212  const std::string & basisType,
213  const int & basisOrder,
214  const int integrationOrder = -1,
215  const std::string residualName = "",
216  const std::string scatterName = "");
217 
226  void addDOFGrad(const std::string & dofName,
227  const std::string & gradName = "");
228 
237  void addDOFCurl(const std::string & dofName,
238  const std::string & curlName = "");
239 
248  void addDOFDiv(const std::string & dofName,
249  const std::string & divName = "");
250 
259  void addDOFTimeDerivative(const std::string & dofName,
260  const std::string & dotName = "");
261 
269  void setCoordinateDOFs(const std::vector<std::string> & dofNames);
270 
276  void addClosureModel(const std::string& closure_model);
277 
284  void setDefaultValidParameters(Teuchos::ParameterList& valid_parameters);
285 
287  Teuchos::RCP<panzer::PureBasis> getBasisForDOF(const std::string& dof_name) const;
288 
290  Teuchos::RCP<panzer::IntegrationRule> getIntRuleForDOF(const std::string& dof_name) const;
291 
293  Teuchos::RCP<panzer::BasisIRLayout> getBasisIRLayoutForDOF(const std::string& dof_name) const;
294 
309  const std::string dof_name,
310  const std::vector<std::string>& residual_contributions,
311  const std::string residual_field_name = "") const;
312 
329  const std::string dof_name,
330  const std::vector<std::string>& residual_contributions,
331  const std::vector<double>& scale_contributions,
332  const std::string residual_field_name = "") const;
333 
335  //object. Useful for passing off input parameter sublists
336  //directly to evaluators.
338 
339  // Deprecated code support, NOTE: this assumes the same basis and inte rule are used for all dofs in the physics block!!! We are setting these to avoid having to change closure model factories for all physics right away.
341 
342  protected:
343 
344  struct DOFDescriptor {
346  : dofName("")
347  , residualName(std::make_pair(false,""))
348  , grad(std::make_pair(false,""))
349  , curl(std::make_pair(false,""))
350  , div(std::make_pair(false,""))
351  , timeDerivative(std::make_pair(false,"")) {}
352 
353  std::string dofName;
354  std::string basisType;
359  std::pair<bool,std::string> residualName;
360  std::string scatterName;
361  std::pair<bool,std::string> grad;
362  std::pair<bool,std::string> curl;
363  std::pair<bool,std::string> div;
364  std::pair<bool,std::string> timeDerivative;
365 
366  void print(std::ostream & os) const {
367  os << "DOF Desc = \"" << dofName << "\": "
368  << "Basis = (" << basisType << ", \"" << basisOrder << "\"), "
369  << "Res = (" << residualName.first << ", \"" << residualName.second << "\"), "
370  << "Grad = (" << grad.first << ", \"" << grad.second << "\"), "
371  << "Curl = (" << curl.first << ", \"" << curl.second << "\"), "
372  << "Div = (" << div.first << ", \"" << div.second << "\"), "
373  << "Time = (" << timeDerivative.first << ", \"" << timeDerivative.second << "\")";
374  }
375  };
376 
378  std::map<std::string,DOFDescriptor> m_provided_dofs_desc;
379 
380  // Tangent parameter names for setting up tangent fields
381  std::vector<std::string> m_tangent_param_names;
382 
383  private:
384 
386  typedef typename std::map<std::string,DOFDescriptor>::const_iterator DescriptorIterator;
387 
388 
399  std::map<std::string,std::pair<Teuchos::RCP<panzer::PureBasis>,Teuchos::RCP<std::vector<std::string> > > > m_basis_to_dofs;
400 
402  typedef typename std::map<std::string,std::pair<Teuchos::RCP<panzer::PureBasis>,Teuchos::RCP<std::vector<std::string> > > >::const_iterator BasisIterator;
403 
408 
410  std::vector<std::pair<std::string,Teuchos::RCP<panzer::PureBasis> > > m_provided_dofs;
411 
413  std::vector<std::pair<std::string,Teuchos::RCP<panzer::PureBasis> > > m_provided_coord_prefixes;
414 
416  std::map<int,Teuchos::RCP<panzer::IntegrationRule> > m_int_rules;
417 
419  std::map<std::string,Teuchos::RCP<panzer::PureBasis> > m_unique_bases;
420 
422 
423  std::string m_block_id;
424  std::string m_type;
425  std::vector<std::string> m_closure_model_ids;
426 
427  std::vector<std::vector<std::string> > m_coordinate_dofs;
428 
429  };
430 
431 }
432 
433 #endif
panzer::EquationSet_DefaultImpl::getIntegrationOrder
int getIntegrationOrder(const std::string &dofName) const
Get the integration order for an existing degree of freedom.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:854
panzer::EquationSet_DefaultImpl::addClosureModel
void addClosureModel(const std::string &closure_model)
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1132
panzer::EquationSet
Definition: Panzer_EquationSet.hpp:55
panzer::EquationSet_DefaultImpl::setupDeprecatedDOFsSupport
void setupDeprecatedDOFsSupport()
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:147
panzer::EquationSet_DefaultImpl::DOFDescriptor
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:344
panzer::ClosureModelFactory_TemplateManager
Definition: Panzer_ClosureModel_Factory_TemplateManager.hpp:58
panzer::EquationSet_DefaultImpl::getIntRuleForDOF
Teuchos::RCP< panzer::IntegrationRule > getIntRuleForDOF(const std::string &dof_name) const
Returns the integration rule associated with the residual contributions for the dof_name.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1039
panzer::CellData
Data for determining cell topology and dimensionality.
Definition: Panzer_CellData.hpp:65
panzer::EquationSet_DefaultImpl::EquationSet_DefaultImpl
EquationSet_DefaultImpl(const Teuchos::RCP< Teuchos::ParameterList > &params, const int &default_integration_order, const panzer::CellData &cell_data, const Teuchos::RCP< panzer::GlobalData > &global_data, const bool build_transient_support)
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:67
panzer::EquationSet_DefaultImpl::DOFDescriptor::residualName
std::pair< bool, std::string > residualName
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:359
panzer::FieldLayoutLibrary
Definition: Panzer_FieldLibrary.hpp:81
panzer::EquationSet_DefaultImpl::DOFDescriptor::basis
Teuchos::RCP< panzer::PureBasis > basis
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:356
panzer::EquationSet_DefaultImpl::buildAndRegisterEquationSetEvaluators
virtual void buildAndRegisterEquationSetEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::FieldLibrary &fl, const Teuchos::ParameterList &user_data) const =0
panzer::EquationSet_DefaultImpl::getEquationSetParameterList
Teuchos::RCP< Teuchos::ParameterList > getEquationSetParameterList() const
Returns the parameter list used to build this equation set.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1140
panzer::EquationSet_DefaultImpl::DOFDescriptor::div
std::pair< bool, std::string > div
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:363
panzer::EquationSet_DefaultImpl::getElementBlockId
virtual std::string getElementBlockId() const
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:774
panzer::EquationSet_DefaultImpl::addDOFTimeDerivative
void addDOFTimeDerivative(const std::string &dofName, const std::string &dotName="")
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:979
Panzer_EquationSet.hpp
panzer::EquationSet_DefaultImpl::DOFDescriptor::dofName
std::string dofName
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:353
panzer::EquationSet_DefaultImpl::getType
virtual std::string getType() const
Returns the type of the equation set object. Corresponds to the keyword used by the equation set fact...
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:781
panzer::EquationSet_DefaultImpl::getIntegrationRules
virtual const std::map< int, Teuchos::RCP< panzer::IntegrationRule > > & getIntegrationRules() const
Return a map of unique integration rules for the equation set, key is the integration order.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:755
panzer::EquationSet_DefaultImpl::~EquationSet_DefaultImpl
virtual ~EquationSet_DefaultImpl()
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:74
panzer::EquationSet_DefaultImpl::m_provided_dofs
std::vector< std::pair< std::string, Teuchos::RCP< panzer::PureBasis > > > m_provided_dofs
Key is the dof name and the value is the corresponding basis.
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:410
panzer::EquationSet_DefaultImpl::DOFDescriptor::integrationOrder
int integrationOrder
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:357
panzer::EquationSet_DefaultImpl::getBasisOrder
int getBasisOrder(const std::string &dofName) const
Get the basis order for an existing degree of freedom.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:840
panzer::EquationSet_DefaultImpl::getBasisIRLayoutForDOF
Teuchos::RCP< panzer::BasisIRLayout > getBasisIRLayoutForDOF(const std::string &dof_name) const
Returns the BasisIRLayout for the dof_name.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1051
panzer::EquationSet_DefaultImpl::setCoordinateDOFs
void setCoordinateDOFs(const std::vector< std::string > &dofNames)
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1001
panzer::EquationSet_DefaultImpl::DOFDescriptor::intRule
Teuchos::RCP< panzer::IntegrationRule > intRule
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:358
panzer::EquationSet_DefaultImpl::buildAndRegisterDOFProjectionsToIPEvaluators
virtual void buildAndRegisterDOFProjectionsToIPEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::FieldLayoutLibrary &fl, const Teuchos::RCP< panzer::IntegrationRule > &ir, const Teuchos::Ptr< const panzer::LinearObjFactory< panzer::Traits > > &lof, const Teuchos::ParameterList &user_data) const
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:361
panzer::EquationSet_DefaultImpl::m_build_transient_support
const bool m_build_transient_support
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:407
panzer::EquationSet_DefaultImpl::buildAndRegisterInitialConditionEvaluators
virtual void buildAndRegisterInitialConditionEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::FieldLibrary &fl, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &factory, const std::string &model_name, const Teuchos::ParameterList &models, const LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:642
Teuchos::RCP< Teuchos::ParameterList >
panzer::EquationSet_DefaultImpl::updateDOF
void updateDOF(const std::string &dofName, int basisOrder, int integrationOrder=-1)
Modifying an existing DOF's basis function and integration rule.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:814
panzer::EquationSet_DefaultImpl::m_closure_model_ids
std::vector< std::string > m_closure_model_ids
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:425
panzer::FieldLibrary
Definition: Panzer_FieldLibrary.hpp:120
Teuchos::Ptr
panzer::EquationSet_DefaultImpl::buildAndRegisterScatterEvaluators
virtual void buildAndRegisterScatterEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::FieldLibrary &fl, const LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:541
panzer::EquationSet_DefaultImpl::setTangentParamNames
virtual void setTangentParamNames(const std::vector< std::string > &tangent_param_names)
Set the list of tangent parameter names.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:788
panzer::EquationSet_DefaultImpl::m_cell_data
const panzer::CellData m_cell_data
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:406
panzer::EquationSet_DefaultImpl::buildAndRegisterGatherAndOrientationEvaluators
virtual void buildAndRegisterGatherAndOrientationEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::FieldLibrary &fl, const LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &user_data) const
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:165
Panzer_CellData.hpp
panzer::EquationSet_DefaultImpl::m_int_rules
std::map< int, Teuchos::RCP< panzer::IntegrationRule > > m_int_rules
Key is the integration rule order and the value is the corresponding integration rule.
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:416
panzer::EquationSet_DefaultImpl::buildAndRegisterResidualSummationEvaluator
void buildAndRegisterResidualSummationEvaluator(PHX::FieldManager< panzer::Traits > &fm, const std::string dof_name, const std::vector< std::string > &residual_contributions, const std::string residual_field_name="") const
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1064
panzer::EquationSet_DefaultImpl::addDOFDiv
void addDOFDiv(const std::string &dofName, const std::string &divName="")
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:957
panzer::EquationSet_DefaultImpl
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:63
panzer::EquationSet_DefaultImpl::m_provided_dofs_desc
std::map< std::string, DOFDescriptor > m_provided_dofs_desc
Maps the dof name into a DOFDescriptor. Should be private, but is protected so that the aux equaiton ...
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:378
panzer::EquationSet_DefaultImpl::m_unique_bases
std::map< std::string, Teuchos::RCP< panzer::PureBasis > > m_unique_bases
Key is the basis name from panzer::PureBasis::name() and value is the corresponding PureBasis.
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:419
panzer::EquationSet_DefaultImpl::addDOFCurl
void addDOFCurl(const std::string &dofName, const std::string &curlName="")
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:935
panzer::EquationSet_DefaultImpl::setupDOFs
virtual void setupDOFs()
Builds the integration rule, basis, DOFs, and default parameter list. This MUST be called in the cons...
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:86
panzer::EquationSet_DefaultImpl::buildTransientSupport
bool buildTransientSupport() const
Returns true if transient support should be enabled in the equation set.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:795
panzer::EquationSet_DefaultImpl::m_eval_plist
Teuchos::RCP< Teuchos::ParameterList > m_eval_plist
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:421
panzer::EquationSet_DefaultImpl::m_tangent_param_names
std::vector< std::string > m_tangent_param_names
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:381
panzer::EquationSet_DefaultImpl::DOFDescriptor::print
void print(std::ostream &os) const
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:366
Panzer_GlobalDataAcceptor_DefaultImpl.hpp
panzer::EquationSet_DefaultImpl::setDefaultValidParameters
void setDefaultValidParameters(Teuchos::ParameterList &valid_parameters)
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1020
panzer::EquationSet_DefaultImpl::m_provided_coord_prefixes
std::vector< std::pair< std::string, Teuchos::RCP< panzer::PureBasis > > > m_provided_coord_prefixes
Key is the coordinate prefix name and the value is the corresponding basis.
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:413
panzer::EquationSet_DefaultImpl::DOFDescriptor::scatterName
std::string scatterName
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:360
panzer::EquationSet_DefaultImpl::addDOFGrad
void addDOFGrad(const std::string &dofName, const std::string &gradName="")
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:913
panzer::EquationSet_DefaultImpl::addDOF
void addDOF(const std::string &dofName, const std::string &basisType, const int &basisOrder, const int integrationOrder=-1, const std::string residualName="", const std::string scatterName="")
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:868
panzer::EquationSet_DefaultImpl::getProvidedDOFs
virtual const std::vector< std::pair< std::string, Teuchos::RCP< panzer::PureBasis > > > & getProvidedDOFs() const
Return the Basis for the equation set, key is the DOF name (note coordinate DOFs are NOT included)
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:739
std
Definition: Panzer_BasisDescriptor.hpp:117
panzer::EquationSet_DefaultImpl::m_default_integration_order
int m_default_integration_order
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:405
panzer::EquationSet_DefaultImpl::buildAndRegisterClosureModelEvaluators
virtual void buildAndRegisterClosureModelEvaluators(PHX::FieldManager< panzer::Traits > &fm, const panzer::FieldLayoutLibrary &fl, const Teuchos::RCP< panzer::IntegrationRule > &ir, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &factory, const Teuchos::ParameterList &models, const Teuchos::ParameterList &user_data) const
Register closure model evaluators with the model name internally specified by the equation set.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:599
panzer::EquationSet_DefaultImpl::DescriptorIterator
std::map< std::string, DOFDescriptor >::const_iterator DescriptorIterator
For convenience, declare the DOFDescriptor iterator.
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:386
panzer::EquationSet_DefaultImpl::DOFDescriptor::DOFDescriptor
DOFDescriptor()
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:345
panzer::EquationSet_DefaultImpl::m_coordinate_dofs
std::vector< std::vector< std::string > > m_coordinate_dofs
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:427
panzer
Definition: Panzer_BasisValues_Evaluator_decl.hpp:54
PHX
Definition: Panzer_BCStrategy_Base.hpp:52
panzer::EquationSet_DefaultImpl::DOFDescriptor::basisType
std::string basisType
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:354
panzer::EquationSet_DefaultImpl::m_type
std::string m_type
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:424
panzer::EquationSet_DefaultImpl::m_block_id
std::string m_block_id
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:423
Teuchos::ParameterList
panzer::EquationSet_DefaultImpl::getCoordinateDOFs
virtual const std::vector< std::vector< std::string > > & getCoordinateDOFs() const
Return a vector of vectors that correspond to DOFs set as coordinate fields.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:747
panzer::EquationSet_DefaultImpl::getAddedDOFs
void getAddedDOFs(std::vector< std::string > &dofNames) const
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:803
panzer::EquationSet_DefaultImpl::BasisIterator
std::map< std::string, std::pair< Teuchos::RCP< panzer::PureBasis >, Teuchos::RCP< std::vector< std::string > > > >::const_iterator BasisIterator
For convenience, declare a basis iterator.
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:402
panzer::EquationSet_DefaultImpl::DOFDescriptor::basisOrder
int basisOrder
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:355
Teuchos
PHX::FieldManager
Definition: Panzer_BCStrategy_Base.hpp:53
panzer::LinearObjFactory
Definition: Panzer_LinearObjFactory.hpp:103
panzer::GlobalDataAcceptorDefaultImpl
Default implementation for accessing the GlobalData object.
Definition: Panzer_GlobalDataAcceptor_DefaultImpl.hpp:52
panzer::EquationSet_DefaultImpl::m_input_params
const Teuchos::RCP< Teuchos::ParameterList > m_input_params
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:404
panzer::EquationSet_DefaultImpl::getEvaluatorParameterList
virtual const Teuchos::RCP< Teuchos::ParameterList > getEvaluatorParameterList() const
Returns the parameter list that will be passed off from the equaiton set to the closure model evaluat...
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:731
panzer::EquationSet_DefaultImpl::DOFDescriptor::timeDerivative
std::pair< bool, std::string > timeDerivative
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:364
panzer::EquationSet_DefaultImpl::setElementBlockId
virtual void setElementBlockId(const std::string &blockId)
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:763
panzer::EquationSet_DefaultImpl::DOFDescriptor::curl
std::pair< bool, std::string > curl
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:362
panzer::EquationSet_DefaultImpl::getBasisForDOF
Teuchos::RCP< panzer::PureBasis > getBasisForDOF(const std::string &dof_name) const
Returns the PureBasis associated with the residual contributions for the dof_name.
Definition: Panzer_EquationSet_DefaultImpl_impl.hpp:1029
panzer::EquationSet_DefaultImpl::DOFDescriptor::grad
std::pair< bool, std::string > grad
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:361
panzer::EquationSet_DefaultImpl::m_basis_to_dofs
std::map< std::string, std::pair< Teuchos::RCP< panzer::PureBasis >, Teuchos::RCP< std::vector< std::string > > > > m_basis_to_dofs
Map that links a common basis to a vector of dof names. Key is the unique basis name,...
Definition: Panzer_EquationSet_DefaultImpl_decl.hpp:399