Panzer  Version of the Day
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
panzer Namespace Reference

Namespaces

 dof_functors
 
 impl
 
 orientation_helpers
 
 response_bc_adapters
 

Classes

class  ArrayToFieldVector
 
struct  ArrayTraits
 
class  AssemblyEngine
 Class for the matrix and residual fill. More...
 
class  AssemblyEngine_TemplateBuilder
 
class  AssemblyEngine_TemplateManager
 
class  AssemblyEngineInArgs
 
class  Base
 Non-templated empty base class for template managers. More...
 
class  basic_ios_all_saver
 
class  Basis_Constant
 
class  BasisInformation
 Description and data layouts associated with a particular basis. More...
 
class  BasisIRLayout
 
class  BasisValues2
 
class  BC
 Stores input information for a boundary condition. More...
 
struct  BCFactoryComposite
 
class  BCStrategy
 
class  BCStrategy_Dirichlet_DefaultImpl
 
class  BCStrategy_Interface_DefaultImpl
 
class  BCStrategy_Neumann_DefaultImpl
 
class  BCStrategy_TemplateManager
 
class  BCStrategy_WeakDirichlet_DefaultImpl
 
class  BCStrategyBase
 Non-templated empty base class for BCStrategy objects. More...
 
struct  BCStrategyFactory
 Interface for constructing a BCStrategy_TemplateManager. More...
 
class  BlockedDOFManager
 
class  BlockedDOFManagerFactory
 
class  BlockedEpetraLinearObjContainer
 
class  BlockedEpetraLinearObjFactory
 
class  BlockedTpetraLinearObjContainer
 
class  BlockedTpetraLinearObjFactory
 
class  BlockedVector_ReadOnly_GlobalEvaluationData
 
class  CellData
 Data for determining cell topology and dimensionality. More...
 
class  CellTopologyInfo
 
class  CloneableEvaluator
 Non-templated empty base class for template managers. More...
 
class  ClosureModelFactory
 
class  ClosureModelFactory_TemplateManager
 
class  ClosureModelFactoryBase
 
class  ClosureModelFactoryComposite
 
class  ClosureModelFactoryComposite_TemplateBuilder
 
class  CommaSeparatedEntryValidator
 
class  ConnManager
 
class  ConnManagerBase
 
class  ConstVectorTemplateIterator
 
class  DOF
 Interpolates basis DOF values to IP DOF values. More...
 
class  DOF< typename TRAITS::Jacobian, TRAITS >
 
class  DOF_BasisToBasis
 Interpolates DOF coefficients on one basis to points on another basis. This is used with nodal bases to map DOF coefficient values from one nodal basis to dof coefficients on another basis. More...
 
class  DOF_PointField
 Interpolates basis DOF using reference coordinates defined by a field. More...
 
class  DOF_PointValues
 Interpolates basis DOF values to IP DOF Curl values. More...
 
class  DOF_PointValues< typename TRAITS::Jacobian, TRAITS >
 
class  DOFCurl
 Interpolates basis DOF values to IP DOF Curl values. More...
 
class  DOFCurl< typename TRAITS::Jacobian, TRAITS >
 
class  DOFDiv
 Interpolates basis DOF values to IP DOF Div values. More...
 
class  DOFDiv< panzer::Traits::Jacobian, TRAITS >
 
class  DOFManager
 
class  DOFManagerFactory
 
class  EdgeFieldPattern
 
class  ElemFieldPattern
 
class  EmptyEvaluatorFactory
 
class  EpetraLinearObjContainer
 
class  EpetraVector_ReadOnly_GlobalEvaluationData
 
class  EquationSet
 
class  EquationSet_DefaultImpl
 
class  EquationSet_FactoryComposite
 
class  EquationSet_TemplateManager
 
class  EquationSetBase
 Non-templated empty base class for EquationSet objects. More...
 
struct  EquationSetFactory
 Allocates and initializes an equation set template manager. More...
 
struct  EvaluationTraits
 
class  EvaluatorsRegistrar
 
class  EvaluatorWithBaseImpl
 Wrapper to PHX::EvaluatorWithBaseImpl that implements Panzer-specific helpers. More...
 
class  ExplicitModelEvaluator
 
struct  ExtremeValueResponse_Builder
 
class  ExtremeValueScatter
 
class  ExtremeValueScatterBase
 
class  FaceFieldPattern
 
class  FieldAggPattern
 
class  FieldLayoutLibrary
 
class  FieldLibrary
 
class  FieldLibraryBase
 
class  FieldManagerBuilder
 
struct  FieldMultTag
 
class  FieldPattern
 
class  FieldSpy
 
class  Filtered_UniqueGlobalIndexer
 
struct  FunctionalResponse_Builder
 
class  FunctionalScatter
 
class  FunctionalScatterBase
 
class  GatherBasisCoordinates
 Gathers coordinates for the basis function from the workset and stores them in the field manager. More...
 
class  GatherIntegrationCoordinates
 Gathers coordinates for the quadrature from the workset and stores them in the field manager. More...
 
class  GatherNormals
 Gathers tangent vectors per field from the global indexer and stores them in the field manager. More...
 
class  GatherOrientation
 Gathers orientations per field from the global indexer and stores them in the field manager. More...
 
class  GatherSolution_BlockedEpetra
 Gathers solution values from the Newton solution vector into the nodal fields of the field manager. More...
 
class  GatherSolution_BlockedEpetra< panzer::Traits::Jacobian, TRAITS, LO, GO >
 
class  GatherSolution_BlockedEpetra< panzer::Traits::Residual, TRAITS, LO, GO >
 
class  GatherSolution_BlockedEpetra< panzer::Traits::Tangent, TRAITS, LO, GO >
 
class  GatherSolution_BlockedTpetra
 Gathers solution values from the Newton solution vector into the nodal fields of the field manager. More...
 
class  GatherSolution_BlockedTpetra< panzer::Traits::Jacobian, TRAITS, S, LO, GO, NodeT >
 
class  GatherSolution_BlockedTpetra< panzer::Traits::Residual, TRAITS, S, LO, GO, NodeT >
 
class  GatherSolution_BlockedTpetra< panzer::Traits::Tangent, TRAITS, S, LO, GO, NodeT >
 
class  GatherSolution_Epetra
 Gathers solution values from the Newton solution vector into the nodal fields of the field manager. More...
 
class  GatherSolution_Epetra< panzer::Traits::Jacobian, TRAITS, LO, GO >
 
class  GatherSolution_Epetra< panzer::Traits::Residual, TRAITS, LO, GO >
 
class  GatherSolution_Epetra< panzer::Traits::Tangent, TRAITS, LO, GO >
 
class  GatherSolution_Input
 
class  GatherSolution_Tpetra
 Gathers solution values from the Newton solution vector into the nodal fields of the field manager. More...
 
class  GatherSolution_Tpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >
 
class  GatherSolution_Tpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >
 
class  GatherSolution_Tpetra< panzer::Traits::Tangent, TRAITS, LO, GO, NodeT >
 
class  GatherTangent_BlockedEpetra
 Gathers tangent vectors dx/dp for computing df/dx*dx/dp + df/dp into the nodal fields of the field manager. More...
 
class  GatherTangent_BlockedTpetra
 Gathers tangent vectors dx/dp for computing df/dx*dx/dp + df/dp into the nodal fields of the field manager. More...
 
class  GatherTangent_Epetra
 Gathers tangent vectors dx/dp for computing df/dx*dx/dp + df/dp into the nodal fields of the field manager. More...
 
class  GatherTangent_Tpetra
 Gathers tangent vectors dx/dp for computing df/dx*dx/dp + df/dp into the nodal fields of the field manager. More...
 
class  GatherTangents
 Gathers tangent vectors per field from the global indexer and stores them in the field manager. More...
 
class  GenericEvaluatorFactory
 
class  GeometricAggFieldPattern
 
struct  GlobalData
 Struct for global data to be stored. More...
 
class  GlobalDataAcceptor
 Interface for accessing the GlobalData object. More...
 
class  GlobalDataAcceptorDefaultImpl
 Default implementation for accessing the GlobalData object. More...
 
class  GlobalEvaluationData
 
class  GlobalEvaluationData_BCAdjustment
 
class  GlobalEvaluationData_Default
 
class  GlobalEvaluationDataContainer
 
struct  ICFieldDescriptor
 
class  IntegrationRule
 
class  IntegrationValues2
 
class  Intrepid2FieldContainerFactory
 
class  Intrepid2FieldPattern
 
struct  LessBC
 
struct  LessSide
 
class  LinearObjContainer
 
class  LinearObjFactory
 
class  LOCPair_GlobalEvaluationData
 
class  MassMatrixModelEvaluator
 
class  MaterialModelEntry
 Class the holds parsed input data for material models. More...
 
class  MDFieldArrayFactory
 
struct  MemUsage
 The memory usage information. More...
 
class  ModelEvaluator
 
class  ModelEvaluator_Epetra
 
class  MultiVariateParameter
 Constant parameter from sacado parameter library. More...
 
class  NodalFieldPattern
 
class  OrientationContainer
 
class  OrientationContainerBase
 
class  OutputStream
 Interface for handling output in Panzer. More...
 
class  OutputStreamDefaultImpl
 Default implementation. More...
 
struct  pair_hash
 
struct  PanzerSumTag
 
class  PAPICounter
 
class  PAPICounter2
 Interface to papi counters. More...
 
class  Parameter
 Constant parameter from sacado parameter library. More...
 
class  ParameterLibraryAcceptor
 Pure Virtual base class for accepting the parameter library. More...
 
class  ParameterLibraryAcceptor_DefaultImpl
 Pure Virtual base class for accepting the parameter library. More...
 
class  ParameterList_GlobalEvaluationData
 
class  PhysicsBlock
 Object that contains information on the physics and discretization of a block of elements with the SAME topology. More...
 
class  PointRule
 
struct  PointValues2
 
struct  ProbeResponse_Builder
 
class  ProbeScatter
 
class  ProbeScatterBase
 
class  ProjectToEdges
 Given a function stored as a vector and the tangents at each edge, project the vector onto the edge basis. More...
 
class  ProjectToFaces
 Given a function stored as a vector and the tangents at each edge, project the vector onto the edge basis. More...
 
class  PureBasis
 Description and data layouts associated with a particular basis. More...
 
class  ReadOnlyVector_GlobalEvaluationData
 
class  ReorderADValues_Evaluator
 Reorders the ad values of a specified field to match a different unique global indexer. More...
 
class  ReorderADValues_Evaluator< typename TRAITS::Jacobian, TRAITS >
 
class  Response_ExtremeValue
 
class  Response_Functional
 
class  Response_IPCoordinates
 
class  Response_Probe
 
class  Response_Residual
 
class  Response_Residual< panzer::Traits::Jacobian >
 
class  Response_Residual< panzer::Traits::Residual >
 
class  ResponseBase
 
class  ResponseContainer
 
class  ResponseContainerBase
 
class  ResponseEvaluatorFactory
 
class  ResponseEvaluatorFactory_ExtremeValue
 
class  ResponseEvaluatorFactory_Functional
 
class  ResponseEvaluatorFactory_IPCoordinates
 
struct  ResponseEvaluatorFactory_IPCoordinates_Builder
 
class  ResponseEvaluatorFactory_Probe
 
class  ResponseEvaluatorFactory_TemplateManager
 
class  ResponseEvaluatorFactoryBase
 
class  ResponseLibrary
 
class  ResponseMESupport_Default
 
class  ResponseMESupport_Default< panzer::Traits::Jacobian >
 
class  ResponseMESupport_Default< panzer::Traits::Tangent >
 
class  ResponseMESupportBase
 
class  ResponseMESupportBase< panzer::Traits::Jacobian >
 
class  ResponseMESupportBase< panzer::Traits::Tangent >
 
class  ResponseMESupportBuilderBase
 
class  ResponseScatterEvaluator
 
class  ResponseScatterEvaluator_ExtremeValue
 
class  ResponseScatterEvaluator_Functional
 
class  ResponseScatterEvaluator_IPCoordinates
 
class  ResponseScatterEvaluator_Probe
 
class  ResponseScatterEvaluator_Probe< panzer::Traits::Jacobian, panzer::Traits, LO, GO >
 
class  ResponseScatterEvaluator_ProbeBase
 
class  RVEF2
 
class  ScalarParameterEntry
 
class  ScatterDirichletResidual_BlockedEpetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterDirichletResidual_BlockedEpetra< panzer::Traits::Jacobian, TRAITS, LO, GO >
 
class  ScatterDirichletResidual_BlockedEpetra< panzer::Traits::Residual, TRAITS, LO, GO >
 
class  ScatterDirichletResidual_BlockedEpetra< panzer::Traits::Tangent, TRAITS, LO, GO >
 
class  ScatterDirichletResidual_BlockedTpetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterDirichletResidual_BlockedTpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >
 
class  ScatterDirichletResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >
 
class  ScatterDirichletResidual_Epetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterDirichletResidual_Epetra< panzer::Traits::Jacobian, TRAITS, LO, GO >
 
class  ScatterDirichletResidual_Epetra< panzer::Traits::Residual, TRAITS, LO, GO >
 
class  ScatterDirichletResidual_Epetra< panzer::Traits::Tangent, TRAITS, LO, GO >
 
class  ScatterDirichletResidual_Tpetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterDirichletResidual_Tpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >
 
class  ScatterDirichletResidual_Tpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >
 
class  ScatterDirichletResidual_Tpetra< panzer::Traits::Tangent, TRAITS, LO, GO, NodeT >
 
class  ScatterResidual_BlockedEpetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterResidual_BlockedEpetra< panzer::Traits::Jacobian, TRAITS, LO, GO >
 
class  ScatterResidual_BlockedEpetra< panzer::Traits::Residual, TRAITS, LO, GO >
 
class  ScatterResidual_BlockedEpetra< panzer::Traits::Tangent, TRAITS, LO, GO >
 
class  ScatterResidual_BlockedTpetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterResidual_BlockedTpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >
 
class  ScatterResidual_BlockedTpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >
 
class  ScatterResidual_Epetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterResidual_Epetra< panzer::Traits::Jacobian, TRAITS, LO, GO >
 
class  ScatterResidual_Epetra< panzer::Traits::Residual, TRAITS, LO, GO >
 
class  ScatterResidual_Epetra< panzer::Traits::Tangent, TRAITS, LO, GO >
 
class  ScatterResidual_Tpetra
 Pushes residual values into the residual vector for a Newton-based solve. More...
 
class  ScatterResidual_Tpetra< panzer::Traits::Jacobian, TRAITS, LO, GO, NodeT >
 
class  ScatterResidual_Tpetra< panzer::Traits::Residual, TRAITS, LO, GO, NodeT >
 
class  ScatterResidual_Tpetra< panzer::Traits::Tangent, TRAITS, LO, GO, NodeT >
 
struct  SideId
 
struct  StrBasisComp
 Simple binary comparison class to help with sorting. More...
 
struct  StrPureBasisComp
 Simple binary comparison class to help with sorting. More...
 
class  SumStatic
 
class  SumStatic< EvalT, TRAITS, Tag0, Tag1, void >
 
class  SumStatic< EvalT, TRAITS, Tag0, void, void >
 
class  ThyraObjContainer
 
class  ThyraObjFactory
 
class  TpetraLinearObjContainer
 
class  TpetraLinearObjFactory
 
class  TpetraVector_ReadOnly_GlobalEvaluationData
 
struct  Traits
 
class  TypeAssocMap
 
class  UniqueGlobalIndexer
 
class  UniqueGlobalIndexerBase
 
class  UniqueGlobalIndexerFactory
 
class  VectorTemplateIterator
 
struct  Workset
 
class  WorksetContainer
 Class that provides access to worksets on each element block and side set. More...
 
class  WorksetDescriptor
 
struct  WorksetDetails
 
class  WorksetDetailsAccessor
 
class  WorksetFactoryBase
 
struct  WorksetNeeds
 

Typedefs

typedef PHX::Device::scratch_memory_space shmem_space
 
typedef Kokkos::View< ScalarT ** > KokkosScalarFields_t
 
template<typename Traits , typename LocalOrdinalT >
using EpetraLinearObjFactory = BlockedEpetraLinearObjFactory< Traits, LocalOrdinalT >
 
typedef std::pair< std::string, Teuchos::RCP< panzer::BasisIRLayout > > StrBasisPair
 
typedef basic_ios_all_saver< char > ios_all_saver
 
typedef basic_ios_all_saver< wchar_t > wios_all_saver
 
typedef Sacado::ScalarParameterLibrary< panzer::EvaluationTraitsParamLib
 
typedef Sacado::ScalarParameterVector< panzer::EvaluationTraitsParamVec
 
typedef std::pair< std::string, Teuchos::RCP< panzer::PureBasis > > StrPureBasisPair
 
typedef Kokkos::Compat::KokkosDeviceWrapperNode< PHX::Device > TpetraNodeType
 

Enumerations

enum  BCType { BCT_Dirichlet, BCT_Neumann, BCT_Interface }
 Type of boundary condition. More...
 
enum  EVerbosityLevel {
  VERB_NONE, VERB_LOW, VERB_MEDIUM, VERB_HIGH,
  VERB_EXTREME
}
 
enum  MemUsageType { MEM_USAGE_CURRENT, MEM_USAGE_PEAK }
 

Functions

void initialize (const Teuchos::RCP< const panzer::PointRule > &pointRule, const Teuchos::RCP< const panzer::PureBasis > &basis, bool derivativesRequired)
 Initialization method to unify the constructors. More...
 
 BasisValues_Evaluator (const Teuchos::RCP< const panzer::PointRule > &pointRule, const Teuchos::RCP< const panzer::PureBasis > &basis)
 
 BasisValues_Evaluator (const Teuchos::RCP< const panzer::PointRule > &pointRule, const Teuchos::RCP< const panzer::PureBasis > &basis, bool derivativesRequired)
 
 PHX_EVALUATOR_CTOR (BasisValues_Evaluator, p)
 
 PHX_POST_REGISTRATION_SETUP (BasisValues_Evaluator, sd, fm)
 
 PHX_EVALUATE_FIELDS (BasisValues_Evaluator, workset)
 
const PHX::FieldTag & getFieldTag () const
 
Teuchos::RCP< Teuchos::ParameterListgetValidParameters () const
 
template<typename EvalT , typename Traits >
PANZER_EVALUATOR_CLASS_END Teuchos::RCP< PHX::Evaluator< Traits > > cellAverageEvaluator (const std::string &averageName, const std::string &fieldName, const Teuchos::RCP< const panzer::IntegrationRule > &ir)
 
 PHX_EVALUATOR_CTOR (CellAverage, p)
 
 PHX_POST_REGISTRATION_SETUP (CellAverage, sd, fm)
 
 PHX_EVALUATE_FIELDS (CellAverage, workset)
 
 PHX_EVALUATOR_CTOR (CellExtreme, p)
 
 PHX_POST_REGISTRATION_SETUP (CellExtreme, sd, fm)
 
 PHX_EVALUATE_FIELDS (CellExtreme, workset)
 
 PHX_EVALUATOR_CTOR (Constant, p)
 
 PHX_POST_REGISTRATION_SETUP (Constant, worksets, fm)
 
 PHX_EVALUATE_FIELDS (Constant, d)
 
 PHX_EVALUATOR_CTOR (ConstantFlux, p)
 
 PHX_POST_REGISTRATION_SETUP (ConstantFlux, worksets, fm)
 
 PHX_EVALUATE_FIELDS (ConstantFlux, d)
 
 PHX_EVALUATOR_CTOR (ConstantVector, p)
 
 PHX_POST_REGISTRATION_SETUP (ConstantVector, worksets, fm)
 
 PHX_EVALUATE_FIELDS (ConstantVector, d)
 
 PHX_EVALUATOR_CTOR (CoordinatesEvaluator, p)
 
 PHX_POST_REGISTRATION_SETUP (CoordinatesEvaluator, worksets, fm)
 
 PHX_EVALUATE_FIELDS (CoordinatesEvaluator, d)
 
 PHX_EVALUATOR_CTOR (Copy, p)
 
 PHX_POST_REGISTRATION_SETUP (Copy, worksets, fm)
 
 PHX_EVALUATE_FIELDS (Copy, workset)
 
 PHX_EVALUATOR_CTOR (CrossProduct, p)
 
 PHX_POST_REGISTRATION_SETUP (CrossProduct, sd, fm)
 
 PHX_EVALUATE_FIELDS (CrossProduct, workset)
 
 PHX_EVALUATOR_CTOR (DirichletResidual_EdgeBasis, p)
 
 PHX_POST_REGISTRATION_SETUP (DirichletResidual_EdgeBasis, worksets, fm)
 
 PHX_EVALUATE_FIELDS (DirichletResidual_EdgeBasis, workset)
 
 PHX_EVALUATOR_CTOR (DirichletResidual_FaceBasis, p)
 
 PHX_POST_REGISTRATION_SETUP (DirichletResidual_FaceBasis, worksets, fm)
 
 PHX_EVALUATE_FIELDS (DirichletResidual_FaceBasis, workset)
 
 PHX_EVALUATOR_CTOR (DirichletResidual, p)
 
 PHX_POST_REGISTRATION_SETUP (DirichletResidual, worksets, fm)
 
 PHX_EVALUATE_FIELDS (DirichletResidual, workset)
 
 PHX_EVALUATOR_CTOR (DOFGradient, p)
 
 PHX_POST_REGISTRATION_SETUP (DOFGradient, sd, fm)
 
 PHX_EVALUATE_FIELDS (DOFGradient, workset)
 
template<typename EvalT , typename TraitsT >
PANZER_EVALUATOR_CLASS_END Teuchos::RCP< DotProduct< EvalT, TraitsT > > buildEvaluator_DotProduct (const std::string &resultName, const panzer::PointRule &pr, const std::string &vecA, const std::string &vecB, double multiplier=1, const std::string &fieldMultiplier="")
 Build a dot product evaluator. Evaluates dot product at a set of points. More...
 
template<typename EvalT , typename TraitsT >
Teuchos::RCP< DotProduct< EvalT, TraitsT > > buildEvaluator_DotProduct (const std::string &resultName, const panzer::PointRule &pr, const std::string &vecA, const std::string &vecB, double multiplier, const std::string &fieldMultiplier)
 Build a dot product evaluator. Evaluates dot product at a set of points. More...
 
 PHX_EVALUATOR_CTOR (DotProduct, p)
 
 PHX_POST_REGISTRATION_SETUP (DotProduct, sd, fm)
 
 PHX_EVALUATE_FIELDS (DotProduct, workset)
 
void postprocess (std::ostream &os)
 
const PHX::FieldTag & getRequiredFieldTag ()
 
 PHX_EVALUATOR_CTOR (GlobalStatistics, p)
 
 PHX_POST_REGISTRATION_SETUP (GlobalStatistics, sd, fm)
 
 PHX_EVALUATE_FIELDS (GlobalStatistics, workset)
 
 PHX_PRE_EVALUATE_FIELDS (GlobalStatistics, data)
 
 PHX_POST_EVALUATE_FIELDS (GlobalStatistics, data)
 
 PHX_EVALUATOR_CTOR (Integrator_BasisTimesScalar, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_BasisTimesScalar, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_BasisTimesScalar, workset)
 
template<int NUM_FIELD_MULT>
void operator() (const FieldMultTag< NUM_FIELD_MULT > &, const std::size_t &cell) const
 
 PHX_EVALUATOR_CTOR (Integrator_BasisTimesVector, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_BasisTimesVector, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_BasisTimesVector, workset)
 
 PHX_EVALUATOR_CTOR (Integrator_CurlBasisDotVector, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_CurlBasisDotVector, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_CurlBasisDotVector, workset)
 
 PHX_EVALUATOR_CTOR (Integrator_DivBasisTimesScalar, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_DivBasisTimesScalar, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_DivBasisTimesScalar, workset)
 
 PHX_EVALUATOR_CTOR (Integrator_GradBasisCrossVector, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_GradBasisCrossVector, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_GradBasisCrossVector, workset)
 
 PHX_EVALUATOR_CTOR (Integrator_GradBasisDotVector, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_GradBasisDotVector, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_GradBasisDotVector, workset)
 
 PHX_EVALUATOR_CTOR (Integrator_GradBasisTimesScalar, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_GradBasisTimesScalar, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_GradBasisTimesScalar, workset)
 
 PHX_EVALUATOR_CTOR (Integrator_Scalar, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_Scalar, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_Scalar, workset)
 
 PHX_EVALUATOR_CTOR (Integrator_TransientBasisTimesScalar, p)
 
 PHX_POST_REGISTRATION_SETUP (Integrator_TransientBasisTimesScalar, sd, fm)
 
 PHX_EVALUATE_FIELDS (Integrator_TransientBasisTimesScalar, workset)
 
 PHX_EVALUATOR_CTOR (InterfaceResidual, p)
 
 PHX_POST_REGISTRATION_SETUP (InterfaceResidual, sd, fm)
 
 PHX_EVALUATE_FIELDS (InterfaceResidual, workset)
 
 PHX_EVALUATOR_CTOR (NeumannResidual, p)
 
 PHX_POST_REGISTRATION_SETUP (NeumannResidual, sd, fm)
 
 PHX_EVALUATE_FIELDS (NeumannResidual, workset)
 
 PHX_EVALUATOR_CTOR (Normals, p)
 
 PHX_POST_REGISTRATION_SETUP (Normals, sd, fm)
 
 PHX_EVALUATE_FIELDS (Normals, workset)
 
template<typename ArrayT >
void initialize (const Teuchos::RCP< const panzer::PointRule > &pointRule, const Teuchos::Ptr< const ArrayT > &userArray, const Teuchos::RCP< const panzer::PureBasis > &pureBasis)
 Initialization method to unify the constructors. More...
 
 PointValues_Evaluator (const Teuchos::RCP< const panzer::PointRule > &pointRule, const Kokkos::DynRankView< double, PHX::Device > &userArray)
 
 PointValues_Evaluator (const Teuchos::RCP< const panzer::PointRule > &pointRule, const PHX::MDField< double, panzer::IP, panzer::Dim > &userArray)
 
 PointValues_Evaluator (const Teuchos::RCP< const panzer::PointRule > &pointRule, const Teuchos::RCP< const panzer::PureBasis > &pureBasis)
 This builds a point rule from the basis function reference points in the workset. More...
 
 PHX_EVALUATOR_CTOR (PointValues_Evaluator, p)
 
 PHX_POST_REGISTRATION_SETUP (PointValues_Evaluator, sd, fm)
 
 PHX_EVALUATE_FIELDS (PointValues_Evaluator, workset)
 
 PHX_EVALUATOR_CTOR (Product, p)
 
 PHX_POST_REGISTRATION_SETUP (Product, worksets, fm)
 
 PHX_EVALUATE_FIELDS (Product, workset)
 
void operator() (const size_t &cell) const
 
 PHX_EVALUATOR_CTOR (ScalarToVector, p)
 
 PHX_POST_REGISTRATION_SETUP (ScalarToVector, worksets, fm)
 
 PHX_EVALUATE_FIELDS (ScalarToVector, workset)
 
 PHX_EVALUATOR_CTOR (SubcellSum, p)
 
 PHX_POST_REGISTRATION_SETUP (SubcellSum, sd, fm)
 
 PHX_EVALUATE_FIELDS (SubcellSum, workset)
 
template<unsigned int RANK>
void operator() (PanzerSumTag< RANK >, const int &i) const
 
template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 , typename Tag2 >
Teuchos::RCP< PHX::Evaluator< TRAITS > > buildStaticSumEvaluator (const std::string &sum_name, const std::vector< std::string > &value_names, const Teuchos::RCP< PHX::DataLayout > &data_layout)
 
 PHX_EVALUATOR_CTOR (Sum, p)
 
 PHX_POST_REGISTRATION_SETUP (Sum, worksets, fm)
 
 PHX_EVALUATE_FIELDS (Sum, workset)
 
template<typename EvalT , typename Traits >
PHX_EVALUATOR_CLASS_END Teuchos::RCP< PHX::Evaluator< Traits > > tensorToStdVectorEvaluator (const std::string &tensorName, const std::string &vectorPrefix, const std::vector< std::string > &postfix, const Teuchos::RCP< const PHX::DataLayout > &tensorLayout, const Teuchos::RCP< const PHX::DataLayout > &vectorLayout)
 
template<typename EvalT , typename Traits >
Teuchos::RCP< PHX::Evaluator< Traits > > tensorToStdVectorEvaluator (const std::string &tensorName, const std::vector< std::string > &postfix, const Teuchos::RCP< const PHX::DataLayout > &tensorLayout, const Teuchos::RCP< const PHX::DataLayout > &vectorLayout)
 
 PHX_EVALUATOR_CTOR (TensorToStdVector, p)
 
 PHX_POST_REGISTRATION_SETUP (TensorToStdVector, worksets, fm)
 
 PHX_EVALUATE_FIELDS (TensorToStdVector, workset)
 
 PHX_EVALUATOR_CTOR (TestScatter, p)
 
 PHX_POST_REGISTRATION_SETUP (TestScatter, setupData, fm)
 
 PHX_EVALUATE_FIELDS (TestScatter, workset)
 
template<typename EvalT , typename Traits >
PANZER_EVALUATOR_CLASS_END Teuchos::RCP< PHX::Evaluator< Traits > > vectorToScalarEvaluator (const std::string &vectorName, const std::string &scalarPrefix, const std::vector< std::string > &postfix, const Teuchos::RCP< const PHX::DataLayout > &vectorLayout, const Teuchos::RCP< const PHX::DataLayout > &scalarLayout)
 
template<typename EvalT , typename Traits >
Teuchos::RCP< PHX::Evaluator< Traits > > vectorToScalarEvaluator (const std::string &vectorName, const std::vector< std::string > &postfix, const Teuchos::RCP< const PHX::DataLayout > &vectorLayout, const Teuchos::RCP< const PHX::DataLayout > &scalarLayout)
 
 PHX_EVALUATOR_CTOR (VectorToScalar, p)
 
 PHX_POST_REGISTRATION_SETUP (VectorToScalar, worksets, fm)
 
 PHX_EVALUATE_FIELDS (VectorToScalar, workset)
 
 PHX_EVALUATOR_CTOR (WeakDirichletResidual, p)
 
 PHX_POST_REGISTRATION_SETUP (WeakDirichletResidual, sd, fm)
 
 PHX_EVALUATE_FIELDS (WeakDirichletResidual, workset)
 
Teuchos::RCP< const LinearObjFactory< panzer::Traits > > cloneWithNewDomain (const LinearObjFactory< panzer::Traits > &lof, const Teuchos::RCP< const UniqueGlobalIndexerBase > &dUgi)
 Clone a linear object factory, but using a different domain. More...
 
Teuchos::RCP< const LinearObjFactory< panzer::Traits > > cloneWithNewRange (const LinearObjFactory< panzer::Traits > &lof, const Teuchos::RCP< const UniqueGlobalIndexerBase > &rUgi)
 Clone a linear object factory, but using a different range. More...
 
Teuchos::RCP< const LinearObjFactory< panzer::Traits > > cloneWithNewRangeAndDomain (const LinearObjFactory< panzer::Traits > &lof, const Teuchos::RCP< const UniqueGlobalIndexerBase > &rUgi, const Teuchos::RCP< const UniqueGlobalIndexerBase > &dUgi)
 Clone a linear object factory, but using a different range and domain. More...
 
std::ostream & operator<< (std::ostream &os, const AssemblyEngineInArgs &in)
 
Teuchos::RCP< panzer::BasisIRLayoutbasisIRLayout (std::string basis_type, const int basis_order, const PointRule &pt_rule)
 Nonmember constructor. More...
 
Teuchos::RCP< panzer::BasisIRLayoutbasisIRLayout (const Teuchos::RCP< const PureBasis > &b, const PointRule &pt_rule)
 Nonmember constructor. More...
 
std::ostream & operator<< (std::ostream &os, const panzer::BC &bc)
 
template<typename EvalT >
void buildAndRegisterSubsetOfClosureModelEvaluatorsForType (PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &pb, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &factory, const std::string comma_sep_closure_model_list, const Teuchos::ParameterList &models, const Teuchos::ParameterList &user_data)
 Builds the closure models for a particular physics block for a dirichlet bc. More...
 
void buildBlockIdToPhysicsIdMap (std::map< std::string, std::string > &b_to_p, const Teuchos::ParameterList &p)
 
std::ostream & operator<< (std::ostream &os, const FieldLibraryBase &flb)
 
std::ostream & operator<< (std::ostream &os, const panzer::FieldManagerBuilder &rfd)
 
Teuchos::RCP< panzer::GlobalDatacreateGlobalData (bool build_default_os, int print_process)
 
void setupInitialConditionFieldManagers (WorksetContainer &wkstContainer, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const Teuchos::ParameterList &ic_block_closure_models, const panzer::LinearObjFactory< panzer::Traits > &lo_factory, const Teuchos::ParameterList &user_data, const bool write_graphviz_file, const std::string &graphviz_file_prefix, std::map< std::string, Teuchos::RCP< PHX::FieldManager< panzer::Traits > > > &phx_ic_field_managers)
 Builds PHX::FieldManager objects for inital conditions and registers evaluators. More...
 
void evaluateInitialCondition (WorksetContainer &wkstContainer, const std::map< std::string, Teuchos::RCP< PHX::FieldManager< panzer::Traits > > > &phx_ic_field_managers, Teuchos::RCP< panzer::LinearObjContainer > loc, const panzer::LinearObjFactory< panzer::Traits > &lo_factory, const double time_stamp)
 
void setupControlInitialCondition (const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &block_ids_to_cell_topo, const std::map< std::string, std::vector< ICFieldDescriptor > > &block_ids_to_fields, WorksetContainer &wkstContainer, const LinearObjFactory< Traits > &lof, const ClosureModelFactory_TemplateManager< Traits > &cm_factory, const Teuchos::ParameterList &ic_closure_models, const Teuchos::ParameterList &user_data, int workset_size, double t0, const Teuchos::RCP< Thyra::VectorBase< double > > &vec)
 
void buildICPhysicsBlocks (const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &block_ids_to_cell_topo, const std::map< std::string, std::vector< ICFieldDescriptor > > &block_ids_to_fields, int workset_size, std::vector< Teuchos::RCP< PhysicsBlock > > &physics_blocks)
 
void buildICPhysicsBlocks (const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &block_ids_to_cell_topo, const std::map< std::string, std::vector< ICFieldDescriptor > > &block_ids_to_fields, int workset_size, std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physics_blocks)
 
template<typename Scalar >
static void permuteToOther (const PHX::MDField< Scalar, Cell, IP, Dim > &coords, const PHX::MDField< Scalar, Cell, IP, Dim > &other_coords, std::vector< typename ArrayTraits< Scalar, PHX::MDField< Scalar > >::size_type > &permutation)
 
template<typename ScalarT , typename ArrayT >
Teuchos::RCP< Intrepid2::Basis< ScalarT, ArrayT > > createIntrepid2Basis (const std::string basis_type, int basis_order, const shards::CellTopology &cell_topology)
 Creates an Intrepid2::Basis object given the basis, order and cell topology. More...
 
template<typename ScalarT , typename ArrayT >
Teuchos::RCP< Intrepid2::Basis< ScalarT, ArrayT > > createIntrepid2Basis (const std::string basis_type, int basis_order, const Teuchos::RCP< const shards::CellTopology > &cell_topology)
 Creates an Intrepid2::Basis object given the basis, order and cell topology. More...
 
std::ostream & operator<< (std::ostream &os, panzer::MaterialModelEntry &m)
 
Teuchos::RCP< ModelEvaluator_EpetrabuildEpetraME (const Teuchos::RCP< FieldManagerBuilder > &fmb, const Teuchos::RCP< ResponseLibrary< panzer::Traits > > &rLibrary, const Teuchos::RCP< LinearObjFactory< panzer::Traits > > &lof, const std::vector< Teuchos::RCP< Teuchos::Array< std::string > > > &p_names, const std::vector< Teuchos::RCP< Teuchos::Array< double > > > &p_values, const Teuchos::RCP< panzer::GlobalData > &global_data, bool build_transient_support)
 
template<typename ScalarT , typename LO , typename GO >
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > buildModelEvaluator (const RCP< panzer::FieldManagerBuilder &fmb, const RCP< panzer::EpetraLinearObjFactory< panzer::Traits, int > > &lof)
 
template<typename Scalar , typename Array >
Teuchos::RCP< const panzer::OrientationContainerBase< Scalar, Array > > buildOrientationContainer (const Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > &globalIndexer, const std::string &fieldName)
 
template<typename Scalar , typename Array >
Teuchos::RCP< const OrientationContainerBase< Scalar, Array > > buildOrientationContainer (const Teuchos::RCP< const UniqueGlobalIndexerBase > &globalIndexer, const std::string &fieldName)
 
void registerScalarParameter (const std::string name, panzer::ParamLib &pl, double realValue)
 
template<typename EvaluationType >
Teuchos::RCP< panzer::ScalarParameterEntry< EvaluationType > > accessScalarParameter (const std::string name, panzer::ParamLib &pl)
 
template<typename EvaluationType >
Teuchos::RCP< panzer::ScalarParameterEntry< EvaluationType > > createAndRegisterScalarParameter (const std::string name, panzer::ParamLib &pl)
 
void pauseToAttach (MPI_Comm mpicomm)
 
void pauseToAttach ()
 
template<typename T >
T * ptrFromStlVector (std::vector< T > &v)
 
template<typename ArrayCellGIDs , typename ArraySideGIDs >
unsigned getLocalSideIndexFromGlobalNodeList (const ArrayCellGIDs &cellGIDs, const ArraySideGIDs &sideGIDs, const shards::CellTopology &cell)
 
template<typename ArrayCellGIDs , typename ArraySideGIDs >
unsigned getLocalSubcellIndexFromGlobalNodeList (const ArrayCellGIDs &cellGIDs, const ArraySideGIDs &subcellGIDs, const shards::CellTopology &cell, unsigned subcell_dim)
 
template<typename ArrayCellGIDs , typename ArraySubcellGIDs >
void getLocalSubcellMapFromGlobalNodeLists (const ArrayCellGIDs &cellGIDs, const std::vector< ArraySubcellGIDs > &subcellGIDs, const shards::CellTopology &cell, unsigned subcell_dim, std::vector< unsigned > &subcellMap)
 
template<typename MapT >
const MapT::mapped_type & getEntry (const MapT &in_map, const typename MapT::key_type &in_key)
 
template<typename InputArray , typename ... DimensionPack>
Kokkos::DynRankView< typename InputArray::value_type, PHX::Device > createDynRankView (const InputArray &a, const std::string &name, const DimensionPack... dims)
 Wrapper to simplify Panzer use of Sacado ViewFactory. More...
 
std::ostream & operator<< (std::ostream &os, const panzer::Workset &w)
 
void populateValueArrays (std::size_t num_cells, bool isSide, const WorksetNeeds &needs, WorksetDetails &details, const Teuchos::RCP< WorksetDetails > other_details)
 
void populateValueArrays (std::size_t num_cells, bool isSide, const panzer::PhysicsBlock &pb, WorksetDetails &details, const Teuchos::RCP< WorksetDetails > other_details)
 
template<typename ArrayT >
Teuchos::RCP< std::vector< Workset > > buildWorksets (const PhysicsBlock &pb, const std::vector< std::size_t > &local_cell_ids, const ArrayT &vertex_coordinates)
 
template<typename ArrayT >
Teuchos::RCP< std::vector< Workset > > buildWorksets (const WorksetNeeds &needs, const std::string &elementBlock, const std::vector< std::size_t > &local_cell_ids, const ArrayT &vertex_coordinates)
 
template<typename ArrayT >
Teuchos::RCP< std::map< unsigned, Workset > > buildBCWorkset (const PhysicsBlock &volume_pb, const std::vector< std::size_t > &local_cell_ids, const std::vector< std::size_t > &local_side_ids, const ArrayT &vertex_coordinates)
 
template<typename ArrayT >
Teuchos::RCP< std::map< unsigned, Workset > > buildBCWorkset (const WorksetNeeds &needs, const std::string &elementBlock, const std::vector< std::size_t > &local_cell_ids, const std::vector< std::size_t > &local_side_ids, const ArrayT &vertex_coordinates, const bool populate_value_arrays=true)
 
template<typename ArrayT >
Teuchos::RCP< std::vector< Workset > > buildEdgeWorksets (const PhysicsBlock &pb_a, const std::vector< std::size_t > &local_cell_ids_a, const std::vector< std::size_t > &local_side_ids_a, const ArrayT &vertex_coordinates_a, const PhysicsBlock &pb_b, const std::vector< std::size_t > &local_cell_ids_b, const std::vector< std::size_t > &local_side_ids_b, const ArrayT &vertex_coordinates_b)
 
template<typename ArrayT >
Teuchos::RCP< std::vector< Workset > > buildEdgeWorksets (const WorksetNeeds &needs_a, const std::string &eblock_a, const std::vector< std::size_t > &local_cell_ids_a, const std::vector< std::size_t > &local_side_ids_a, const ArrayT &vertex_coordinates_a, const WorksetNeeds &needs_b, const std::string &eblock_b, const std::vector< std::size_t > &local_cell_ids_b, const std::vector< std::size_t > &local_side_ids_b, const ArrayT &vertex_coordinates_b)
 
template<typename ArrayT >
std::vector< Workset >::iterator buildEdgeWorksets (const std::vector< std::size_t > &cell_indices, const PhysicsBlock &pb_a, const std::vector< std::size_t > &local_cell_ids_a, const std::vector< std::size_t > &local_side_ids_a, const ArrayT &vertex_coordinates_a, const PhysicsBlock &pb_b, const std::vector< std::size_t > &local_cell_ids_b, const std::vector< std::size_t > &local_side_ids_b, const ArrayT &vertex_coordinates_b, std::vector< Workset >::iterator beg)
 
template<typename ArrayT >
std::vector< Workset >::iterator buildEdgeWorksets (const std::vector< std::size_t > &cell_indices, const WorksetNeeds &needs_a, const std::string &eblock_a, const std::vector< std::size_t > &local_cell_ids_a, const std::vector< std::size_t > &local_side_ids_a, const ArrayT &vertex_coordinates_a, const WorksetNeeds &needs_b, const std::string &eblock_b, const std::vector< std::size_t > &local_cell_ids_b, const std::vector< std::size_t > &local_side_ids_b, const ArrayT &vertex_coordinates_b, std::vector< Workset >::iterator beg)
 
template<typename ArrayT >
Teuchos::RCP< std::map< unsigned, Workset > > buildBCWorkset (const panzer::PhysicsBlock &pb_a, const std::vector< std::size_t > &local_cell_ids_a, const std::vector< std::size_t > &local_side_ids_a, const ArrayT &vertex_coordinates_a, const panzer::PhysicsBlock &pb_b, const std::vector< std::size_t > &local_cell_ids_b, const std::vector< std::size_t > &local_side_ids_b, const ArrayT &vertex_coordinates_b)
 
std::vector< std::string >::size_type getPureBasisIndex (std::string basis_name, panzer::Workset &workset, WorksetDetailsAccessor &wda)
 Returns the index in the workset bases for a particular PureBasis name. More...
 
std::vector< std::string >::size_type getBasisIndex (std::string basis_name, panzer::Workset &workset, WorksetDetailsAccessor &wda)
 Returns the index in the workset bases for a particular BasisIRLayout name. More...
 
std::vector< std::string >::size_type getIntegrationRuleIndex (int ir_degree, panzer::Workset &workset, WorksetDetailsAccessor &wda)
 
void printWorkset (std::ostream &os, const panzer::Workset &workset, WorksetDetailsAccessor &wda)
 
std::vector< std::string >::size_type getPureBasisIndex (std::string basis_name, panzer::Workset &workset)
 
std::vector< std::string >::size_type getBasisIndex (std::string basis_name, panzer::Workset &workset)
 
std::vector< int >::size_type getIntegrationRuleIndex (int ir_degree, panzer::Workset &workset)
 
void printWorkset (std::ostream &os, const panzer::Workset &workset)
 
void getVolumeWorksetsFromContainer (WorksetContainer &wc, const std::vector< std::string > &elementBlockNames, std::map< std::string, Teuchos::RCP< std::vector< Workset > > > &volumeWksts)
 
void getSideWorksetsFromContainer (WorksetContainer &wc, const std::vector< BC > &bcs, std::map< BC, Teuchos::RCP< std::map< unsigned, Workset > >, LessBC > &sideWksts)
 
bool operator== (const WorksetDescriptor &a, const WorksetDescriptor &b)
 Equality operation for use with hash tables and maps. More...
 
std::size_t hash_value (const WorksetDescriptor &wd)
 Hash function that satisifies the stl hash interface. More...
 
std::ostream & operator<< (std::ostream &os, const WorksetDescriptor &wd)
 I/O utility. More...
 
WorksetDescriptor blockDescriptor (const std::string &eBlock)
 
WorksetDescriptor sidesetDescriptor (const std::string &eBlock, const std::string &sideset)
 
WorksetDescriptor sidesetVolumeDescriptor (const std::string &eBlock, const std::string &sideset)
 
void zeroSensitivities (panzer::Traits::RealType &s)
 Zero out AD types so that we can drop sensitivity contributions. More...
 
void zeroSensitivities (panzer::Traits::FadType &s)
 Specialization for Fad type Jacobian. More...
 
template<typename T >
Sacado::mpl::enable_if< Sacado::IsView< T > >::type zeroSensitivities (T x)
 Specialization for Fad type Hessian. More...
 
template<>
Teuchos::RCP< panzer::ResponseEvaluatorFactoryBaseResponseMESupportBuilderBase::build< panzer::Traits::Residual > () const
 
template<>
Teuchos::RCP< panzer::ResponseEvaluatorFactoryBaseResponseMESupportBuilderBase::build< panzer::Traits::Jacobian > () const
 
template<>
Teuchos::RCP< panzer::ResponseEvaluatorFactoryBaseResponseMESupportBuilderBase::build< panzer::Traits::Tangent > () const
 
template<class T >
void hash_combine (std::size_t &seed, const T &v)
 
void printMemoryUsage (std::ostream &os, const Teuchos::Comm< int > &comm)
 Print memory usage to stream. More...
 
void printMemoryUsage (std::ostream &s, const Teuchos::Comm< int > &comm, const MemUsage &mem)
 
void pretty (std::ostream &s, size_t num)
 
MemUsage getMemoryUsage (const Teuchos::Comm< int > &comm)
 Get memory usage in B. More...
 
MemUsage getPeakRSS (const Teuchos::Comm< int > &comm)
 
MemUsage getCurrentRSS (const Teuchos::Comm< int > &comm)
 
MemUsage reduceMemUsage (size_t &mem, const Teuchos::Comm< int > &comm, const MemUsageType &type)
 Reduce the memory usage over all the processors. More...
 
void trim (std::string &str)
 Removes whitespace at beginning and end of string. More...
 
void StringTokenizer (std::vector< std::string > &tokens, const std::string &str, const std::string delimiter=",", bool trim=false)
 Tokenize a string, put tokens in a vector. More...
 
void TokensToDoubles (std::vector< double > &values, const std::vector< std::string > &tokens)
 Turn a vector of tokens into a vector of doubles. More...
 
void TokensToInts (std::vector< int > &values, const std::vector< std::string > &tokens)
 Turn a vector of tokens into a vector of ints. More...
 
template<typename ScalarT >
ScalarT getScalarParameter (const std::string &field, const Teuchos::ParameterList &plist)
 
std::string version ()
 
std::ostream & operator<< (std::ostream &os, const FieldPattern &fp)
 Stream IO. More...
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > nc2c_vector (const std::vector< Teuchos::RCP< UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &ugis)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
int getFieldBlock (const std::string &fieldName, const std::vector< Teuchos::RCP< UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &ugis)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
int getFieldBlock (const std::string &fieldName, const std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &ugis)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
void computeBlockOffsets (const std::string &blockId, const std::vector< Teuchos::RCP< UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &ugis, std::vector< int > &blockOffsets)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
void computeBlockOffsets (const std::string &blockId, const std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &ugis, std::vector< int > &blockOffsets)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
std::string printUGILoadBalancingInformation (const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
void printMeshTopology (std::ostream &os, const panzer::UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP< Tpetra::Vector< int, int, GlobalOrdinalT, Node > > buildGhostedFieldReducedVector (const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, Node > > buildGhostedFieldVector (const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi, const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, Node > > &reducedVec=Teuchos::null)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, panzer::TpetraNodeType > > buildGhostedFieldVector (const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi, const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, panzer::TpetraNodeType > > &reducedVec=Teuchos::null)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
void buildGhostedFieldVector (const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi, std::vector< int > &fieldNumbers, const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, Node > > &reducedVec=Teuchos::null)
 
template<typename LocalOrdinalT , typename GlobalOrdinalT >
void buildGhostedFieldVector (const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi, std::vector< int > &fieldNumbers, const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, panzer::TpetraNodeType > > &reducedVec=Teuchos::null)
 
template<typename ScalarT , typename ArrayT , typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
void updateGhostedDataReducedVector (const std::string &fieldName, const std::string blockId, const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &ugi, const ArrayT &data, Tpetra::MultiVector< ScalarT, int, GlobalOrdinalT, Node > &dataVector)
 
template<typename GlobalOrdinalT , typename Node >
Teuchos::RCP< const Tpetra::Map< int, GlobalOrdinalT, Node > > getFieldMap (int fieldNum, const Tpetra::Vector< int, int, GlobalOrdinalT, Node > &fieldVector)
 

Variables

Teuchos::RCP< const panzer::PureBasisbasis
 Interpolates basis DOF values to IP DOF values. More...
 
Teuchos::RCP< BasisValues2< ScalarT > > basisValues
 
PointValues2< ScalarT, PHX::MDField > pointValues
 Interpolates basis DOF values to IP DOF values. More...
 
PHX::MDField< ScalarT, panzer::Cell, panzer::BASIS > orientation
 
bool derivativesRequired_
 
PHX::MDField< ScalarT, Cell > average
 
PHX::MDField< const ScalarT, Cell, IP > scalar
 
std::vector< PHX::MDField< const ScalarT, Cell, IP > > field_multipliers
 
double multiplier
 
std::size_t num_qp
 
std::size_t quad_index
 
int quad_order
 
PHX::MDField< ScalarT > extreme
 
bool use_max
 
ScalarT value
 
PHX::MDField< ScalarT > constant
 
std::vector< ScalarT > values
 
PHX::MDField< ScalarT > flux
 
ScalarT vals [3]
 
PHX::MDField< ScalarT > vector
 
int dimension
 
PHX::MDField< ScalarT, Cell, BASIS > coordinate
 
PHX::MDField< const ScalarT > input
 
PHX::MDField< ScalarT > output
 
PHX::MDField< ScalarT > vec_a_cross_vec_b
 Evaluates cross product at a set of points. More...
 
PHX::MDField< ScalarT > vec_a
 
PHX::MDField< ScalarT > vec_b
 
bool useScalarField
 
int num_pts
 
int num_dim
 
PHX::MDField< ScalarT > residual
 Evaluates a Dirichlet BC residual corresponding to a field value. More...
 
PHX::MDField< const ScalarT > dof
 
std::size_t cell_data_size
 
PHX::MDField< const ScalarT, Cell, BASIS > dof_orientation
 
Teuchos::RCP< const panzer::PointRulepointRule
 
Kokkos::DynRankView< ScalarT, PHX::Device > edgeTan
 
Kokkos::DynRankView< ScalarT, PHX::Device > refEdgeTan
 
Kokkos::DynRankView< ScalarT, PHX::Device > faceNormal
 
Kokkos::DynRankView< ScalarT, PHX::Device > refFaceNormal
 
PHX::MDField< ScalarT, Cell, Point > dof_value
 Interpolates basis DOF values to IP DOF Gradient values. More...
 
PHX::MDField< ScalarT > dof_gradient
 
std::string basis_name
 
std::size_t basis_index
 
PHX::MDField< ScalarT > vec_a_dot_vec_b
 Evaluates dot product at a set of points. More...
 
PHX::MDField< const ScalarT > multiplier_field
 
bool multiplier_field_on
 
double multiplier_value
 
PHX::MDField< ScalarT, Cell > volumes
 
PHX::MDField< ScalarT, Cell > tmp
 
PHX::MDField< ScalarT, Cell, IP > ones
 
std::vector< PHX::MDField< ScalarT, Cell, IP > > field_values
 
ScalarT total_volume
 
std::vector< ScalarT > averages
 
std::vector< ScalarT > maxs
 
std::vector< ScalarT > mins
 
ScalarT global_total_volume
 
std::vector< ScalarT > global_averages
 
std::vector< ScalarT > global_maxs
 
std::vector< ScalarT > global_mins
 
int ir_order
 
std::size_t ir_index
 
Teuchos::RCP< const Teuchos::Comm< int > > comm
 
Teuchos::RCP< panzer::GlobalDataglobal_data
 
std::size_t num_nodes
 
PHX::MDField< ScalarT, Cell, IP, Dim > vectorField
 
Kokkos::View< Kokkos::View< ScalarT **> *> kokkos_field_multipliers
 
std::size_t basis_card
 
PHX::MDField< double, Cell, BASIS, IP, Dim > weighted_basis_vector
 
PHX::MDField< const ScalarT, Cell, IP > flux_scalar
 
PHX::MDField< const ScalarT, Cell, IP, Dim > flux_vector
 
PHX::MDField< ScalarT, Cell, IP > scratch_scalar
 
PHX::MDField< ScalarT, Cell, IP, Dim > scratch_vector
 
std::vector< PHX::MDField< ScalarT, Cell, BASIS > > _residuals
 
PHX::MDField< const ScalarT, Cell, IP, Dim > _vector
 
std::vector< PHX::MDField< const ScalarT, Cell, IP > > _field_multipliers
 
std::size_t _num_basis_nodes
 
std::size_t _num_quadrature_points
 
std::size_t _num_dims
 
std::size_t _num_grad_dims
 
ScalarT _multiplier
 
std::string _basis_name
 
std::size_t _basis_index
 
Kokkos::DynRankView< ScalarT, PHX::Device > _tmp
 
PHX::MDField< const ScalarT, Cell, IP > _scalar
 
PHX::MDField< ScalarT > integral
 
PHX::MDField< ScalarT > normal_dot_flux
 
PHX::MDField< ScalarT > normal
 
std::size_t num_ip
 
int side_id
 
PHX::MDField< ScalarT, Cell, Point, Dim > normals
 
bool normalize
 
Kokkos::DynRankView< double, PHX::Device > refPointArray
 
bool useBasisValuesRefArray
 
double scaling
 
PHX::MDField< ScalarT > product
 
std::vector< PHX::MDField< ScalarT, Cell, Point > > scalar_fields
 Interpolates basis DOF values to IP DOF values. More...
 
PHX::MDField< ScalarT, Cell, Point, Dim > vector_field
 
Kokkos::View< KokkosScalarFields_t * > internal_scalar_fields
 
PHX::MDField< ScalarT, Cell > outField
 
PHX::MDField< ScalarT, Cell, BASIS > inField
 
Teuchos::RCP< const panzer::FieldPatternfieldPattern_
 
bool evaluateOnClosure_
 
static const int MAX_VALUES =20
 
PHX::MDField< ScalarT > sum
 
Kokkos::View< const double *, PHX::Device > scalars
 
PHX::MDField< ScalarT, Cell, Point, Dim, Dim > tensor_field
 Transform at Tensor to a std::vector of PHX-vectors. More...
 
std::vector< PHX::MDField< ScalarT, Cell, Point, Dim > > vector_fields
 Vector (to be filled) More...
 
PHX::MDField< ScalarT, Cell, NODE > scatter_value
 
int localOffset
 
static int offset = 0
 
PHX::MDField< ScalarT > normal_dot_flux_plus_pen
 
PHX::MDField< ScalarT > sigma
 

Typedef Documentation

◆ shmem_space

typedef PHX::Device::scratch_memory_space panzer::shmem_space

Definition at line 80 of file Panzer_Integrator_BasisTimesVector_decl.hpp.

◆ KokkosScalarFields_t

typedef Kokkos::View<ScalarT**> panzer::KokkosScalarFields_t
protected

Definition at line 60 of file Panzer_ScalarToVector_decl.hpp.

◆ EpetraLinearObjFactory

template<typename Traits , typename LocalOrdinalT >
using panzer::EpetraLinearObjFactory = typedef BlockedEpetraLinearObjFactory<Traits,LocalOrdinalT>

Definition at line 335 of file Panzer_EpetraLinearObjFactory_decl.hpp.

◆ StrBasisPair

typedef std::pair<std::string,Teuchos::RCP<panzer::BasisIRLayout> > panzer::StrBasisPair

Definition at line 141 of file Panzer_BasisIRLayout.hpp.

◆ ios_all_saver

Definition at line 26 of file Panzer_IosAllSaver.hpp.

◆ wios_all_saver

Definition at line 29 of file Panzer_IosAllSaver.hpp.

◆ ParamLib

typedef Sacado::ScalarParameterLibrary<panzer::EvaluationTraits> panzer::ParamLib

Definition at line 53 of file Panzer_ParameterLibrary.hpp.

◆ ParamVec

typedef Sacado::ScalarParameterVector<panzer::EvaluationTraits> panzer::ParamVec

Definition at line 54 of file Panzer_ParameterLibrary.hpp.

◆ StrPureBasisPair

typedef std::pair<std::string,Teuchos::RCP<panzer::PureBasis> > panzer::StrPureBasisPair

Definition at line 175 of file Panzer_PureBasis.hpp.

◆ TpetraNodeType

typedef Kokkos::Compat::KokkosDeviceWrapperNode<PHX::Device> panzer::TpetraNodeType

Definition at line 13 of file Panzer_NodeType.hpp.

Enumeration Type Documentation

◆ BCType

Type of boundary condition.

Enumerator
BCT_Dirichlet 
BCT_Neumann 
BCT_Interface 

Definition at line 73 of file Panzer_BC.hpp.

◆ EVerbosityLevel

Enumerator
VERB_NONE 
VERB_LOW 
VERB_MEDIUM 
VERB_HIGH 
VERB_EXTREME 

Definition at line 51 of file Panzer_OutputStream.hpp.

◆ MemUsageType

Enumerator
MEM_USAGE_CURRENT 
MEM_USAGE_PEAK 

Definition at line 89 of file Panzer_MemUtils.hpp.

Function Documentation

◆ initialize() [1/2]

void panzer::initialize ( const Teuchos::RCP< const panzer::PointRule > &  pointRule,
const Teuchos::RCP< const panzer::PureBasis > &  basis,
bool  derivativesRequired 
)

Initialization method to unify the constructors.

◆ BasisValues_Evaluator() [1/2]

panzer::BasisValues_Evaluator::BasisValues_Evaluator ( const Teuchos::RCP< const panzer::PointRule > &  pointRule,
const Teuchos::RCP< const panzer::PureBasis > &  basis 
)

Definition at line 71 of file Panzer_BasisValues_Evaluator_impl.hpp.

◆ BasisValues_Evaluator() [2/2]

panzer::BasisValues_Evaluator::BasisValues_Evaluator ( const Teuchos::RCP< const panzer::PointRule > &  pointRule,
const Teuchos::RCP< const panzer::PureBasis > &  basis,
bool  derivativesRequired 
)

Definition at line 81 of file Panzer_BasisValues_Evaluator_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [1/36]

panzer::PHX_EVALUATOR_CTOR ( BasisValues_Evaluator  ,
 
)

Definition at line 54 of file Panzer_BasisValues_Evaluator_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [1/36]

panzer::PHX_POST_REGISTRATION_SETUP ( BasisValues_Evaluator  ,
sd  ,
fm   
)

Definition at line 166 of file Panzer_BasisValues_Evaluator_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [1/36]

panzer::PHX_EVALUATE_FIELDS ( BasisValues_Evaluator  ,
workset   
)

Definition at line 221 of file Panzer_BasisValues_Evaluator_impl.hpp.

◆ getFieldTag()

const PHX::FieldTag & panzer::getFieldTag ( ) const

Definition at line 84 of file Panzer_CellAverage.hpp.

◆ getValidParameters()

Teuchos::RCP< Teuchos::ParameterList > panzer::getValidParameters ( ) const
private

◆ cellAverageEvaluator()

template<typename EvalT , typename Traits >
PANZER_EVALUATOR_CLASS_END Teuchos::RCP<PHX::Evaluator<Traits> > panzer::cellAverageEvaluator ( const std::string &  averageName,
const std::string &  fieldName,
const Teuchos::RCP< const panzer::IntegrationRule > &  ir 
)
private

This is a function constructor for an evaluator that builds scalars from a single vector field. The user specifies the layouts (assumed compatible) and then uses a postfix for each of the scalar fields.

Parameters
[in]vectorNameName of the vector
[in]postfixVector specifying the postfix to use when naming each scalar field
[in]vectorLayoutData layout for the vector field
[in]scalarLayoutData layout for the scalars

Definition at line 104 of file Panzer_CellAverage.hpp.

◆ PHX_EVALUATOR_CTOR() [2/36]

panzer::PHX_EVALUATOR_CTOR ( CellAverage  ,
 
)

Definition at line 56 of file Panzer_CellAverage_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [2/36]

panzer::PHX_POST_REGISTRATION_SETUP ( CellAverage  ,
sd  ,
fm   
)

Definition at line 96 of file Panzer_CellAverage_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [2/36]

panzer::PHX_EVALUATE_FIELDS ( CellAverage  ,
workset   
)

Definition at line 111 of file Panzer_CellAverage_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [3/36]

panzer::PHX_EVALUATOR_CTOR ( CellExtreme  ,
 
)

Definition at line 56 of file Panzer_CellExtreme_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [3/36]

panzer::PHX_POST_REGISTRATION_SETUP ( CellExtreme  ,
sd  ,
fm   
)

Definition at line 101 of file Panzer_CellExtreme_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [3/36]

panzer::PHX_EVALUATE_FIELDS ( CellExtreme  ,
workset   
)

Definition at line 116 of file Panzer_CellExtreme_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [4/36]

panzer::PHX_EVALUATOR_CTOR ( Constant  ,
 
)

Definition at line 49 of file Panzer_Constant_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [4/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Constant  ,
worksets  ,
fm   
)

Definition at line 61 of file Panzer_Constant_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [4/36]

panzer::PHX_EVALUATE_FIELDS ( Constant  ,
 
)

Definition at line 70 of file Panzer_Constant_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [5/36]

panzer::PHX_EVALUATOR_CTOR ( ConstantFlux  ,
 
)

Definition at line 49 of file Panzer_ConstantFlux_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [5/36]

panzer::PHX_POST_REGISTRATION_SETUP ( ConstantFlux  ,
worksets  ,
fm   
)

Definition at line 65 of file Panzer_ConstantFlux_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [5/36]

panzer::PHX_EVALUATE_FIELDS ( ConstantFlux  ,
 
)

Definition at line 79 of file Panzer_ConstantFlux_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [6/36]

panzer::PHX_EVALUATOR_CTOR ( ConstantVector  ,
 
)

Definition at line 49 of file Panzer_ConstantVector_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [6/36]

panzer::PHX_POST_REGISTRATION_SETUP ( ConstantVector  ,
worksets  ,
fm   
)

Definition at line 68 of file Panzer_ConstantVector_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [6/36]

panzer::PHX_EVALUATE_FIELDS ( ConstantVector  ,
 
)

Definition at line 75 of file Panzer_ConstantVector_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [7/36]

panzer::PHX_EVALUATOR_CTOR ( CoordinatesEvaluator  ,
 
)

Definition at line 49 of file Panzer_CoordinatesEvaluator_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [7/36]

panzer::PHX_POST_REGISTRATION_SETUP ( CoordinatesEvaluator  ,
worksets  ,
fm   
)

Definition at line 61 of file Panzer_CoordinatesEvaluator_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [7/36]

panzer::PHX_EVALUATE_FIELDS ( CoordinatesEvaluator  ,
 
)

Definition at line 68 of file Panzer_CoordinatesEvaluator_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [8/36]

panzer::PHX_EVALUATOR_CTOR ( Copy  ,
 
)

Definition at line 53 of file Panzer_Copy_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [8/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Copy  ,
worksets  ,
fm   
)

Definition at line 70 of file Panzer_Copy_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [8/36]

panzer::PHX_EVALUATE_FIELDS ( Copy  ,
workset   
)

Definition at line 79 of file Panzer_Copy_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [9/36]

panzer::PHX_EVALUATOR_CTOR ( CrossProduct  ,
 
)

Definition at line 56 of file Panzer_CrossProduct_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [9/36]

panzer::PHX_POST_REGISTRATION_SETUP ( CrossProduct  ,
sd  ,
fm   
)

Definition at line 85 of file Panzer_CrossProduct_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [9/36]

panzer::PHX_EVALUATE_FIELDS ( CrossProduct  ,
workset   
)

Definition at line 99 of file Panzer_CrossProduct_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [10/36]

panzer::PHX_EVALUATOR_CTOR ( DirichletResidual_EdgeBasis  ,
 
)

Definition at line 58 of file Panzer_Dirichlet_Residual_EdgeBasis_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [10/36]

panzer::PHX_POST_REGISTRATION_SETUP ( DirichletResidual_EdgeBasis  ,
worksets  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [10/36]

panzer::PHX_EVALUATE_FIELDS ( DirichletResidual_EdgeBasis  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [11/36]

panzer::PHX_EVALUATOR_CTOR ( DirichletResidual_FaceBasis  ,
 
)

Definition at line 58 of file Panzer_Dirichlet_Residual_FaceBasis_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [11/36]

panzer::PHX_POST_REGISTRATION_SETUP ( DirichletResidual_FaceBasis  ,
worksets  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [11/36]

panzer::PHX_EVALUATE_FIELDS ( DirichletResidual_FaceBasis  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [12/36]

panzer::PHX_EVALUATOR_CTOR ( DirichletResidual  ,
 
)

Definition at line 53 of file Panzer_Dirichlet_Residual_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [12/36]

panzer::PHX_POST_REGISTRATION_SETUP ( DirichletResidual  ,
worksets  ,
fm   
)

Definition at line 75 of file Panzer_Dirichlet_Residual_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [12/36]

panzer::PHX_EVALUATE_FIELDS ( DirichletResidual  ,
workset   
)

Definition at line 85 of file Panzer_Dirichlet_Residual_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [13/36]

panzer::PHX_EVALUATOR_CTOR ( DOFGradient  ,
 
)

Definition at line 88 of file Panzer_DOFGradient_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [13/36]

panzer::PHX_POST_REGISTRATION_SETUP ( DOFGradient  ,
sd  ,
fm   
)

Definition at line 110 of file Panzer_DOFGradient_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [13/36]

panzer::PHX_EVALUATE_FIELDS ( DOFGradient  ,
workset   
)

Definition at line 119 of file Panzer_DOFGradient_impl.hpp.

◆ buildEvaluator_DotProduct() [1/2]

template<typename EvalT , typename TraitsT >
PANZER_EVALUATOR_CLASS_END Teuchos::RCP<DotProduct<EvalT,TraitsT> > panzer::buildEvaluator_DotProduct ( const std::string &  resultName,
const panzer::PointRule pr,
const std::string &  vecA,
const std::string &  vecB,
double  multiplier = 1,
const std::string &  fieldMultiplier = "" 
)

Build a dot product evaluator. Evaluates dot product at a set of points.

mv * fm * v_a v_b

Parameters
[in]resultNameDestination scalar field sized by pr.dl_scalar containing the dot product
[in]prPoint rule class that defines the size of the fields
[in]vecAThe a vector
[in]vecBThe b vector
[in]multiplierConstant multiplier (mv above)
[in]fieldMultiplierField to multiply by (fm above)

Definition at line 57 of file Panzer_DotProduct_impl.hpp.

◆ buildEvaluator_DotProduct() [2/2]

template<typename EvalT , typename TraitsT >
Teuchos::RCP<DotProduct<EvalT,TraitsT> > panzer::buildEvaluator_DotProduct ( const std::string &  resultName,
const panzer::PointRule pr,
const std::string &  vecA,
const std::string &  vecB,
double  multiplier = 1,
const std::string &  fieldMultiplier = "" 
)

Build a dot product evaluator. Evaluates dot product at a set of points.

mv * fm * v_a v_b

Parameters
[in]resultNameDestination scalar field sized by pr.dl_scalar containing the dot product
[in]prPoint rule class that defines the size of the fields
[in]vecAThe a vector
[in]vecBThe b vector
[in]multiplierConstant multiplier (mv above)
[in]fieldMultiplierField to multiply by (fm above)

Definition at line 57 of file Panzer_DotProduct_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [14/36]

panzer::PHX_EVALUATOR_CTOR ( DotProduct  ,
 
)

Definition at line 76 of file Panzer_DotProduct_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [14/36]

panzer::PHX_POST_REGISTRATION_SETUP ( DotProduct  ,
sd  ,
fm   
)

Definition at line 113 of file Panzer_DotProduct_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [14/36]

panzer::PHX_EVALUATE_FIELDS ( DotProduct  ,
workset   
)

Definition at line 130 of file Panzer_DotProduct_impl.hpp.

◆ postprocess()

void panzer::GlobalStatistics::postprocess ( std::ostream &  os)

Definition at line 180 of file Panzer_GlobalStatistics_impl.hpp.

◆ getRequiredFieldTag()

const PHX::FieldTag& panzer::getRequiredFieldTag ( )

◆ PHX_EVALUATOR_CTOR() [15/36]

panzer::PHX_EVALUATOR_CTOR ( GlobalStatistics  ,
 
)

Definition at line 60 of file Panzer_GlobalStatistics_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [15/36]

panzer::PHX_POST_REGISTRATION_SETUP ( GlobalStatistics  ,
sd  ,
fm   
)

Definition at line 107 of file Panzer_GlobalStatistics_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [15/36]

panzer::PHX_EVALUATE_FIELDS ( GlobalStatistics  ,
workset   
)

Definition at line 125 of file Panzer_GlobalStatistics_impl.hpp.

◆ PHX_PRE_EVALUATE_FIELDS()

panzer::PHX_PRE_EVALUATE_FIELDS ( GlobalStatistics  ,
data   
)

Definition at line 158 of file Panzer_GlobalStatistics_impl.hpp.

◆ PHX_POST_EVALUATE_FIELDS()

panzer::PHX_POST_EVALUATE_FIELDS ( GlobalStatistics  ,
data   
)

Definition at line 173 of file Panzer_GlobalStatistics_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [16/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_BasisTimesScalar  ,
 
)

Definition at line 58 of file Panzer_Integrator_BasisTimesScalar_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [16/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_BasisTimesScalar  ,
sd  ,
fm   
)

Definition at line 108 of file Panzer_Integrator_BasisTimesScalar_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [16/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_BasisTimesScalar  ,
workset   
)

Definition at line 126 of file Panzer_Integrator_BasisTimesScalar_impl.hpp.

◆ operator()() [1/3]

template<int NUM_FIELD_MULT>
void panzer::operator() ( const FieldMultTag< NUM_FIELD_MULT > &  ,
const std::size_t &  cell 
) const

◆ PHX_EVALUATOR_CTOR() [17/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_BasisTimesVector  ,
 
)

Definition at line 56 of file Panzer_Integrator_BasisTimesVector_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [17/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_BasisTimesVector  ,
sd  ,
fm   
)

Definition at line 106 of file Panzer_Integrator_BasisTimesVector_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [17/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_BasisTimesVector  ,
workset   
)

Definition at line 171 of file Panzer_Integrator_BasisTimesVector_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [18/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_CurlBasisDotVector  ,
 
)

◆ PHX_POST_REGISTRATION_SETUP() [18/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_CurlBasisDotVector  ,
sd  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [18/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_CurlBasisDotVector  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [19/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_DivBasisTimesScalar  ,
 
)

◆ PHX_POST_REGISTRATION_SETUP() [19/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_DivBasisTimesScalar  ,
sd  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [19/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_DivBasisTimesScalar  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [20/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_GradBasisCrossVector  ,
 
)

◆ PHX_POST_REGISTRATION_SETUP() [20/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_GradBasisCrossVector  ,
sd  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [20/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_GradBasisCrossVector  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [21/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_GradBasisDotVector  ,
 
)

◆ PHX_POST_REGISTRATION_SETUP() [21/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_GradBasisDotVector  ,
sd  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [21/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_GradBasisDotVector  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [22/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_GradBasisTimesScalar  ,
 
)

◆ PHX_POST_REGISTRATION_SETUP() [22/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_GradBasisTimesScalar  ,
sd  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [22/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_GradBasisTimesScalar  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [23/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_Scalar  ,
 
)

Definition at line 55 of file Panzer_Integrator_Scalar_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [23/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_Scalar  ,
sd  ,
fm   
)

Definition at line 95 of file Panzer_Integrator_Scalar_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [23/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_Scalar  ,
workset   
)

Definition at line 112 of file Panzer_Integrator_Scalar_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [24/36]

panzer::PHX_EVALUATOR_CTOR ( Integrator_TransientBasisTimesScalar  ,
 
)

◆ PHX_POST_REGISTRATION_SETUP() [24/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Integrator_TransientBasisTimesScalar  ,
sd  ,
fm   
)

◆ PHX_EVALUATE_FIELDS() [24/36]

panzer::PHX_EVALUATE_FIELDS ( Integrator_TransientBasisTimesScalar  ,
workset   
)

◆ PHX_EVALUATOR_CTOR() [25/36]

panzer::PHX_EVALUATOR_CTOR ( InterfaceResidual  ,
 
)

Definition at line 57 of file Panzer_Interface_Residual_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [25/36]

panzer::PHX_POST_REGISTRATION_SETUP ( InterfaceResidual  ,
sd  ,
fm   
)

Definition at line 88 of file Panzer_Interface_Residual_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [25/36]

panzer::PHX_EVALUATE_FIELDS ( InterfaceResidual  ,
workset   
)

Definition at line 105 of file Panzer_Interface_Residual_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [26/36]

panzer::PHX_EVALUATOR_CTOR ( NeumannResidual  ,
 
)

Definition at line 57 of file Panzer_Neumann_Residual_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [26/36]

panzer::PHX_POST_REGISTRATION_SETUP ( NeumannResidual  ,
sd  ,
fm   
)

Definition at line 88 of file Panzer_Neumann_Residual_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [26/36]

panzer::PHX_EVALUATE_FIELDS ( NeumannResidual  ,
workset   
)

Definition at line 105 of file Panzer_Neumann_Residual_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [27/36]

panzer::PHX_EVALUATOR_CTOR ( Normals  ,
 
)

Definition at line 55 of file Panzer_Normals_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [27/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Normals  ,
sd  ,
fm   
)

Definition at line 79 of file Panzer_Normals_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [27/36]

panzer::PHX_EVALUATE_FIELDS ( Normals  ,
workset   
)

Definition at line 90 of file Panzer_Normals_impl.hpp.

◆ initialize() [2/2]

template<typename ArrayT >
void panzer::initialize ( const Teuchos::RCP< const panzer::PointRule > &  pointRule,
const Teuchos::Ptr< const ArrayT > &  userArray,
const Teuchos::RCP< const panzer::PureBasis > &  pureBasis 
)

Initialization method to unify the constructors.

◆ PointValues_Evaluator() [1/3]

panzer::PointValues_Evaluator::PointValues_Evaluator ( const Teuchos::RCP< const panzer::PointRule > &  pointRule,
const Kokkos::DynRankView< double, PHX::Device > &  userArray 
)

Definition at line 68 of file Panzer_PointValues_Evaluator_impl.hpp.

◆ PointValues_Evaluator() [2/3]

panzer::PointValues_Evaluator::PointValues_Evaluator ( const Teuchos::RCP< const panzer::PointRule > &  pointRule,
const PHX::MDField< double, panzer::IP, panzer::Dim > &  userArray 
)

Definition at line 78 of file Panzer_PointValues_Evaluator_impl.hpp.

◆ PointValues_Evaluator() [3/3]

panzer::PointValues_Evaluator::PointValues_Evaluator ( const Teuchos::RCP< const panzer::PointRule > &  pointRule,
const Teuchos::RCP< const panzer::PureBasis > &  pureBasis 
)

This builds a point rule from the basis function reference points in the workset.

Definition at line 88 of file Panzer_PointValues_Evaluator_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [28/36]

panzer::PHX_EVALUATOR_CTOR ( PointValues_Evaluator  ,
 
)

Definition at line 54 of file Panzer_PointValues_Evaluator_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [28/36]

panzer::PHX_POST_REGISTRATION_SETUP ( PointValues_Evaluator  ,
sd  ,
fm   
)

Definition at line 144 of file Panzer_PointValues_Evaluator_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [28/36]

panzer::PHX_EVALUATE_FIELDS ( PointValues_Evaluator  ,
workset   
)

Definition at line 164 of file Panzer_PointValues_Evaluator_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [29/36]

panzer::PHX_EVALUATOR_CTOR ( Product  ,
 
)

Definition at line 53 of file Panzer_Product_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [29/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Product  ,
worksets  ,
fm   
)

Definition at line 80 of file Panzer_Product_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [29/36]

panzer::PHX_EVALUATE_FIELDS ( Product  ,
workset   
)

Definition at line 88 of file Panzer_Product_impl.hpp.

◆ operator()() [2/3]

void panzer::operator() ( const size_t &  cell) const

◆ PHX_EVALUATOR_CTOR() [30/36]

panzer::PHX_EVALUATOR_CTOR ( ScalarToVector  ,
 
)

Definition at line 51 of file Panzer_ScalarToVector_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [30/36]

panzer::PHX_POST_REGISTRATION_SETUP ( ScalarToVector  ,
worksets  ,
fm   
)

Definition at line 81 of file Panzer_ScalarToVector_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [30/36]

panzer::PHX_EVALUATE_FIELDS ( ScalarToVector  ,
workset   
)

Definition at line 109 of file Panzer_ScalarToVector_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [31/36]

panzer::PHX_EVALUATOR_CTOR ( SubcellSum  ,
 
)

Definition at line 55 of file Panzer_SubcellSum_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [31/36]

panzer::PHX_POST_REGISTRATION_SETUP ( SubcellSum  ,
sd  ,
fm   
)

Definition at line 82 of file Panzer_SubcellSum_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [31/36]

panzer::PHX_EVALUATE_FIELDS ( SubcellSum  ,
workset   
)

Definition at line 89 of file Panzer_SubcellSum_impl.hpp.

◆ operator()() [3/3]

template<unsigned int RANK>
void panzer::operator() ( PanzerSumTag< RANK >  ,
const int &  i 
) const

◆ buildStaticSumEvaluator()

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 , typename Tag2 >
Teuchos::RCP< PHX::Evaluator< TRAITS > > panzer::buildStaticSumEvaluator ( const std::string &  sum_name,
const std::vector< std::string > &  value_names,
const Teuchos::RCP< PHX::DataLayout > &  data_layout 
)

This functions builds a static sum evaluator based on the rank of the data layout object. Dependent and evaluated fields are denoted by the passed in parameters.

Definition at line 461 of file Panzer_Sum_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [32/36]

panzer::PHX_EVALUATOR_CTOR ( Sum  ,
 
)

Definition at line 58 of file Panzer_Sum_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [32/36]

panzer::PHX_POST_REGISTRATION_SETUP ( Sum  ,
worksets  ,
fm   
)

Definition at line 107 of file Panzer_Sum_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [32/36]

panzer::PHX_EVALUATE_FIELDS ( Sum  ,
workset   
)

Definition at line 178 of file Panzer_Sum_impl.hpp.

◆ tensorToStdVectorEvaluator() [1/2]

template<typename EvalT , typename Traits >
PHX_EVALUATOR_CLASS_END Teuchos::RCP<PHX::Evaluator<Traits> > panzer::tensorToStdVectorEvaluator ( const std::string &  tensorName,
const std::string &  vectorPrefix,
const std::vector< std::string > &  postfix,
const Teuchos::RCP< const PHX::DataLayout > &  tensorLayout,
const Teuchos::RCP< const PHX::DataLayout > &  vectorLayout 
)

This is a function constructor for an evaluator that builds vectors from a single tensor field. The user specifies the layouts (assumed compatible) and then uses a postfix for each of the vector fields.

Parameters
[in]tensorNameName of the tensor
[in]vectorPrefixName to prefix to the vector values
[in]postfixVector specifying the postfix to use when naming each vector field
[in]tensorLayoutData layout for the tensor field
[in]vectorLayoutData layout for the vectors

Definition at line 87 of file Panzer_TensorToStdVector_decl.hpp.

◆ tensorToStdVectorEvaluator() [2/2]

template<typename EvalT , typename Traits >
Teuchos::RCP<PHX::Evaluator<Traits> > panzer::tensorToStdVectorEvaluator ( const std::string &  tensorName,
const std::vector< std::string > &  postfix,
const Teuchos::RCP< const PHX::DataLayout > &  tensorLayout,
const Teuchos::RCP< const PHX::DataLayout > &  vectorLayout 
)

This is a function constructor for an evaluator that builds vectors from a single tensor field. The user specifies the layouts (assumed compatible) and then uses a postfix for each of the vector fields.

Parameters
[in]tensorNameName of the tensor
[in]postfixVector specifying the postfix to use when naming each vector field
[in]tensorLayoutData layout for the tensor field
[in]vectorLayoutData layout for the vectors

Definition at line 122 of file Panzer_TensorToStdVector_decl.hpp.

◆ PHX_EVALUATOR_CTOR() [33/36]

panzer::PHX_EVALUATOR_CTOR ( TensorToStdVector  ,
 
)

Definition at line 51 of file Panzer_TensorToStdVector_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [33/36]

panzer::PHX_POST_REGISTRATION_SETUP ( TensorToStdVector  ,
worksets  ,
fm   
)

Definition at line 81 of file Panzer_TensorToStdVector_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [33/36]

panzer::PHX_EVALUATE_FIELDS ( TensorToStdVector  ,
workset   
)

Definition at line 90 of file Panzer_TensorToStdVector_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [34/36]

panzer::PHX_EVALUATOR_CTOR ( TestScatter  ,
 
)

Definition at line 51 of file Panzer_TestScatter_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [34/36]

panzer::PHX_POST_REGISTRATION_SETUP ( TestScatter  ,
setupData  ,
fm   
)

Definition at line 71 of file Panzer_TestScatter_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [34/36]

panzer::PHX_EVALUATE_FIELDS ( TestScatter  ,
workset   
)

Definition at line 79 of file Panzer_TestScatter_impl.hpp.

◆ vectorToScalarEvaluator() [1/2]

template<typename EvalT , typename Traits >
PANZER_EVALUATOR_CLASS_END Teuchos::RCP<PHX::Evaluator<Traits> > panzer::vectorToScalarEvaluator ( const std::string &  vectorName,
const std::string &  scalarPrefix,
const std::vector< std::string > &  postfix,
const Teuchos::RCP< const PHX::DataLayout > &  vectorLayout,
const Teuchos::RCP< const PHX::DataLayout > &  scalarLayout 
)

This is a function constructor for an evaluator that builds scalars from a single vector field. The user specifies the layouts (assumed compatible) and then uses a postfix for each of the scalar fields.

Parameters
[in]vectorNameName of the vector
[in]scalarPrefixName to prefix to the scalar values
[in]postfixVector specifying the postfix to use when naming each scalar field
[in]vectorLayoutData layout for the vector field
[in]scalarLayoutData layout for the scalars

Definition at line 76 of file Panzer_VectorToScalar_decl.hpp.

◆ vectorToScalarEvaluator() [2/2]

template<typename EvalT , typename Traits >
Teuchos::RCP<PHX::Evaluator<Traits> > panzer::vectorToScalarEvaluator ( const std::string &  vectorName,
const std::vector< std::string > &  postfix,
const Teuchos::RCP< const PHX::DataLayout > &  vectorLayout,
const Teuchos::RCP< const PHX::DataLayout > &  scalarLayout 
)

This is a function constructor for an evaluator that builds scalars from a single vector field. The user specifies the layouts (assumed compatible) and then uses a postfix for each of the scalar fields.

Parameters
[in]vectorNameName of the vector
[in]postfixVector specifying the postfix to use when naming each scalar field
[in]vectorLayoutData layout for the vector field
[in]scalarLayoutData layout for the scalars

Definition at line 111 of file Panzer_VectorToScalar_decl.hpp.

◆ PHX_EVALUATOR_CTOR() [35/36]

panzer::PHX_EVALUATOR_CTOR ( VectorToScalar  ,
 
)

Definition at line 51 of file Panzer_VectorToScalar_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [35/36]

panzer::PHX_POST_REGISTRATION_SETUP ( VectorToScalar  ,
worksets  ,
fm   
)

Definition at line 81 of file Panzer_VectorToScalar_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [35/36]

panzer::PHX_EVALUATE_FIELDS ( VectorToScalar  ,
workset   
)

Definition at line 90 of file Panzer_VectorToScalar_impl.hpp.

◆ PHX_EVALUATOR_CTOR() [36/36]

panzer::PHX_EVALUATOR_CTOR ( WeakDirichletResidual  ,
 
)

Definition at line 57 of file Panzer_WeakDirichlet_Residual_impl.hpp.

◆ PHX_POST_REGISTRATION_SETUP() [36/36]

panzer::PHX_POST_REGISTRATION_SETUP ( WeakDirichletResidual  ,
sd  ,
fm   
)

Definition at line 97 of file Panzer_WeakDirichlet_Residual_impl.hpp.

◆ PHX_EVALUATE_FIELDS() [36/36]

panzer::PHX_EVALUATE_FIELDS ( WeakDirichletResidual  ,
workset   
)

Definition at line 117 of file Panzer_WeakDirichlet_Residual_impl.hpp.

◆ cloneWithNewDomain()

Teuchos::RCP< const LinearObjFactory< panzer::Traits > > panzer::cloneWithNewDomain ( const LinearObjFactory< panzer::Traits > &  lof,
const Teuchos::RCP< const UniqueGlobalIndexerBase > &  dUgi 
)

Clone a linear object factory, but using a different domain.

This is the case where you want to make sure the linear algebra abstractions are compatible, but don't really care which one is used.

Parameters
[in]lofLinear object factory to be cloned
[in]dUgiDomain unique global indexer to be used
Note
As implemented this only functions for the expicitly instantiated linear object factory types.

Definition at line 14 of file Panzer_LinearObjFactory_Utilities.cpp.

◆ cloneWithNewRange()

Teuchos::RCP< const LinearObjFactory< panzer::Traits > > panzer::cloneWithNewRange ( const LinearObjFactory< panzer::Traits > &  lof,
const Teuchos::RCP< const UniqueGlobalIndexerBase > &  rUgi 
)

Clone a linear object factory, but using a different range.

This is the case where you want to make sure the linear algebra abstractions are compatible, but don't really care which one is used.

Parameters
[in]lofLinear object factory to be cloned
[in]rUgiRange unique global indexer to be used
Note
As implemented this only functions for the expicitly instantiated linear object factory types.

Definition at line 21 of file Panzer_LinearObjFactory_Utilities.cpp.

◆ cloneWithNewRangeAndDomain()

Teuchos::RCP< const LinearObjFactory< panzer::Traits > > panzer::cloneWithNewRangeAndDomain ( const LinearObjFactory< panzer::Traits > &  lof,
const Teuchos::RCP< const UniqueGlobalIndexerBase > &  rUgi,
const Teuchos::RCP< const UniqueGlobalIndexerBase > &  dUgi 
)

Clone a linear object factory, but using a different range and domain.

This is the case where you want to make sure the linear algebra abstractions are compatible, but don't really care which one is used.

Parameters
[in]lofLinear object factory to be cloned
[in]rUgiRange unique global indexer to be used
[in]dUgiDomain unique global indexer to be used
Note
As implemented this only functions for the expicitly instantiated linear object factory types.

Definition at line 28 of file Panzer_LinearObjFactory_Utilities.cpp.

◆ operator<<() [1/8]

std::ostream& panzer::operator<< ( std::ostream &  os,
const AssemblyEngineInArgs in 
)
inline

Streaming output for the AssemblyEngineInArgs. This is helpful in debugging exactly what is in the input arguments data structure.

Definition at line 145 of file Panzer_AssemblyEngine_InArgs.hpp.

◆ basisIRLayout() [1/2]

Teuchos::RCP< panzer::BasisIRLayout > panzer::basisIRLayout ( std::string  basis_type,
const int  basis_order,
const PointRule pt_rule 
)

Nonmember constructor.

Definition at line 55 of file Panzer_BasisIRLayout.cpp.

◆ basisIRLayout() [2/2]

Teuchos::RCP< panzer::BasisIRLayout > panzer::basisIRLayout ( const Teuchos::RCP< const PureBasis > &  b,
const PointRule pt_rule 
)

Nonmember constructor.

Definition at line 61 of file Panzer_BasisIRLayout.cpp.

◆ operator<<() [2/8]

std::ostream & panzer::operator<< ( std::ostream &  os,
const panzer::BC bc 
)

Definition at line 319 of file Panzer_BC.cpp.

◆ buildAndRegisterSubsetOfClosureModelEvaluatorsForType()

template<typename EvalT >
void panzer::buildAndRegisterSubsetOfClosureModelEvaluatorsForType ( PHX::FieldManager< panzer::Traits > &  fm,
const panzer::PhysicsBlock pb,
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &  factory,
const std::string  comma_sep_closure_model_list,
const Teuchos::ParameterList models,
const Teuchos::ParameterList user_data 
)

Builds the closure models for a particular physics block for a dirichlet bc.

In many cases, we want the material models for a particular physics block for a boundary condition. We could make a direct call to the physics block function buildAndRegisterClosureModelEvaluatorsForType<EvalT>(). However, in many cases this registers certain unneeded evaluators that cause problems. Some evaluators may instert required fields at integration points that can not be met for dirichlet conditions where we work at basis points. Use this class to build a subset of the closure models for a dirichlet bc.

Parameters
fm[in/out] FieldManager - on exit will contain registerd evaluators
pb[in] Physics block
factory[in] closure model factory
comma_sep_closure_model_list[in] a string containing a comma separated list of the models to build
models[in] list of models avaialble to the simulation
user_data[in] User suppplied data that optionally can be used to build models

Definition at line 79 of file Panzer_BCStrategy_Dirichlet_Utilities.hpp.

◆ buildBlockIdToPhysicsIdMap()

void panzer::buildBlockIdToPhysicsIdMap ( std::map< std::string, std::string > &  b_to_p,
const Teuchos::ParameterList p 
)

Definition at line 48 of file Panzer_ElementBlockIdToPhysicsIdMap.cpp.

◆ operator<<() [3/8]

std::ostream& panzer::operator<< ( std::ostream &  os,
const FieldLibraryBase flb 
)
inline

Definition at line 155 of file Panzer_FieldLibrary.hpp.

◆ operator<<() [4/8]

std::ostream & panzer::operator<< ( std::ostream &  os,
const panzer::FieldManagerBuilder rfd 
)

Definition at line 491 of file Panzer_FieldManagerBuilder.cpp.

◆ createGlobalData()

Teuchos::RCP<panzer::GlobalData> panzer::createGlobalData ( bool  build_default_os,
int  print_process 
)
related

Definition at line 50 of file Panzer_GlobalData.cpp.

◆ setupInitialConditionFieldManagers()

void panzer::setupInitialConditionFieldManagers ( WorksetContainer wkstContainer,
const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &  physicsBlocks,
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &  cm_factory,
const Teuchos::ParameterList ic_block_closure_models,
const panzer::LinearObjFactory< panzer::Traits > &  lo_factory,
const Teuchos::ParameterList user_data,
const bool  write_graphviz_file,
const std::string &  graphviz_file_prefix,
std::map< std::string, Teuchos::RCP< PHX::FieldManager< panzer::Traits > > > &  phx_ic_field_managers 
)

Builds PHX::FieldManager objects for inital conditions and registers evaluators.

Parameters
[in]wkstContainerWorksets for the corresponding evaluations.
[in]physicsBlockPhysicsBlocks created by FieldManagerBuilder.
[in]cm_factoryFactory that provides all closure models required by the initial condition evaluation.
[in]closure_modelsList of closure models for each element block required for initial conditions.
[in]lo_factoryLinearObjFactory corresponding to the problem.
[in]user_dataParameterList with optional user data.
[out]phx_ic_field_managersAllocated PHX::FieldManagers for each element block.

Definition at line 55 of file Panzer_InitialCondition_Builder.cpp.

◆ evaluateInitialCondition()

void panzer::evaluateInitialCondition ( WorksetContainer wkstContainer,
const std::map< std::string, Teuchos::RCP< PHX::FieldManager< panzer::Traits > > > &  phx_ic_field_managers,
Teuchos::RCP< panzer::LinearObjContainer loc,
const panzer::LinearObjFactory< panzer::Traits > &  lo_factory,
const double  time_stamp 
)

Execute the construction of an initial condition.

Definition at line 101 of file Panzer_InitialCondition_Builder.cpp.

◆ setupControlInitialCondition()

void panzer::setupControlInitialCondition ( const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &  block_ids_to_cell_topo,
const std::map< std::string, std::vector< ICFieldDescriptor > > &  block_ids_to_fields,
panzer::WorksetContainer wkstContainer,
const panzer::LinearObjFactory< panzer::Traits > &  lof,
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &  cm_factory,
const Teuchos::ParameterList ic_closure_models,
const Teuchos::ParameterList user_data,
int  workset_size,
double  t0,
const Teuchos::RCP< Thyra::VectorBase< double > > &  vec 
)

Fill a vector with the initial conditions specified using the closure models. This is intended to work with out physics blocks and so is most applicable for controls.

Parameters
[in]block_ids_to_cell_topoMap from element blocks to cell topologies.
[in]block_ids_to_fieldsMap from element blocks to required fields.
[in]wkstContainerWorksets for the corresponding evaluations.
[in]lofLinearObjFactory corresponding to the problem.
[in]cm_factoryFactory that provides all closure models required by the initial condition evaluation.
[in]closure_modelsList of closure models for each element block required for initial conditions.
[in]user_dataParameterList with optional user data.
[in]workset_sizeSize of the worksets.
[in]t0Initial time.
[out]vecVector defined by the lof containing the intial conditions.

Definition at line 281 of file Panzer_InitialCondition_Builder.cpp.

◆ buildICPhysicsBlocks() [1/2]

void panzer::buildICPhysicsBlocks ( const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &  block_ids_to_cell_topo,
const std::map< std::string, std::vector< ICFieldDescriptor > > &  block_ids_to_fields,
int  workset_size,
std::vector< Teuchos::RCP< PhysicsBlock > > &  physics_blocks 
)

Definition at line 315 of file Panzer_InitialCondition_Builder.cpp.

◆ buildICPhysicsBlocks() [2/2]

void panzer::buildICPhysicsBlocks ( const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &  block_ids_to_cell_topo,
const std::map< std::string, std::vector< ICFieldDescriptor > > &  block_ids_to_fields,
int  workset_size,
std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &  physics_blocks 
)

A helper function that builds the physics blocks specified by the field descriptors. This is used inside the setup function for controls to build mock physics blocks.

Parameters
[in]block_ids_to_cell_topoMap from element blocks to cell topologies.
[in]block_ids_to_fieldsMap from element blocks to required fields.
[in]workset_sizeSize of the worksets.
[out]physics_blocksPhysics blocks used to contrust field managers.

◆ permuteToOther()

template<typename Scalar >
static void panzer::permuteToOther ( const PHX::MDField< Scalar, Cell, IP, Dim > &  coords,
const PHX::MDField< Scalar, Cell, IP, Dim > &  other_coords,
std::vector< typename ArrayTraits< Scalar, PHX::MDField< Scalar > >::size_type > &  permutation 
)
static

Definition at line 360 of file Panzer_IntegrationValues2.cpp.

◆ createIntrepid2Basis() [1/2]

template<typename ScalarT , typename ArrayT >
Teuchos::RCP<Intrepid2::Basis<ScalarT,ArrayT> > panzer::createIntrepid2Basis ( const std::string  basis_type,
int  basis_order,
const shards::CellTopology &  cell_topology 
)

Creates an Intrepid2::Basis object given the basis, order and cell topology.

Parameters
[in]basis_typeThe name of the basis.
[in]basis_orderThe order of the polynomial used to construct the basis.
[in]cell_topologyCell topology for the basis. Taken from shards::CellTopology::getName() after trimming the extended basis suffix.

To be backwards compatible, this method takes deprecated descriptions and transform it into a valid type and order. For example "Q1" is transformed to basis_type="HGrad",basis_order=1.

Returns
A newly allocated panzer::Basis object.

Definition at line 98 of file Panzer_IntrepidBasisFactory.hpp.

◆ createIntrepid2Basis() [2/2]

template<typename ScalarT , typename ArrayT >
Teuchos::RCP<Intrepid2::Basis<ScalarT,ArrayT> > panzer::createIntrepid2Basis ( const std::string  basis_type,
int  basis_order,
const Teuchos::RCP< const shards::CellTopology > &  cell_topology 
)

Creates an Intrepid2::Basis object given the basis, order and cell topology.

Parameters
[in]basis_typeThe name of the basis.
[in]basis_orderThe order of the polynomial used to construct the basis.
[in]cell_topologyCell topology for the basis. Taken from shards::CellTopology::getName() after trimming the extended basis suffix.

To be backwards compatible, this method takes deprecated descriptions and transform it into a valid type and order. For example "Q1" is transformed to basis_type="HGrad",basis_order=1.

Returns
A newly allocated panzer::Basis object.

Definition at line 191 of file Panzer_IntrepidBasisFactory.hpp.

◆ operator<<() [5/8]

std::ostream & panzer::operator<< ( std::ostream &  os,
panzer::MaterialModelEntry m 
)

Definition at line 113 of file Panzer_MaterialModelEntry.cpp.

◆ buildEpetraME()

Teuchos::RCP< panzer::ModelEvaluator_Epetra > panzer::buildEpetraME ( const Teuchos::RCP< FieldManagerBuilder > &  fmb,
const Teuchos::RCP< ResponseLibrary< panzer::Traits > > &  rLibrary,
const Teuchos::RCP< LinearObjFactory< panzer::Traits > > &  lof,
const std::vector< Teuchos::RCP< Teuchos::Array< std::string > > > &  p_names,
const std::vector< Teuchos::RCP< Teuchos::Array< double > > > &  p_values,
const Teuchos::RCP< panzer::GlobalData > &  global_data,
bool  build_transient_support 
)

From a genericly typed linear object factory try and build an epetra model evaluator. This method attempts to cast to the right linear object factory and then calls the appropriate constructor of ModelEvaluator_Epetra.

Definition at line 912 of file Panzer_ModelEvaluator_Epetra.cpp.

◆ buildModelEvaluator()

template<typename ScalarT , typename LO , typename GO >
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > panzer::buildModelEvaluator ( )

Definition at line 55 of file Panzer_ModelEvaluator_Factory_impl.hpp.

◆ buildOrientationContainer() [1/2]

template<typename Scalar , typename Array >
Teuchos::RCP<const panzer::OrientationContainerBase<Scalar,Array> > panzer::buildOrientationContainer ( const Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > &  globalIndexer,
const std::string &  fieldName 
)

Build an orientation container from a global indexer and a field. Underneath this does several dynamic casts to determine the type of UniqueGlobalIndexer object that has been passed in.

Definition at line 88 of file Panzer_OrientationContainer_impl.hpp.

◆ buildOrientationContainer() [2/2]

template<typename Scalar , typename Array >
Teuchos::RCP<const OrientationContainerBase<Scalar,Array> > panzer::buildOrientationContainer ( const Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > &  globalIndexer,
const std::string &  fieldName 
)

Build an orientation container from a global indexer and a field. Underneath this does several dynamic casts to determine the type of UniqueGlobalIndexer object that has been passed in.

Definition at line 88 of file Panzer_OrientationContainer_impl.hpp.

◆ registerScalarParameter()

void panzer::registerScalarParameter ( const std::string  name,
panzer::ParamLib pl,
double  realValue 
)

Definition at line 59 of file Panzer_ParameterLibraryUtilities.cpp.

◆ accessScalarParameter()

template<typename EvaluationType >
Teuchos::RCP< panzer::ScalarParameterEntry< EvaluationType > > panzer::accessScalarParameter ( const std::string  name,
panzer::ParamLib pl 
)

Definition at line 73 of file Panzer_ParameterLibraryUtilities_impl.hpp.

◆ createAndRegisterScalarParameter()

template<typename EvaluationType >
Teuchos::RCP<panzer::ScalarParameterEntry<EvaluationType> > panzer::createAndRegisterScalarParameter ( const std::string  name,
panzer::ParamLib pl 
)
related

Definition at line 50 of file Panzer_ParameterLibraryUtilities_impl.hpp.

◆ pauseToAttach() [1/2]

void panzer::pauseToAttach ( MPI_Comm  mpicomm)
inline

Definition at line 57 of file Panzer_PauseToAttach.hpp.

◆ pauseToAttach() [2/2]

void panzer::pauseToAttach ( )
inline

Definition at line 75 of file Panzer_PauseToAttach.hpp.

◆ ptrFromStlVector()

template<typename T >
T* panzer::ptrFromStlVector ( std::vector< T > &  v)
inline

Function to eliminate runtime errors triggered by compiling with checked_stl enabled builds. We have cases where raw pointers must be passed to external libraries like Epetra. If the raw data is stored in a stl vector object, it is legal to access the vector using &v[0]. In an effort to be efficient (for performance essential kernels) we do not check the size of the stl vector before grabbing the pointer. We just grab the pointer and pass the size to the epetra function. However, if the vector size is zero, then the checked stl will throw an error. This is a case of checked stl forcing us to write less efficient code (by having to check the size). To preserve efficiency, we use a define based on if checked stl is enabled.

Definition at line 65 of file Panzer_PtrFromStlVector.hpp.

◆ getLocalSideIndexFromGlobalNodeList()

template<typename ArrayCellGIDs , typename ArraySideGIDs >
unsigned panzer::getLocalSideIndexFromGlobalNodeList ( const ArrayCellGIDs &  cellGIDs,
const ArraySideGIDs &  sideGIDs,
const shards::CellTopology &  cell 
)

Definition at line 56 of file Panzer_Shards_Utilities.hpp.

◆ getLocalSubcellIndexFromGlobalNodeList()

template<typename ArrayCellGIDs , typename ArraySideGIDs >
unsigned panzer::getLocalSubcellIndexFromGlobalNodeList ( const ArrayCellGIDs &  cellGIDs,
const ArraySideGIDs &  subcellGIDs,
const shards::CellTopology &  cell,
unsigned  subcell_dim 
)

This function takes a list of of GIDs defined on a cell and returns the local subcell Shards index for a user specified subcell dimension.

Parameters
[in]cellGIDsNode GIDs for the cell
[in]subcellGIDsNode GIDs for the subcell to be found
[in]cellShards cell topology used to find local index
[in]subcell_dimDimension of subcell to be found
Returns
Local Shards index for the subcell described by subcellGIDs

Definition at line 122 of file Panzer_Shards_Utilities.hpp.

◆ getLocalSubcellMapFromGlobalNodeLists()

template<typename ArrayCellGIDs , typename ArraySubcellGIDs >
void panzer::getLocalSubcellMapFromGlobalNodeLists ( const ArrayCellGIDs &  cellGIDs,
const std::vector< ArraySubcellGIDs > &  subcellGIDs,
const shards::CellTopology &  cell,
unsigned  subcell_dim,
std::vector< unsigned > &  subcellMap 
)

This function takes a vector of lists of GIDs defined on a cell and returns a the local Shards subcell numbering to indexes into the vector. (Essentially will return a function defining (Shards #ing -> Local Elmt #ing).

Parameters
[in]cellGIDsNode GIDs for the cell
[in]subcellGIDsNode GIDs for the subcell to be found for each subcell of a particular dimension
[in]cellShards cell topology used to find local index
[in]subcell_dimDimension of subcell to be found
[in,out]subcellMapVector mapping the shards local numbering to the user specified local numbering.

To use the mapping "function" to find the GIDs of the subcell associated with a Shards indexed subcell simply do: subcellGIDs[subcellMap[shardsIndex]]

Definition at line 186 of file Panzer_Shards_Utilities.hpp.

◆ getEntry()

template<typename MapT >
const MapT::mapped_type& panzer::getEntry ( const MapT &  in_map,
const typename MapT::key_type &  in_key 
)

Definition at line 55 of file Panzer_StlMap_Utilities.hpp.

◆ createDynRankView()

template<typename InputArray , typename ... DimensionPack>
Kokkos::DynRankView<typename InputArray::value_type,PHX::Device> panzer::createDynRankView ( const InputArray &  a,
const std::string &  name,
const DimensionPack...  dims 
)

Wrapper to simplify Panzer use of Sacado ViewFactory.

Definition at line 12 of file Panzer_ViewFactory.hpp.

◆ operator<<() [6/8]

std::ostream & panzer::operator<< ( std::ostream &  os,
const panzer::Workset w 
)

Definition at line 47 of file Panzer_Workset.cpp.

◆ populateValueArrays() [1/2]

void panzer::populateValueArrays ( std::size_t  num_cells,
bool  isSide,
const WorksetNeeds needs,
WorksetDetails details,
const Teuchos::RCP< WorksetDetails other_details 
)

Definition at line 107 of file Panzer_Workset_Builder.cpp.

◆ populateValueArrays() [2/2]

void panzer::populateValueArrays ( std::size_t  num_cells,
bool  isSide,
const PhysicsBlock pb,
WorksetDetails details,
const Teuchos::RCP< WorksetDetails other_details = Teuchos::null 
)

Populate basis values and integration values data structures in the WorksetDetails object being passed in. Note that this works for both edge data structures and for volumetric data structures. Note that for this function to work the WorksetDetails object must already be populated with coordinates.

Parameters
[in]num_cellsThe number of cells contained in the workset
[in]isSidePopulate using a side subcell
[in]pbPhysics block that contains the integration rules and basis functions
[in,out]detailsObject to be populated already containing the vertex coordinates for the cells.
Note
This function is primarily for internal use. A user should not call it directly.

Definition at line 177 of file Panzer_Workset_Builder.cpp.

◆ buildWorksets() [1/2]

template<typename ArrayT >
Teuchos::RCP<std::vector<Workset> > panzer::buildWorksets ( const PhysicsBlock pb,
const std::vector< std::size_t > &  local_cell_ids,
const ArrayT &  vertex_coordinates 
)

◆ buildWorksets() [2/2]

template<typename ArrayT >
Teuchos::RCP<std::vector<Workset> > panzer::buildWorksets ( const WorksetNeeds needs,
const std::string &  elementBlock,
const std::vector< std::size_t > &  local_cell_ids,
const ArrayT &  vertex_coordinates 
)

◆ buildBCWorkset() [1/3]

template<typename ArrayT >
Teuchos::RCP<std::map<unsigned,Workset> > panzer::buildBCWorkset ( const PhysicsBlock volume_pb,
const std::vector< std::size_t > &  local_cell_ids,
const std::vector< std::size_t > &  local_side_ids,
const ArrayT &  vertex_coordinates 
)

◆ buildBCWorkset() [2/3]

template<typename ArrayT >
Teuchos::RCP<std::map<unsigned,Workset> > panzer::buildBCWorkset ( const WorksetNeeds needs,
const std::string &  elementBlock,
const std::vector< std::size_t > &  local_cell_ids,
const std::vector< std::size_t > &  local_side_ids,
const ArrayT &  vertex_coordinates,
const bool  populate_value_arrays = true 
)

◆ buildEdgeWorksets() [1/4]

template<typename ArrayT >
Teuchos::RCP<std::vector<Workset> > panzer::buildEdgeWorksets ( const PhysicsBlock pb_a,
const std::vector< std::size_t > &  local_cell_ids_a,
const std::vector< std::size_t > &  local_side_ids_a,
const ArrayT &  vertex_coordinates_a,
const PhysicsBlock pb_b,
const std::vector< std::size_t > &  local_cell_ids_b,
const std::vector< std::size_t > &  local_side_ids_b,
const ArrayT &  vertex_coordinates_b 
)

This routine supports construction of worksets that are more DG like. The elements are assumed to shared an edge (or face) and the side id is specified accordingly. Note that no checking of "sharing" is done when the workset is constructed.

◆ buildEdgeWorksets() [2/4]

template<typename ArrayT >
Teuchos::RCP<std::vector<Workset> > panzer::buildEdgeWorksets ( const WorksetNeeds needs_a,
const std::string &  eblock_a,
const std::vector< std::size_t > &  local_cell_ids_a,
const std::vector< std::size_t > &  local_side_ids_a,
const ArrayT &  vertex_coordinates_a,
const WorksetNeeds needs_b,
const std::string &  eblock_b,
const std::vector< std::size_t > &  local_cell_ids_b,
const std::vector< std::size_t > &  local_side_ids_b,
const ArrayT &  vertex_coordinates_b 
)

◆ buildEdgeWorksets() [3/4]

template<typename ArrayT >
std::vector<Workset>::iterator panzer::buildEdgeWorksets ( const std::vector< std::size_t > &  cell_indices,
const PhysicsBlock pb_a,
const std::vector< std::size_t > &  local_cell_ids_a,
const std::vector< std::size_t > &  local_side_ids_a,
const ArrayT &  vertex_coordinates_a,
const PhysicsBlock pb_b,
const std::vector< std::size_t > &  local_cell_ids_b,
const std::vector< std::size_t > &  local_side_ids_b,
const ArrayT &  vertex_coordinates_b,
std::vector< Workset >::iterator  beg 
)

◆ buildEdgeWorksets() [4/4]

template<typename ArrayT >
std::vector<Workset>::iterator panzer::buildEdgeWorksets ( const std::vector< std::size_t > &  cell_indices,
const WorksetNeeds needs_a,
const std::string &  eblock_a,
const std::vector< std::size_t > &  local_cell_ids_a,
const std::vector< std::size_t > &  local_side_ids_a,
const ArrayT &  vertex_coordinates_a,
const WorksetNeeds needs_b,
const std::string &  eblock_b,
const std::vector< std::size_t > &  local_cell_ids_b,
const std::vector< std::size_t > &  local_side_ids_b,
const ArrayT &  vertex_coordinates_b,
std::vector< Workset >::iterator  beg 
)

◆ buildBCWorkset() [3/3]

template<typename ArrayT >
Teuchos::RCP<std::map<unsigned,Workset> > panzer::buildBCWorkset ( const panzer::PhysicsBlock pb_a,
const std::vector< std::size_t > &  local_cell_ids_a,
const std::vector< std::size_t > &  local_side_ids_a,
const ArrayT &  vertex_coordinates_a,
const panzer::PhysicsBlock pb_b,
const std::vector< std::size_t > &  local_cell_ids_b,
const std::vector< std::size_t > &  local_side_ids_b,
const ArrayT &  vertex_coordinates_b 
)

◆ getPureBasisIndex() [1/2]

std::vector< std::string >::size_type panzer::getPureBasisIndex ( std::string  basis_name,
panzer::Workset workset,
WorksetDetailsAccessor wda 
)

Returns the index in the workset bases for a particular PureBasis name.

Parameters
[in]basis_nameName of the basis that corresponds to a particular PureBasis
[in]worksetWorksets to perform the search over
[in]wdaWorksetDetailsAccessor to access the correct WorksetDetails in workset.

Definition at line 57 of file Panzer_Workset_Utilities.cpp.

◆ getBasisIndex() [1/2]

std::vector< std::string >::size_type panzer::getBasisIndex ( std::string  basis_name,
panzer::Workset workset,
WorksetDetailsAccessor wda 
)

Returns the index in the workset bases for a particular BasisIRLayout name.

Parameters
[in]basis_nameName of the basis that corresponds to a particular BasisIRLayout
[in]worksetWorksets to perform the search over
[in]wdaWorksetDetailsAccessor to access the correct WorksetDetails in workset.

Definition at line 80 of file Panzer_Workset_Utilities.cpp.

◆ getIntegrationRuleIndex() [1/2]

std::vector< int >::size_type panzer::getIntegrationRuleIndex ( int  ir_degree,
panzer::Workset workset,
WorksetDetailsAccessor wda 
)

Definition at line 97 of file Panzer_Workset_Utilities.cpp.

◆ printWorkset() [1/2]

void panzer::printWorkset ( std::ostream &  os,
const panzer::Workset workset,
WorksetDetailsAccessor wda 
)

Definition at line 113 of file Panzer_Workset_Utilities.cpp.

◆ getPureBasisIndex() [2/2]

std::vector< std::string >::size_type panzer::getPureBasisIndex ( std::string  basis_name,
panzer::Workset workset 
)

Definition at line 204 of file Panzer_Workset_Utilities.cpp.

◆ getBasisIndex() [2/2]

std::vector< std::string >::size_type panzer::getBasisIndex ( std::string  basis_name,
panzer::Workset workset 
)

Definition at line 209 of file Panzer_Workset_Utilities.cpp.

◆ getIntegrationRuleIndex() [2/2]

std::vector< int >::size_type panzer::getIntegrationRuleIndex ( int  ir_degree,
panzer::Workset workset 
)

Definition at line 214 of file Panzer_Workset_Utilities.cpp.

◆ printWorkset() [2/2]

void panzer::printWorkset ( std::ostream &  os,
const panzer::Workset workset 
)

Definition at line 218 of file Panzer_Workset_Utilities.cpp.

◆ getVolumeWorksetsFromContainer()

void panzer::getVolumeWorksetsFromContainer ( WorksetContainer wc,
const std::vector< std::string > &  elementBlockNames,
std::map< std::string, Teuchos::RCP< std::vector< Workset > > > &  volumeWksts 
)

Build a map of volume worksets from a list of element blocks. Note that this may, if needed, allocate these worksets in the workset container object.

Parameters
[in]wcWorkset container that contains, or will contain, the volume worksets.
[in]elementBlockNamesElement blocks to build the worksets for.
[out]volumeWkstsMap form element block ids to the volume worksets. This will not be cleared but the worksets with shared element names will be overwritten.

Definition at line 459 of file Panzer_WorksetContainer.cpp.

◆ getSideWorksetsFromContainer()

void panzer::getSideWorksetsFromContainer ( WorksetContainer wc,
const std::vector< BC > &  bcs,
std::map< BC, Teuchos::RCP< std::map< unsigned, Workset > >, LessBC > &  sideWksts 
)

Build a map of side worksets from a list of boundary conditions. Note that this may, if needed, allocate these worksets in the workset container object.

Parameters
[in]wcWorkset container that contains, or will contain, the volume worksets.
[in]bcsBoundary conditions to use.
[out]sideWkstsMap form element block ids to the volume worksets. This will not be cleared but the worksets with shared element names will be overwritten.

Definition at line 467 of file Panzer_WorksetContainer.cpp.

◆ operator==()

bool panzer::operator== ( const WorksetDescriptor a,
const WorksetDescriptor b 
)
inline

Equality operation for use with hash tables and maps.

Definition at line 138 of file Panzer_WorksetDescriptor.hpp.

◆ hash_value()

std::size_t panzer::hash_value ( const WorksetDescriptor wd)
inline

Hash function that satisifies the stl hash interface.

Definition at line 155 of file Panzer_WorksetDescriptor.hpp.

◆ operator<<() [7/8]

std::ostream& panzer::operator<< ( std::ostream &  os,
const WorksetDescriptor wd 
)
inline

I/O utility.

Definition at line 170 of file Panzer_WorksetDescriptor.hpp.

◆ blockDescriptor()

WorksetDescriptor panzer::blockDescriptor ( const std::string &  eBlock)
inline

Builds a descriptor specifying an element block.

Definition at line 186 of file Panzer_WorksetDescriptor.hpp.

◆ sidesetDescriptor()

WorksetDescriptor panzer::sidesetDescriptor ( const std::string &  eBlock,
const std::string &  sideset 
)
inline

Builds a descriptor specifying a sideset, specify surface terms.

Definition at line 191 of file Panzer_WorksetDescriptor.hpp.

◆ sidesetVolumeDescriptor()

WorksetDescriptor panzer::sidesetVolumeDescriptor ( const std::string &  eBlock,
const std::string &  sideset 
)
inline

Builds a descriptor specifying a sideset, however specify volumetric terms not surface terms.

Definition at line 197 of file Panzer_WorksetDescriptor.hpp.

◆ zeroSensitivities() [1/3]

void panzer::zeroSensitivities ( panzer::Traits::RealType s)
inline

Zero out AD types so that we can drop sensitivity contributions.

Specialization for Residual

Definition at line 56 of file Panzer_ZeroSensitivities.hpp.

◆ zeroSensitivities() [2/3]

void panzer::zeroSensitivities ( panzer::Traits::FadType s)
inline

Specialization for Fad type Jacobian.

Definition at line 59 of file Panzer_ZeroSensitivities.hpp.

◆ zeroSensitivities() [3/3]

template<typename T >
Sacado::mpl::enable_if< Sacado::IsView<T> >::type panzer::zeroSensitivities ( x)
inline

Specialization for Fad type Hessian.

Specialization for Kokkos View reference type Jacobian

Definition at line 86 of file Panzer_ZeroSensitivities.hpp.

◆ ResponseMESupportBuilderBase::build< panzer::Traits::Residual >()

Definition at line 62 of file Panzer_ResponseMESupportBuilderBase.hpp.

◆ ResponseMESupportBuilderBase::build< panzer::Traits::Jacobian >()

Definition at line 66 of file Panzer_ResponseMESupportBuilderBase.hpp.

◆ ResponseMESupportBuilderBase::build< panzer::Traits::Tangent >()

Definition at line 70 of file Panzer_ResponseMESupportBuilderBase.hpp.

◆ hash_combine()

template<class T >
void panzer::hash_combine ( std::size_t &  seed,
const T &  v 
)
inline

Definition at line 30 of file Panzer_HashUtils.hpp.

◆ printMemoryUsage() [1/2]

void panzer::printMemoryUsage ( std::ostream &  s,
const Teuchos::Comm< int > &  comm 
)

Print memory usage to stream.

Definition at line 99 of file Panzer_MemUtils.cpp.

◆ printMemoryUsage() [2/2]

void panzer::printMemoryUsage ( std::ostream &  s,
const Teuchos::Comm< int > &  comm,
const MemUsage mem 
)

Definition at line 111 of file Panzer_MemUtils.cpp.

◆ pretty()

void panzer::pretty ( std::ostream &  s,
size_t  num 
)

Definition at line 132 of file Panzer_MemUtils.cpp.

◆ getMemoryUsage()

MemUsage panzer::getMemoryUsage ( const Teuchos::Comm< int > &  comm)

Get memory usage in B.

Definition at line 153 of file Panzer_MemUtils.cpp.

◆ getPeakRSS()

MemUsage panzer::getPeakRSS ( const Teuchos::Comm< int > &  comm)

Returns the peak (maximum so far) resident set size (physical memory use) measured in bytes, or zero if the value cannot be determined on this OS.

Definition at line 165 of file Panzer_MemUtils.cpp.

◆ getCurrentRSS()

MemUsage panzer::getCurrentRSS ( const Teuchos::Comm< int > &  comm)

Returns the current resident set size (physical memory use) measured in bytes, or zero if the value cannot be determined on this OS.

Definition at line 222 of file Panzer_MemUtils.cpp.

◆ reduceMemUsage()

MemUsage panzer::reduceMemUsage ( size_t &  mem,
const Teuchos::Comm< int > &  comm,
const MemUsageType type 
)

Reduce the memory usage over all the processors.

Definition at line 271 of file Panzer_MemUtils.cpp.

◆ trim()

void panzer::trim ( std::string &  str)

Removes whitespace at beginning and end of string.

Definition at line 48 of file Panzer_String_Utilities.cpp.

◆ StringTokenizer()

void panzer::StringTokenizer ( std::vector< std::string > &  tokens,
const std::string &  str,
const std::string  delimiters,
bool  trim 
)

Tokenize a string, put tokens in a vector.

Definition at line 65 of file Panzer_String_Utilities.cpp.

◆ TokensToDoubles()

void panzer::TokensToDoubles ( std::vector< double > &  values,
const std::vector< std::string > &  tokens 
)

Turn a vector of tokens into a vector of doubles.

Definition at line 97 of file Panzer_String_Utilities.cpp.

◆ TokensToInts()

void panzer::TokensToInts ( std::vector< int > &  values,
const std::vector< std::string > &  tokens 
)

Turn a vector of tokens into a vector of ints.

Definition at line 110 of file Panzer_String_Utilities.cpp.

◆ getScalarParameter()

template<typename ScalarT >
ScalarT panzer::getScalarParameter ( const std::string &  field,
const Teuchos::ParameterList plist 
)

Read in a parameter field and return the correct scalar field. This parses scalar type data

Definition at line 71 of file Panzer_String_Utilities.hpp.

◆ version()

std::string panzer::version ( )

Definition at line 48 of file Panzer_Version.cpp.

◆ operator<<() [8/8]

std::ostream & panzer::operator<< ( std::ostream &  os,
const FieldPattern fp 
)

Stream IO.

Definition at line 139 of file Panzer_FieldPattern.cpp.

◆ nc2c_vector()

template<typename LocalOrdinalT , typename GlobalOrdinalT >
std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > panzer::nc2c_vector ( const std::vector< Teuchos::RCP< UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &  ugis)

Convert a nonconst to a constat vector. This works around an RCP issue where the compiler gets confused by const.

Definition at line 61 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ getFieldBlock() [1/2]

template<typename LocalOrdinalT , typename GlobalOrdinalT >
int panzer::getFieldBlock ( const std::string &  fieldName,
const std::vector< Teuchos::RCP< UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &  ugis 
)

Get the block associated with a particular field. This is an exhaustive (e.g. expensive) search. This returns the first found index into the ugis that contains the required field.

Parameters
[in]fieldNameThe field to look for.
[in]ugisThe global indexers to look in.
Returns
The index that this field is in. If this returns -1, no field was found.

Definition at line 86 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ getFieldBlock() [2/2]

template<typename LocalOrdinalT , typename GlobalOrdinalT >
int panzer::getFieldBlock ( const std::string &  fieldName,
const std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &  ugis 
)

Get the block associated with a particular field. This is an exhaustive (e.g. expensive) search. This returns the first found index into the ugis that contains the required field.

Parameters
[in]fieldNameThe field to look for.
[in]ugisThe global indexers to look in.
Returns
The index that this field is in. If this returns -1, no field was found.

Definition at line 72 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ computeBlockOffsets() [1/2]

template<typename LocalOrdinalT , typename GlobalOrdinalT >
void panzer::computeBlockOffsets ( const std::string &  blockId,
const std::vector< Teuchos::RCP< UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &  ugis,
std::vector< int > &  blockOffsets 
)

Compute the offsets for the global indexer for a particular block id. This is useful for unknown numbering into a block format. The local element matrix will be logically ordered like the monolithic operator. These offsets are the local start and end of a particular block. For instance if you are intersted in block i then the start index would be at blockOffsets[i] and the end would be at blockOffsets[i+1] Note that this requires a sentinnel in the block offsets size. (Note that the use of element block and block are confusing but different in this context)

Parameters
[in]blockIdElement block name that to do this for.
[in]ugisUnique global indexers containing fields to be blocked
[out]blockOffsetsResult vector with length ugis.size()+1.

Definition at line 100 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ computeBlockOffsets() [2/2]

template<typename LocalOrdinalT , typename GlobalOrdinalT >
void panzer::computeBlockOffsets ( const std::string &  blockId,
const std::vector< Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > > &  ugis,
std::vector< int > &  blockOffsets 
)

Compute the offsets for the global indexer for a particular block id. This is useful for unknown numbering into a block format. The local element matrix will be logically ordered like the monolithic operator. These offsets are the local start and end of a particular block. For instance if you are intersted in block i then the start index would be at blockOffsets[i] and the end would be at blockOffsets[i+1] Note that this requires a sentinnel in the block offsets size. (Note that the use of element block and block are confusing but different in this context)

Parameters
[in]blockIdElement block name that to do this for.
[in]ugisUnique global indexers containing fields to be blocked
[out]blockOffsetsResult vector with length ugis.size()+1.

Definition at line 115 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ printUGILoadBalancingInformation()

template<typename LocalOrdinalT , typename GlobalOrdinalT >
std::string panzer::printUGILoadBalancingInformation ( const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi)

Print out unique global indexer load balancing information. This includes the minimum unknown, maximum unknown count, mean unknown and standard deviation of the unknowns for both owned and owned and ghosted.

Definition at line 131 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ printMeshTopology()

template<typename LocalOrdinalT , typename GlobalOrdinalT >
void panzer::printMeshTopology ( std::ostream &  os,
const panzer::UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi 
)

Print all GIDs and their associated elements to the screen. Note if a FancyOStream is used the correct prefixes this method will label the processors as well. This can print out an extreme amount of information so it is only useful for debugging.

Definition at line 164 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ buildGhostedFieldReducedVector()

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP< Tpetra::Vector< int, int, GlobalOrdinalT, Node > > panzer::buildGhostedFieldReducedVector ( const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi)

Construct a vector that contains a reduced set of field numbers. The ordering is based on the ordering from ugi.getOwnedAndGhostedIndices(). The term "reduced" means that this processor must be able to fully determine the field number for each global number. There are some cases where processors are split across element blocks with differing fields that this is nontrivial.

Parameters
[in]ugiGlobal indexer to use.
Returns
Reduced vector containing the field numbers.
Note
The description and use of this function are equally confusing...

Definition at line 200 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ buildGhostedFieldVector() [1/4]

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, Node > > panzer::buildGhostedFieldVector ( const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi,
const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, Node > > &  reducedVec = Teuchos::null 
)

This function builds a vector that defines fields for each global unknown. Notice that requires global communication and uses (underneath) the Tpetra vector hence the required node type template parameter.

This function returns a vector that serves as a map between Global indices ordered from ugi.getOwnedAndGhostedIndices() and the corresponding field number.

Parameters
[in]ugiUnique global indexer object that defines the ordering, global ids and field numbers.
[in]reducedVecReduced field vector to use. If none is passed it is compute by buildGhostedFieldReducedVector

Definition at line 270 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ buildGhostedFieldVector() [2/4]

template<typename LocalOrdinalT , typename GlobalOrdinalT >
Teuchos::RCP<const Tpetra::Vector<int,int,GlobalOrdinalT,panzer::TpetraNodeType> > panzer::buildGhostedFieldVector ( const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi,
const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, panzer::TpetraNodeType > > &  reducedVec = Teuchos::null 
)

Convenience function default to the basic Kokkos node type.

Definition at line 178 of file Panzer_UniqueGlobalIndexer_Utilities.hpp.

◆ buildGhostedFieldVector() [3/4]

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
void panzer::buildGhostedFieldVector ( const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi,
std::vector< int > &  fieldNumbers,
const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, Node > > &  reducedVec = Teuchos::null 
)

This function builds a vector that defines fields for each global unknown. Notice that requires global communication and uses (underneath) the Tpetra vector hence the required node type template parameter.

This function returns a vector that serves as a map between Global indices ordered from ugi.getOwnedAndGhostedIndices() and the corresponding field number.

Parameters
[in]ugiUnique global indexer object that defines the ordering, global ids and field numbers.
[out]fieldNumbersField numbers ordered to match up with a call to ugi.getOwnedAndGhostedIndices(). Meaning that fieldNumbers.size() is the same length as the vector build by a call to getOwnedAndGhostedIndices().
[in]reducedVecReduced field vector to use. If none is passed it is compute by buildGhostedFieldReducedVector

Definition at line 256 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ buildGhostedFieldVector() [4/4]

template<typename LocalOrdinalT , typename GlobalOrdinalT >
void panzer::buildGhostedFieldVector ( const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi,
std::vector< int > &  fieldNumbers,
const Teuchos::RCP< const Tpetra::Vector< int, int, GlobalOrdinalT, panzer::TpetraNodeType > > &  reducedVec = Teuchos::null 
)

Convenience function default to the basic Kokkos node type.

Definition at line 203 of file Panzer_UniqueGlobalIndexer_Utilities.hpp.

◆ updateGhostedDataReducedVector()

template<typename ScalarT , typename ArrayT , typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
void panzer::updateGhostedDataReducedVector ( const std::string &  fieldName,
const std::string  blockId,
const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > &  ugi,
const ArrayT &  data,
Tpetra::MultiVector< ScalarT, int, GlobalOrdinalT, Node > &  dataVector 
)

Build a reduced data vector using the reduced field vector. Here reduced is meant in the exact same context as for the field vectors.

Parameters
[in]fieldNameName of field data should be ordered as
[in]ugiUnique global indexer object that defines the ordering, global ids and field numbers.
[in]reducedFieldVecA reduced vector containing the correctly ordered field numbers. Likely computed by buildGhostedFieldReducedVector.
[in]dataData to put in vector
[out]ATpetra vector containing the data in the reduced format. This is now available for an import to construct the true ghosted data vector. This map must match the reducedFieldVec map.

Definition at line 307 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

◆ getFieldMap()

template<typename GlobalOrdinalT , typename Node >
Teuchos::RCP< const Tpetra::Map< int, GlobalOrdinalT, Node > > panzer::getFieldMap ( int  fieldNum,
const Tpetra::Vector< int, int, GlobalOrdinalT, Node > &  fieldTVector 
)

Construct a map that only uses a certain field.

Parameters
[in]fieldNumField ID to use to build the map
[in]fieldVectorAn listing of the fields. For instance [0,1,2,0,1,2,0,1,2...] for a three dimensional interlaced vector field.
Returns
A vector that contains the indices of the field requested. Again for the three dimensional vector field if fieldNum==1, it would be [1,4,7,10,13,...].

Construct a map that only uses a certain field.

Definition at line 366 of file Panzer_UniqueGlobalIndexer_Utilities_impl.hpp.

Variable Documentation

◆ basis

Teuchos::RCP< const panzer::PureBasis > panzer::basis

Interpolates basis DOF values to IP DOF values.

Definition at line 61 of file Panzer_BasisValues_Evaluator_decl.hpp.

◆ basisValues

Teuchos::RCP<BasisValues2<ScalarT> > panzer::basisValues

Definition at line 64 of file Panzer_BasisValues_Evaluator_decl.hpp.

◆ pointValues

PointValues2< ScalarT, PHX::MDField > panzer::pointValues

Interpolates basis DOF values to IP DOF values.

Definition at line 65 of file Panzer_BasisValues_Evaluator_decl.hpp.

◆ orientation

PHX::MDField<ScalarT,panzer::Cell,panzer::BASIS> panzer::orientation

Definition at line 67 of file Panzer_BasisValues_Evaluator_decl.hpp.

◆ derivativesRequired_

bool panzer::derivativesRequired_

Definition at line 69 of file Panzer_BasisValues_Evaluator_decl.hpp.

◆ average

PHX::MDField<ScalarT,Cell> panzer::average

This integrates a scalar quanity over each cell. It is useful for comptuing integral responses.

  <ParameterList>
    <Parameter name="Average Name" type="string" value="<Name to give to the average field>"/>
    <Parameter name="Field Name" type="string" value="<Name of field to find average of>"/>
    <Parameter name="IR" type="RCP<IntegrationRule>" value="<user specified IntegrationRule>"/>
    <Parameter name="Multiplier" type="double" value="<Scaling factor, default=1>"/>
    <Parameter name="Field Multipliers" type="RCP<const vector<string> >" value="<Other scalar multiplier fields>"/>
  </ParameterList>

Definition at line 71 of file Panzer_CellAverage.hpp.

◆ scalar

PHX::MDField< ScalarT, Cell, IP > panzer::scalar

Definition at line 73 of file Panzer_CellAverage.hpp.

◆ field_multipliers

std::vector< PHX::MDField< ScalarT, Cell, IP > > panzer::field_multipliers

Definition at line 75 of file Panzer_CellAverage.hpp.

◆ multiplier

double panzer::multiplier

Definition at line 76 of file Panzer_CellAverage.hpp.

◆ num_qp

std::size_t panzer::num_qp

Definition at line 78 of file Panzer_CellAverage.hpp.

◆ quad_index

int panzer::quad_index

Definition at line 79 of file Panzer_CellAverage.hpp.

◆ quad_order

int panzer::quad_order

Definition at line 80 of file Panzer_CellAverage.hpp.

◆ extreme

PHX::MDField<ScalarT> panzer::extreme

This integrates a scalar quanity over each cell. It is useful for comptuing integral responses.

  <ParameterList>
    <Parameter name="Extreme Name" type="string" value="<Name to give to the extreme field>"/>
    <Parameter name="Field Name" type="string" value="<Name of field to find extreme of>"/>
    <Parameter name="IR" type="RCP<IntegrationRule>" value="<user specified IntegrationRule>"/>
    <Parameter name="Use Max" type="bool" value="<Compute maximum (true - default) or minimum (false)>"/>
    <Parameter name="Multiplier" type="double" value="<Scaling factor, default=1>"/>
    <Parameter name="Field Multipliers" type="RCP<const vector<string> >" value="<Other scalar multiplier fields>"/>
  </ParameterList>

Definition at line 72 of file Panzer_CellExtreme.hpp.

◆ use_max

bool panzer::use_max

Definition at line 83 of file Panzer_CellExtreme.hpp.

◆ value

PHX::MDField< ScalarT > panzer::value

Build a constant Phalanx field using a specified data layout

<ParameterList>
   <Parameter name="Name" type="string" value=(required)/>
   <Parameter name="Value" type="double" value="(required)"/>
   <Parameter name="Data Layout" type="RCP<PHX::DataLayout>" value=(required)/>
</ParameterList>

Definition at line 67 of file Panzer_Constant_decl.hpp.

◆ constant

PHX::MDField<ScalarT> panzer::constant

Definition at line 69 of file Panzer_Constant_decl.hpp.

◆ values

PHX::MDField< const ScalarT > panzer::values

Definition at line 57 of file Panzer_ConstantFlux_decl.hpp.

◆ flux

PHX::MDField< ScalarT > panzer::flux

Definition at line 59 of file Panzer_ConstantFlux_decl.hpp.

◆ vals

ScalarT panzer::vals[3]

Definition at line 57 of file Panzer_ConstantVector.hpp.

◆ vector

PHX::MDField<ScalarT> panzer::vector

Definition at line 59 of file Panzer_ConstantVector.hpp.

◆ dimension

int panzer::dimension

Definition at line 57 of file Panzer_CoordinatesEvaluator.hpp.

◆ coordinate

PHX::MDField<ScalarT,Cell,BASIS> panzer::coordinate

Definition at line 59 of file Panzer_CoordinatesEvaluator.hpp.

◆ input

PHX::MDField<const ScalarT> panzer::input

Copies the contents of one field to anouther with a different name. This basically allows easy renaming of fields. The constructor takes a parameter list of the form

<ParameterList>
  <Parameter name="Source Name" type="string" value="<Input Field Name>"/>
  <Parameter name="Destination Name" type="string" value="<Output Field Name>"/>
  <Parameter name="Data Layout" type="RCP<PHX::DataLayout>" value="<Pointer to data layout describing input and output fields>"/>
<ParameterList/>

Definition at line 66 of file Panzer_Copy_decl.hpp.

◆ output

PHX::MDField<ScalarT> panzer::output

Definition at line 67 of file Panzer_Copy_decl.hpp.

◆ vec_a_cross_vec_b

PHX::MDField<ScalarT> panzer::vec_a_cross_vec_b

Evaluates cross product at a set of points.

v_a v_b

<Parameter name="Result Name" type="string" value="<Name to give to cross product field>"> <Parameter name="Point Rule" type="RCP<const PointRule>" value="<user specified point rule>"> <Parameter name="Vector A Name" type="string" value="<vector a name>"> <Parameter name="Vector B Name" type="string" value="<vector b name>">

Definition at line 64 of file Panzer_CrossProduct.hpp.

◆ vec_a

PHX::MDField< const ScalarT > panzer::vec_a

Definition at line 65 of file Panzer_CrossProduct.hpp.

◆ vec_b

PHX::MDField< const ScalarT > panzer::vec_b

Definition at line 65 of file Panzer_CrossProduct.hpp.

◆ useScalarField

bool panzer::useScalarField

Definition at line 67 of file Panzer_CrossProduct.hpp.

◆ num_pts

int panzer::num_pts

Definition at line 69 of file Panzer_CrossProduct.hpp.

◆ num_dim

std::size_t panzer::num_dim

Definition at line 70 of file Panzer_CrossProduct.hpp.

◆ residual

PHX::MDField< ScalarT > panzer::residual

Evaluates a Dirichlet BC residual corresponding to a field value.

Evaluates a Weak Dirichlet BC residual contribution.

Evaluates a Neumann BC residual contribution.

Evaluates an interface BC residual contribution.

Evaluates a Dirichlet BC residual corresponding to a field value at a set of points defined by a point rule. Note that this assumes a vector basis is used.

Computes the integral

\[ \int s(x) \phi(x) \, d x \]

where $\phi$is the test function and $s$ is the scalar quantity. The parameter list passed into the construction is formatted as follows

<ParameterList>
   <Parameter name="Residual Name" type="string" value=(required)/>
   <Parameter name="Value Name" type="string" value="(required)"/>
   <Parameter name="Basis" type="RCP<BasisIRLayout>" value=(required)/>
   <Parameter name="IR" type="RCP<IntegrationRule>" value="(required)"/>
   <Parameter name="Multiplier" type="double" value="(required)"/>
   <Parameter name="Field Multipliers" type="RCP<const std::vector>" value=Null (default)/>
</ParameterList>

In 3D this computes

$\int \nabla\times \phi \cdot v $

however the name can be misleading. The curl of a vector in 2D is simply a scalar, here the evaluators handles both cases.

This computes

$\int \nabla\cdot \phi v $

where $\phi$ is a vector HDIV basis.

computes the surface integral term resulting from integration by parts for a particular dof:

int(n (flux * phi) )

computes the surface integral term resulting from integration by parts for a particular dof:

int(n flux * phi) + int( (u-g) * phi)

Definition at line 56 of file Panzer_Dirichlet_Residual_decl.hpp.

◆ dof

PHX::MDField< ScalarT > panzer::dof

Definition at line 57 of file Panzer_Dirichlet_Residual_decl.hpp.

◆ cell_data_size

std::size_t panzer::cell_data_size

Definition at line 60 of file Panzer_Dirichlet_Residual_decl.hpp.

◆ dof_orientation

PHX::MDField< ScalarT, Cell, BASIS > panzer::dof_orientation

Definition at line 72 of file Panzer_Dirichlet_Residual_EdgeBasis.hpp.

◆ pointRule

Teuchos::RCP< const panzer::PointRule > panzer::pointRule

Definition at line 77 of file Panzer_Dirichlet_Residual_EdgeBasis.hpp.

◆ edgeTan

Kokkos::DynRankView<ScalarT,PHX::Device> panzer::edgeTan

Definition at line 78 of file Panzer_Dirichlet_Residual_EdgeBasis.hpp.

◆ refEdgeTan

Kokkos::DynRankView<ScalarT,PHX::Device> panzer::refEdgeTan

Definition at line 79 of file Panzer_Dirichlet_Residual_EdgeBasis.hpp.

◆ faceNormal

Kokkos::DynRankView<ScalarT,PHX::Device> panzer::faceNormal

Definition at line 78 of file Panzer_Dirichlet_Residual_FaceBasis.hpp.

◆ refFaceNormal

Kokkos::DynRankView<ScalarT,PHX::Device> panzer::refFaceNormal

Definition at line 79 of file Panzer_Dirichlet_Residual_FaceBasis.hpp.

◆ dof_value

PHX::MDField<ScalarT,Cell,Point> panzer::dof_value

Interpolates basis DOF values to IP DOF Gradient values.

Definition at line 57 of file Panzer_DOFGradient_decl.hpp.

◆ dof_gradient

PHX::MDField<ScalarT> panzer::dof_gradient

Definition at line 59 of file Panzer_DOFGradient_decl.hpp.

◆ basis_name

std::string panzer::basis_name

Definition at line 61 of file Panzer_DOFGradient_decl.hpp.

◆ basis_index

std::size_t panzer::basis_index

Definition at line 62 of file Panzer_DOFGradient_decl.hpp.

◆ vec_a_dot_vec_b

PHX::MDField<ScalarT> panzer::vec_a_dot_vec_b

Evaluates dot product at a set of points.

v_a v_b

<Parameter name="Result Name" type="string" value="<Name to give to dot product field>"> <Parameter name="Point Rule" type="RCP<const PointRule>" value="<user specified point rule>"> <Parameter name="Vector A Name" type="string" value="<vector a name>"> <Parameter name="Vector B Name" type="string" value="<vector b name>"> <Parameter name="Multiplier" type="double" value="Multiplier value"> <Parameter name="Field Multiplier" type="string" value="Multiplier name">

Definition at line 66 of file Panzer_DotProduct_decl.hpp.

◆ multiplier_field

PHX::MDField<const ScalarT> panzer::multiplier_field

Definition at line 68 of file Panzer_DotProduct_decl.hpp.

◆ multiplier_field_on

bool panzer::multiplier_field_on

Definition at line 73 of file Panzer_DotProduct_decl.hpp.

◆ multiplier_value

double panzer::multiplier_value

Definition at line 74 of file Panzer_DotProduct_decl.hpp.

◆ volumes

PHX::MDField<ScalarT,Cell> panzer::volumes

Definition at line 58 of file Panzer_GlobalStatistics_decl.hpp.

◆ tmp

Kokkos::DynRankView< ScalarT, PHX::Device > panzer::tmp

Definition at line 64 of file Panzer_GlobalStatistics_decl.hpp.

◆ ones

PHX::MDField<ScalarT,Cell,IP> panzer::ones

Definition at line 66 of file Panzer_GlobalStatistics_decl.hpp.

◆ field_values

std::vector<PHX::MDField<ScalarT,Cell,IP> > panzer::field_values

Definition at line 68 of file Panzer_GlobalStatistics_decl.hpp.

◆ total_volume

ScalarT panzer::total_volume

Definition at line 70 of file Panzer_GlobalStatistics_decl.hpp.

◆ averages

std::vector<ScalarT> panzer::averages

Definition at line 71 of file Panzer_GlobalStatistics_decl.hpp.

◆ maxs

std::vector<ScalarT> panzer::maxs

Definition at line 72 of file Panzer_GlobalStatistics_decl.hpp.

◆ mins

std::vector<ScalarT> panzer::mins

Definition at line 73 of file Panzer_GlobalStatistics_decl.hpp.

◆ global_total_volume

ScalarT panzer::global_total_volume

Definition at line 74 of file Panzer_GlobalStatistics_decl.hpp.

◆ global_averages

std::vector<ScalarT> panzer::global_averages

Definition at line 75 of file Panzer_GlobalStatistics_decl.hpp.

◆ global_maxs

std::vector<ScalarT> panzer::global_maxs

Definition at line 76 of file Panzer_GlobalStatistics_decl.hpp.

◆ global_mins

std::vector<ScalarT> panzer::global_mins

Definition at line 77 of file Panzer_GlobalStatistics_decl.hpp.

◆ ir_order

int panzer::ir_order

Definition at line 79 of file Panzer_GlobalStatistics_decl.hpp.

◆ ir_index

std::size_t panzer::ir_index

Definition at line 80 of file Panzer_GlobalStatistics_decl.hpp.

◆ comm

Teuchos::RCP<const Teuchos::Comm<int> > panzer::comm

Definition at line 82 of file Panzer_GlobalStatistics_decl.hpp.

◆ global_data

Teuchos::RCP<panzer::GlobalData> panzer::global_data

Definition at line 84 of file Panzer_GlobalStatistics_decl.hpp.

◆ num_nodes

std::size_t panzer::num_nodes

Definition at line 82 of file Panzer_Integrator_BasisTimesScalar_decl.hpp.

◆ vectorField

PHX::MDField<ScalarT,Cell,IP,Dim> panzer::vectorField

Definition at line 60 of file Panzer_Integrator_BasisTimesVector_decl.hpp.

◆ kokkos_field_multipliers

Kokkos::View<Kokkos::View<ScalarT** >* > panzer::kokkos_field_multipliers

Definition at line 65 of file Panzer_Integrator_BasisTimesVector_decl.hpp.

◆ basis_card

std::size_t panzer::basis_card

Definition at line 67 of file Panzer_Integrator_BasisTimesVector_decl.hpp.

◆ weighted_basis_vector

PHX::MDField<double,Cell,BASIS,IP,Dim> panzer::weighted_basis_vector
private

Definition at line 90 of file Panzer_Integrator_BasisTimesVector_decl.hpp.

◆ flux_scalar

PHX::MDField<const ScalarT,Cell,IP> panzer::flux_scalar

◆ flux_vector

PHX::MDField<const ScalarT,Cell,IP,Dim> panzer::flux_vector

◆ scratch_scalar

PHX::MDField<ScalarT,Cell,IP> panzer::scratch_scalar

◆ scratch_vector

PHX::MDField<ScalarT,Cell,IP,Dim> panzer::scratch_vector

◆ _residuals

std::vector< PHX::MDField< ScalarT, Cell, BASIS > > panzer::_residuals

◆ _vector

PHX::MDField<const ScalarT,Cell,IP,Dim> panzer::_vector

◆ _field_multipliers

std::vector< PHX::MDField< const ScalarT, Cell, IP > > panzer::_field_multipliers

◆ _num_basis_nodes

std::size_t panzer::_num_basis_nodes

◆ _num_quadrature_points

std::size_t panzer::_num_quadrature_points

◆ _num_dims

std::size_t panzer::_num_dims

◆ _num_grad_dims

std::size_t panzer::_num_grad_dims

◆ _multiplier

ScalarT panzer::_multiplier

◆ _basis_name

std::string panzer::_basis_name

◆ _basis_index

std::size_t panzer::_basis_index

◆ _tmp

Kokkos::DynRankView< ScalarT, PHX::Device > panzer::_tmp

◆ _scalar

PHX::MDField<const ScalarT,Cell,IP> panzer::_scalar

◆ integral

PHX::MDField<ScalarT> panzer::integral

This integrates a scalar quanity over each cell. It is useful for comptuing integral responses.

  <ParameterList>
    <Parameter name="Integral Name" type="string" value="<Name to give to the integral field>"/>
    <Parameter name="Integrand Name" type="string" value="<Name of integrand>"/>
    <Parameter name="IR" type="RCP<IntegrationRule>" value="<user specified IntegrationRule>"/>
    <Parameter name="Multiplier" type="double" value="<Scaling factor, default=1>"/>
    <Parameter name="Field Multipliers" type="RCP<const vector<string> >" value="<Other scalar multiplier fields>"/>
  </ParameterList>

Definition at line 71 of file Panzer_Integrator_Scalar_decl.hpp.

◆ normal_dot_flux

PHX::MDField< ScalarT > panzer::normal_dot_flux

Definition at line 63 of file Panzer_Interface_Residual_decl.hpp.

◆ normal

PHX::MDField< ScalarT > panzer::normal

Definition at line 65 of file Panzer_Interface_Residual_decl.hpp.

◆ num_ip

std::size_t panzer::num_ip

Definition at line 69 of file Panzer_Interface_Residual_decl.hpp.

◆ side_id

int panzer::side_id

Compute normals on a particular side of an element. By default the normals are normalized. A second option would be for the normals to be unormalized values.

<ParameterList name="Name" type="string" value="<Name to give to the normals field>"> <ParameterList name="Side Id" type="int" value="<side id to use for computing normals>"> <ParameterList name="IR" type="RCP<IntegrationRule>" value="<user specified IntegrationRule>"> <ParameterList name="Normalize" type="bool" value="true">

The Name used to define the normals field is specified by "Name" and the data layout is defined by the dl_vector field in the IntegrationRule. The side ID must be legitimate for this topology and will be used to construct an outward facing normal. The normals will be normalized by default. However, if Normalize=false then the resulting normals will have the determinant of the side jacobian built in thus they correspond to a differential on the side.

Definition at line 73 of file Panzer_Normals_decl.hpp.

◆ normals

PHX::MDField<ScalarT,Cell,Point,Dim> panzer::normals

Definition at line 78 of file Panzer_Normals_decl.hpp.

◆ normalize

bool panzer::normalize

Definition at line 79 of file Panzer_Normals_decl.hpp.

◆ refPointArray

Kokkos::DynRankView<double,PHX::Device> panzer::refPointArray

Definition at line 62 of file Panzer_PointValues_Evaluator_decl.hpp.

◆ useBasisValuesRefArray

bool panzer::useBasisValuesRefArray

Definition at line 64 of file Panzer_PointValues_Evaluator_decl.hpp.

◆ scaling

double panzer::scaling

Product of entries on a single data layout

<ParameterList>
  <ParameterList name="Product Name" type="string" value="<destination field name>"/>
  <ParameterList name="Values Names" type="Teuchos::RCP<std::vector<std::string> >" value="<Source field names>"/>
  <ParameterList name="Data Layout" type="Teuchos::RCP<PHX::DataLayout>" value="<data layout of all associated fields>"/>
  <ParameterList name="Scaling" type="double" value="<data of the scaling>/> <!-- Optional -->
</ParameterList>

Definition at line 66 of file Panzer_Product_decl.hpp.

◆ product

PHX::MDField<ScalarT> panzer::product

Definition at line 67 of file Panzer_Product_decl.hpp.

◆ scalar_fields

std::vector< PHX::MDField< ScalarT, Cell, Point > > panzer::scalar_fields

Interpolates basis DOF values to IP DOF values.

Definition at line 56 of file Panzer_ScalarToVector_decl.hpp.

◆ vector_field

PHX::MDField< ScalarT, Cell, Point, Dim > panzer::vector_field

Definition at line 57 of file Panzer_ScalarToVector_decl.hpp.

◆ internal_scalar_fields

Kokkos::View<KokkosScalarFields_t*> panzer::internal_scalar_fields
protected

Definition at line 61 of file Panzer_ScalarToVector_decl.hpp.

◆ outField

PHX::MDField<ScalarT,Cell> panzer::outField

This performs a sum over all the fields limited to the subcell specified in the workset. It is useful for computing high-order surface integrals as responses.

The field specified with "Sum Name" will be dimensioned as the number of cells in the workset. The "Field Name" object is dimension as the number of cells by the number of basis functions specified by the "Basis" object. The "Evaluate On Closure" indicates if the subcells are to use the closure index (i.e. all subcells of lesser dimension contained within a subcell) or simply sum on those fields on the subcell proper.

  <ParameterList>
    <Parameter name="Sum Name" type="string" value="<Name to give to the summed field>"/>
    <Parameter name="Field Name" type="string" value="<Name of field to sum>"/>
    <Parameter name="Basis" type="RCP<const PureBasis>" value="<user specified PureBasis object>"/>
    <Parameter name="Multiplier" type="double" value="<Scaling factor, default=1>"/>
    <Parameter name="Evaluate On Closure" type="bool" value="false"/>
  </ParameterList>

Definition at line 82 of file Panzer_SubcellSum_decl.hpp.

◆ inField

PHX::MDField<ScalarT,Cell,BASIS> panzer::inField

Definition at line 84 of file Panzer_SubcellSum_decl.hpp.

◆ fieldPattern_

Teuchos::RCP<const panzer::FieldPattern> panzer::fieldPattern_
private

Definition at line 97 of file Panzer_SubcellSum_decl.hpp.

◆ evaluateOnClosure_

bool panzer::evaluateOnClosure_
private

Definition at line 100 of file Panzer_SubcellSum_decl.hpp.

◆ MAX_VALUES

const int panzer::MAX_VALUES =20
static

Sums entries on a single data layout

<ParameterList>
  <ParameterList name="Sum Name" type="string" value="<destination field name>"/>
  <ParameterList name="Values Names" type="Teuchos::RCP<std::vector<std::string> >" value="<Source field names>"/>
  <ParameterList name="Scalars" type="Teuchos::RCP<const std::vector<double> >" value="<scalar values>"/>
  <ParameterList name="Data Layout" type="Teuchos::RCP<PHX::DataLayout>" value="<data layout of all associated fields>"/>
</ParameterList>

Definition at line 67 of file Panzer_Sum_decl.hpp.

◆ sum

PHX::MDField<ScalarT> panzer::sum

Definition at line 69 of file Panzer_Sum_decl.hpp.

◆ scalars

Kokkos::View<const double *,PHX::Device> panzer::scalars

Definition at line 73 of file Panzer_Sum_decl.hpp.

◆ tensor_field

PHX::MDField<ScalarT,Cell,Point,Dim,Dim> panzer::tensor_field

Transform at Tensor to a std::vector of PHX-vectors.

Since Phalanx/Panzer heavily relies on componentwise compuations, a tensor PHX::MDField<ScalarT,Cell,Point,Dim,Dim> is often represented by a std::vector<PHX::MDField<ScalarT,Cell,Point,Dim> >.

This class transforms a tensor to a std::vector representation.

Author
mayr.mt
Date
09/2015Tensor (to be distributed to vector)

Definition at line 67 of file Panzer_TensorToStdVector_decl.hpp.

◆ vector_fields

std::vector<PHX::MDField<ScalarT,Cell,Point,Dim> > panzer::vector_fields

Vector (to be filled)

Definition at line 70 of file Panzer_TensorToStdVector_decl.hpp.

◆ scatter_value

PHX::MDField<ScalarT,Cell,NODE> panzer::scatter_value

Definition at line 54 of file Panzer_TestScatter_decl.hpp.

◆ localOffset

int panzer::localOffset

Definition at line 56 of file Panzer_TestScatter_decl.hpp.

◆ offset

int panzer::TestScatter::offset = 0
static

Definition at line 59 of file Panzer_TestScatter_decl.hpp.

◆ normal_dot_flux_plus_pen

PHX::MDField<ScalarT> panzer::normal_dot_flux_plus_pen

Definition at line 64 of file Panzer_WeakDirichlet_Residual_decl.hpp.

◆ sigma

PHX::MDField<ScalarT> panzer::sigma

Definition at line 67 of file Panzer_WeakDirichlet_Residual_decl.hpp.