Panzer Version of the Day
Loading...
Searching...
No Matches
Classes | Public Member Functions | Private Types | Private Attributes | List of all members
panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void > Class Template Reference

#include <Panzer_Sum.hpp>

Inheritance diagram for panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >:
Inheritance graph
[legend]

Classes

struct  NoScalarsTag
 
struct  ScalarsTag
 

Public Member Functions

 SumStatic (const Teuchos::ParameterList &p)
 
 SumStatic (const std::vector< PHX::Tag< typename EvalT::ScalarT > > &inputs, const std::vector< double > &scalar_values, const PHX::Tag< typename EvalT::ScalarT > &output)
 Tag only Constructor.
 
void postRegistrationSetup (typename TRAITS::SetupData d, PHX::FieldManager< TRAITS > &fm)
 
void evaluateFields (typename TRAITS::EvalData d)
 
KOKKOS_INLINE_FUNCTION void operator() (const ScalarsTag, const unsigned c) const
 
KOKKOS_INLINE_FUNCTION void operator() (const NoScalarsTag, const unsigned c) 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

enum  { MAX_VALUES =20 }
 
typedef EvalT::ScalarT ScalarT
 

Private Attributes

PHX::MDField< ScalarT, Tag0, Tag1 > sum
 
std::vector< PHX::MDField< const ScalarT, Tag0, Tag1 > > values
 
bool useScalars
 
PHX::MDField< const ScalarT, Tag0, Tag1 > current_value
 
PHX::View< const ScalarT ** > value_views [MAX_VALUES]
 
PHX::View< const double * > scalars
 
int numValues
 

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, typename Tag0, typename Tag1>
class panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >

Definition at line 137 of file Panzer_Sum.hpp.

Member Typedef Documentation

◆ ScalarT

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
typedef EvalT::ScalarT panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::ScalarT
private

Definition at line 168 of file Panzer_Sum.hpp.

Member Enumeration Documentation

◆ anonymous enum

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
anonymous enum
private
Enumerator
MAX_VALUES 

Definition at line 176 of file Panzer_Sum.hpp.

Constructor & Destructor Documentation

◆ SumStatic() [1/2]

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::SumStatic ( const Teuchos::ParameterList & p)

Definition at line 266 of file Panzer_Sum_impl.hpp.

◆ SumStatic() [2/2]

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::SumStatic ( const std::vector< PHX::Tag< typename EvalT::ScalarT > > & inputs,
const std::vector< double > & scalar_values,
const PHX::Tag< typename EvalT::ScalarT > & output )

Tag only Constructor.

Perform a linear combination of fields using only input tags and double vectors.

Parameters
[in]inputsTags associated with rank 2 arrays to be summed
[in]scalar_valuesVector of length inputs.size() or zero. If the length is equal to inputs.size() each entry is scaled. Otherwise 1.0 is assumed.
[in]outputDestination array tag for the summation.

Definition at line 317 of file Panzer_Sum_impl.hpp.

Member Function Documentation

◆ postRegistrationSetup()

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
void panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::postRegistrationSetup ( typename TRAITS::SetupData d,
PHX::FieldManager< TRAITS > & fm )

Definition at line 360 of file Panzer_Sum_impl.hpp.

◆ evaluateFields()

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
void panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::evaluateFields ( typename TRAITS::EvalData d)

Definition at line 371 of file Panzer_Sum_impl.hpp.

◆ operator()() [1/2]

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
KOKKOS_INLINE_FUNCTION void panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::operator() ( const ScalarsTag ,
const unsigned c ) const

Definition at line 387 of file Panzer_Sum_impl.hpp.

◆ operator()() [2/2]

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
KOKKOS_INLINE_FUNCTION void panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::operator() ( const NoScalarsTag ,
const unsigned c ) const

Definition at line 400 of file Panzer_Sum_impl.hpp.

Member Data Documentation

◆ sum

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
PHX::MDField<ScalarT,Tag0,Tag1> panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::sum
private

Definition at line 170 of file Panzer_Sum.hpp.

◆ values

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
std::vector< PHX::MDField<const ScalarT,Tag0,Tag1> > panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::values
private

Definition at line 171 of file Panzer_Sum.hpp.

◆ useScalars

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
bool panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::useScalars
private

Definition at line 172 of file Panzer_Sum.hpp.

◆ current_value

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
PHX::MDField<const ScalarT,Tag0,Tag1> panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::current_value
private

Definition at line 177 of file Panzer_Sum.hpp.

◆ value_views

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
PHX::View<const ScalarT**> panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::value_views[MAX_VALUES]
private

Definition at line 178 of file Panzer_Sum.hpp.

◆ scalars

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
PHX::View<const double*> panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::scalars
private

Definition at line 179 of file Panzer_Sum.hpp.

◆ numValues

template<typename EvalT , typename TRAITS , typename Tag0 , typename Tag1 >
int panzer::SumStatic< EvalT, TRAITS, Tag0, Tag1, void >::numValues
private

Definition at line 180 of file Panzer_Sum.hpp.


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