Panzer Version of the Day
Loading...
Searching...
No Matches
Classes | Public Member Functions | Private Types | Private Attributes | Static Private Attributes | List of all members
panzer::Sum< EvalT, Traits > Class Template Reference

#include <Panzer_Sum.hpp>

Inheritance diagram for panzer::Sum< EvalT, Traits >:
Inheritance graph
[legend]

Classes

struct  PanzerSumTag
 

Public Member Functions

 Sum (const Teuchos::ParameterList &p)
 
void postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &fm)
 
void evaluateFields (typename Traits::EvalData d)
 
template<unsigned int RANK>
KOKKOS_INLINE_FUNCTION void operator() (PanzerSumTag< RANK >, const int &i) const
 
- Public Member Functions inherited from panzer::EvaluatorWithBaseImpl< Traits >
void setDetailsIndex (const int di)
 An evaluator builder sets the details index.
 
- Public Member Functions inherited from panzer::DomainEvaluator
 DomainEvaluator (DomainType domain=ALL)
 Constructor.
 
virtual ~DomainEvaluator ()=default
 Default destructor.
 
void setDomain (const DomainType domain)
 Set the domain for the evaluator.
 
DomainType getDomain ()
 Get the domain for the evaluator.
 
virtual int cellStartIndex (const panzer::Workset &workset) const
 Returns the starting cell for the specified domain for a given workset.
 
virtual int cellEndIndex (const panzer::Workset &workset) const
 Returns the non-inclusive end cell for the specified domain for a given workset.
 

Private Types

using ScalarT = typename EvalT::ScalarT
 

Private Attributes

PHX::MDField< ScalarTsum
 
PHX::MDField< const ScalarTvalues [MAX_VALUES]
 
PHX::View< const double * > scalars
 
std::size_t cell_data_size
 

Static Private Attributes

static const int MAX_VALUES =20
 

Additional Inherited Members

- Public Types inherited from panzer::DomainEvaluator
enum  DomainType : int {
  OWNED =0 , GHOST =1 , REAL =2 , VIRTUAL =3 ,
  EXTERNAL =4 , ALL =5
}
 Domain types supported by worksets. More...
 
- Protected Attributes inherited from panzer::EvaluatorWithBaseImpl< Traits >
WorksetDetailsAccessor wda
 

Detailed Description

template<typename EvalT, typename Traits>
class panzer::Sum< EvalT, Traits >

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.hpp.

Member Typedef Documentation

◆ ScalarT

template<typename EvalT , typename Traits >
using panzer::Sum< EvalT, Traits >::ScalarT = typename EvalT::ScalarT
private

Definition at line 88 of file Panzer_Sum.hpp.

Constructor & Destructor Documentation

◆ Sum()

template<typename EvalT , typename Traits >
panzer::Sum< EvalT, Traits >::Sum ( const Teuchos::ParameterList & p)

Definition at line 54 of file Panzer_Sum_impl.hpp.

Member Function Documentation

◆ postRegistrationSetup()

template<typename EvalT , typename Traits >
void panzer::Sum< EvalT, Traits >::postRegistrationSetup ( typename Traits::SetupData d,
PHX::FieldManager< Traits > & fm )

Definition at line 109 of file Panzer_Sum_impl.hpp.

◆ evaluateFields()

template<typename EvalT , typename Traits >
void panzer::Sum< EvalT, Traits >::evaluateFields ( typename Traits::EvalData d)

Definition at line 181 of file Panzer_Sum_impl.hpp.

◆ operator()()

template<typename EvalT , typename TRAITS >
template<unsigned int RANK>
KOKKOS_INLINE_FUNCTION void panzer::Sum< EvalT, TRAITS >::operator() ( PanzerSumTag< RANK > ,
const int & i ) const

Definition at line 122 of file Panzer_Sum_impl.hpp.

Member Data Documentation

◆ MAX_VALUES

template<typename EvalT , typename Traits >
const int panzer::Sum< EvalT, Traits >::MAX_VALUES =20
staticprivate

Definition at line 89 of file Panzer_Sum.hpp.

◆ sum

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT> panzer::Sum< EvalT, Traits >::sum
private

Definition at line 91 of file Panzer_Sum.hpp.

◆ values

template<typename EvalT , typename Traits >
PHX::MDField<const ScalarT> panzer::Sum< EvalT, Traits >::values[MAX_VALUES]
private

Definition at line 94 of file Panzer_Sum.hpp.

◆ scalars

template<typename EvalT , typename Traits >
PHX::View<const double *> panzer::Sum< EvalT, Traits >::scalars
private

Definition at line 95 of file Panzer_Sum.hpp.

◆ cell_data_size

template<typename EvalT , typename Traits >
std::size_t panzer::Sum< EvalT, Traits >::cell_data_size
private

Definition at line 97 of file Panzer_Sum.hpp.


The documentation for this class was generated from the following files: