Panzer Version of the Day
Loading...
Searching...
No Matches
panzer::CellExtreme< EvalT, Traits > Class Template Reference

#include <Panzer_CellExtreme.hpp>

Inheritance diagram for panzer::CellExtreme< EvalT, Traits >:

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::FieldTag & getFieldTag () 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 Member Functions

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

Private Attributes

PHX::MDField< ScalarTextreme
PHX::MDField< const ScalarT, Cell, IPscalar
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

◆ ScalarT

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

◆ CellExtreme()

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

Definition at line 57 of file Panzer_CellExtreme_impl.hpp.

Member Function Documentation

◆ postRegistrationSetup()

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

Definition at line 106 of file Panzer_CellExtreme_impl.hpp.

◆ evaluateFields()

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

Definition at line 118 of file Panzer_CellExtreme_impl.hpp.

◆ getFieldTag()

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

Definition at line 109 of file Panzer_CellExtreme.hpp.

◆ getValidParameters()

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

◆ extreme

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

Definition at line 94 of file Panzer_CellExtreme.hpp.

◆ scalar

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.

◆ field_multipliers

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.

◆ multiplier

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

Definition at line 99 of file Panzer_CellExtreme.hpp.

◆ num_qp

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

Definition at line 101 of file Panzer_CellExtreme.hpp.

◆ quad_index

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

Definition at line 102 of file Panzer_CellExtreme.hpp.

◆ quad_order

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

Definition at line 103 of file Panzer_CellExtreme.hpp.

◆ use_max

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: