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::CellExtreme< EvalT, Traits > Class Template Reference

#include <Panzer_CellExtreme.hpp>

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

Public Member Functions

 CellExtreme (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 PHX::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< ScalarTextreme
 
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
 
bool use_max
 

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

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 71 of file Panzer_CellExtreme.hpp.

Member Typedef Documentation

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

Definition at line 92 of file Panzer_CellExtreme.hpp.

Constructor & Destructor Documentation

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

Definition at line 58 of file Panzer_CellExtreme_impl.hpp.

Member Function Documentation

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

Definition at line 107 of file Panzer_CellExtreme_impl.hpp.

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

Definition at line 119 of file Panzer_CellExtreme_impl.hpp.

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

Definition at line 109 of file Panzer_CellExtreme.hpp.

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

Definition at line 146 of file Panzer_CellExtreme_impl.hpp.

Member Data Documentation

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT> panzer::CellExtreme< EvalT, Traits >::extreme
private

Definition at line 94 of file Panzer_CellExtreme.hpp.

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

Definition at line 96 of file Panzer_CellExtreme.hpp.

template<typename EvalT , typename Traits >
std::vector<PHX::MDField<const ScalarT,Cell,IP> > panzer::CellExtreme< EvalT, Traits >::field_multipliers
private

Definition at line 98 of file Panzer_CellExtreme.hpp.

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

Definition at line 99 of file Panzer_CellExtreme.hpp.

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

Definition at line 101 of file Panzer_CellExtreme.hpp.

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

Definition at line 102 of file Panzer_CellExtreme.hpp.

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

Definition at line 103 of file Panzer_CellExtreme.hpp.

template<typename EvalT , typename Traits >
bool panzer::CellExtreme< EvalT, Traits >::use_max
private

Definition at line 105 of file Panzer_CellExtreme.hpp.


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