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_stk::ScatterFields< EvalT, TraitsT > Class Template Reference

#include <Panzer_STK_ScatterFields_decl.hpp>

Inheritance diagram for panzer_stk::ScatterFields< EvalT, TraitsT >:
Inheritance graph
[legend]

Public Member Functions

 ScatterFields (const std::string &scatterName, const Teuchos::RCP< STK_Interface > mesh, const Teuchos::RCP< const panzer::PureBasis > &basis, const std::vector< std::string > &names)
 
 ScatterFields (const std::string &scatterName, const Teuchos::RCP< STK_Interface > mesh, const Teuchos::RCP< const panzer::PureBasis > &basis, const std::vector< std::string > &names, const std::vector< double > &scaling)
 
void postRegistrationSetup (typename TraitsT::SetupData d, PHX::FieldManager< TraitsT > &fm)
 
void evaluateFields (typename TraitsT::EvalData d)
 
template<>
void evaluateFields (panzer::Traits::EvalData workset)
 
- Public Member Functions inherited from panzer::EvaluatorWithBaseImpl< TraitsT >
void setDetailsIndex (const int di)
 An evaluator builder sets the details index. More...
 
- Public Member Functions inherited from PHX::EvaluatorWithBaseImpl< TraitsT >
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

typedef EvalT::ScalarT ScalarT
 
typedef
panzer_stk::STK_Interface::SolutionFieldType 
VariableField
 

Private Member Functions

void initialize (const std::string &scatterName, const Teuchos::RCP< STK_Interface > mesh, const Teuchos::RCP< const panzer::PureBasis > &basis, const std::vector< std::string > &names, const std::vector< double > &scaling)
 

Private Attributes

std::vector< PHX::MDField
< const ScalarT, panzer::Cell,
panzer::NODE > > 
scatterFields_
 
Teuchos::RCP< STK_Interfacemesh_
 
std::vector< double > scaling_
 
bool cellFields_
 

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< TraitsT >
WorksetDetailsAccessor wda
 

Detailed Description

template<typename EvalT, typename TraitsT>
class panzer_stk::ScatterFields< EvalT, TraitsT >

This class is a scatter operation to the mesh. It takes a set of field names and basis objects and then writes them to the mesh object. Note that scaling vector must be the same length as the names vector. The scaling is applied to each field.

Definition at line 37 of file Panzer_STK_ScatterFields_decl.hpp.

Member Typedef Documentation

template<typename EvalT , typename TraitsT >
typedef EvalT::ScalarT panzer_stk::ScatterFields< EvalT, TraitsT >::ScalarT
private

Definition at line 39 of file Panzer_STK_ScatterFields_decl.hpp.

template<typename EvalT , typename TraitsT >
typedef panzer_stk::STK_Interface::SolutionFieldType panzer_stk::ScatterFields< EvalT, TraitsT >::VariableField
private

Definition at line 40 of file Panzer_STK_ScatterFields_decl.hpp.

Constructor & Destructor Documentation

template<typename EvalT , typename TraitsT >
panzer_stk::ScatterFields< EvalT, TraitsT >::ScatterFields ( const std::string &  scatterName,
const Teuchos::RCP< STK_Interface mesh,
const Teuchos::RCP< const panzer::PureBasis > &  basis,
const std::vector< std::string > &  names 
)

Definition at line 31 of file Panzer_STK_ScatterFields_impl.hpp.

template<typename EvalT , typename TraitsT >
panzer_stk::ScatterFields< EvalT, TraitsT >::ScatterFields ( const std::string &  scatterName,
const Teuchos::RCP< STK_Interface mesh,
const Teuchos::RCP< const panzer::PureBasis > &  basis,
const std::vector< std::string > &  names,
const std::vector< double > &  scaling 
)

Definition at line 43 of file Panzer_STK_ScatterFields_impl.hpp.

Member Function Documentation

template<typename EvalT , typename TraitsT >
void panzer_stk::ScatterFields< EvalT, TraitsT >::initialize ( const std::string &  scatterName,
const Teuchos::RCP< STK_Interface mesh,
const Teuchos::RCP< const panzer::PureBasis > &  basis,
const std::vector< std::string > &  names,
const std::vector< double > &  scaling 
)
private

Definition at line 54 of file Panzer_STK_ScatterFields_impl.hpp.

template<typename EvalT , typename TraitsT >
void panzer_stk::ScatterFields< EvalT, TraitsT >::postRegistrationSetup ( typename TraitsT::SetupData  d,
PHX::FieldManager< TraitsT > &  fm 
)

Definition at line 91 of file Panzer_STK_ScatterFields_impl.hpp.

template<typename EvalT , typename TraitsT >
void panzer_stk::ScatterFields< EvalT, TraitsT >::evaluateFields ( typename TraitsT::EvalData  d)

Definition at line 100 of file Panzer_STK_ScatterFields_impl.hpp.

Definition at line 107 of file Panzer_STK_ScatterFields_impl.hpp.

Member Data Documentation

template<typename EvalT , typename TraitsT >
std::vector< PHX::MDField<const ScalarT,panzer::Cell,panzer::NODE> > panzer_stk::ScatterFields< EvalT, TraitsT >::scatterFields_
private

Definition at line 42 of file Panzer_STK_ScatterFields_decl.hpp.

template<typename EvalT , typename TraitsT >
Teuchos::RCP<STK_Interface> panzer_stk::ScatterFields< EvalT, TraitsT >::mesh_
private

Definition at line 43 of file Panzer_STK_ScatterFields_decl.hpp.

template<typename EvalT , typename TraitsT >
std::vector<double> panzer_stk::ScatterFields< EvalT, TraitsT >::scaling_
private

Definition at line 45 of file Panzer_STK_ScatterFields_decl.hpp.

template<typename EvalT , typename TraitsT >
bool panzer_stk::ScatterFields< EvalT, TraitsT >::cellFields_
private

Definition at line 47 of file Panzer_STK_ScatterFields_decl.hpp.


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