Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
panzer::Integrator_Scalar< EvalT, Traits > Class Template Reference

#include <Panzer_Integrator_Scalar_decl.hpp>

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

Public Member Functions

 Integrator_Scalar (const Teuchos::ParameterList &p)
 
void postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &fm)
 
void evaluateFields (typename Traits::EvalData d)
 
const PHX::FieldTaggetFieldTag () const
 
- Public Member Functions inherited from panzer::EvaluatorWithBaseImpl< Traits >
void setDetailsIndex (const int di)
 An evaluator builder sets the details index. More...
 
- Public Member Functions inherited from PHX::EvaluatorWithBaseImpl< Traits >
virtual void evaluateFields (typename Traits::EvalData d) override=0
 
- Public Member Functions inherited from PHX::Evaluator< Traits >
 Evaluator ()
 
virtual ~Evaluator ()
 
virtual void postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &vm)=0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
evaluatedFields () const =0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
contributedFields () const =0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
dependentFields () const =0
 
virtual const std::vector
< Teuchos::RCP< FieldTag > > & 
unsharedFields () const =0
 
virtual void preEvaluate (typename Traits::PreEvalData d)=0
 
virtual void postEvaluate (typename Traits::PostEvalData d)=0
 
virtual const std::string & getName () const =0
 
virtual void bindField (const PHX::FieldTag &ft, const std::any &f)=0
 
virtual PHX::DeviceEvaluator
< Traits > * 
createDeviceEvaluator () const =0
 
virtual void rebuildDeviceEvaluator (PHX::DeviceEvaluator< Traits > *e) const =0
 
virtual void deleteDeviceEvaluator (PHX::DeviceEvaluator< Traits > *e) const =0
 
virtual void printFieldValues (std::ostream &os) const =0
 
- Public Member Functions inherited from panzer::DomainEvaluator
 DomainEvaluator (DomainType domain=ALL)
 Constructor. More...
 
virtual ~DomainEvaluator ()=default
 Default destructor. More...
 
void setDomain (const DomainType domain)
 Set the domain for the evaluator. More...
 
DomainType getDomain ()
 Get the domain for the evaluator. More...
 
virtual int cellStartIndex (const panzer::Workset &workset) const
 Returns the starting cell for the specified domain for a given workset. More...
 
virtual int cellEndIndex (const panzer::Workset &workset) const
 Returns the non-inclusive end cell for the specified domain for a given workset. More...
 

Private Types

using ScalarT = typename EvalT::ScalarT
 

Private Member Functions

Teuchos::RCP
< Teuchos::ParameterList
getValidParameters () const
 

Private Attributes

PHX::MDField< ScalarTintegral
 
PHX::MDField< const ScalarT,
Cell, IP
scalar
 
PHX::View< PHX::UnmanagedView
< const ScalarT ** >
* >::HostMirror 
field_multipliers_h
 
PHX::View< PHX::UnmanagedView
< const ScalarT ** > * > 
field_multipliers
 
std::size_t num_qp
 
std::size_t quad_index
 
int quad_order
 
double multiplier
 
Kokkos::DynRankView< ScalarT,
typename PHX::DevLayout
< ScalarT >::type, PHX::Device > 
tmp
 

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::Integrator_Scalar< EvalT, Traits >

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 38 of file Panzer_Integrator_Scalar_decl.hpp.

Member Typedef Documentation

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

Definition at line 59 of file Panzer_Integrator_Scalar_decl.hpp.

Constructor & Destructor Documentation

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

Definition at line 25 of file Panzer_Integrator_Scalar_impl.hpp.

Member Function Documentation

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

Definition at line 69 of file Panzer_Integrator_Scalar_impl.hpp.

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

Definition at line 85 of file Panzer_Integrator_Scalar_impl.hpp.

template<typename EvalT , typename Traits >
const PHX::FieldTag& panzer::Integrator_Scalar< EvalT, Traits >::getFieldTag ( ) const
inline

Definition at line 78 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename TRAITS >
Teuchos::RCP< Teuchos::ParameterList > panzer::Integrator_Scalar< EvalT, TRAITS >::getValidParameters ( ) const
private

Definition at line 115 of file Panzer_Integrator_Scalar_impl.hpp.

Member Data Documentation

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT> panzer::Integrator_Scalar< EvalT, Traits >::integral
private

Definition at line 61 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<const ScalarT,Cell,IP> panzer::Integrator_Scalar< EvalT, Traits >::scalar
private

Definition at line 63 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
PHX::View<PHX::UnmanagedView<const ScalarT**>* >::HostMirror panzer::Integrator_Scalar< EvalT, Traits >::field_multipliers_h
private

Definition at line 65 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
PHX::View<PHX::UnmanagedView<const ScalarT**>* > panzer::Integrator_Scalar< EvalT, Traits >::field_multipliers
private

Definition at line 66 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
std::size_t panzer::Integrator_Scalar< EvalT, Traits >::num_qp
private

Definition at line 68 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
std::size_t panzer::Integrator_Scalar< EvalT, Traits >::quad_index
private

Definition at line 69 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
int panzer::Integrator_Scalar< EvalT, Traits >::quad_order
private

Definition at line 70 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
double panzer::Integrator_Scalar< EvalT, Traits >::multiplier
private

Definition at line 72 of file Panzer_Integrator_Scalar_decl.hpp.

template<typename EvalT , typename Traits >
Kokkos::DynRankView<ScalarT,typename PHX::DevLayout<ScalarT>::type,PHX::Device> panzer::Integrator_Scalar< EvalT, Traits >::tmp
private

Definition at line 74 of file Panzer_Integrator_Scalar_decl.hpp.


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