Panzer Version of the Day
Loading...
Searching...
No Matches
Public Member Functions | Private Types | Private Attributes | List of all members
panzer_stk::ProjectField< EvalT, Traits > Class Template Reference

Given a field, perform a local L2 projection onto the desired basis. More...

#include <Panzer_STK_ProjectField_decl.hpp>

Inheritance diagram for panzer_stk::ProjectField< EvalT, Traits >:
Inheritance graph
[legend]

Public Member Functions

 ProjectField (const std::string &inName, Teuchos::RCP< panzer::PureBasis > src, Teuchos::RCP< panzer::PureBasis > dst, std::string outname="")
 
void postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &fm)
 
void evaluateFields (typename Traits::EvalData d)
 
- 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 Attributes

const std::string field_name_
 
Teuchos::RCP< const panzer::PureBasissrcBasis_
 
Teuchos::RCP< const panzer::PureBasisdstBasis_
 
Teuchos::RCP< const std::vector< Intrepid2::Orientation > > orientations_
 
PHX::MDField< double, panzer::Cell, panzer::BASISresult_
 
PHX::MDField< double, panzer::Cell, panzer::BASISsource_
 
Kokkos::DynRankView< Intrepid2::Orientation, PHX::Device > local_orts_
 

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

Given a field, perform a local L2 projection onto the desired basis.

Note
Requires that orientations be given in the postRegistrationSetup phase.

Definition at line 31 of file Panzer_STK_ProjectField_decl.hpp.

Member Typedef Documentation

◆ ScalarT

template<typename EvalT , typename Traits >
using panzer_stk::ProjectField< EvalT, Traits >::ScalarT = typename EvalT::ScalarT
private

Definition at line 57 of file Panzer_STK_ProjectField_decl.hpp.

Constructor & Destructor Documentation

◆ ProjectField()

template<typename EvalT , typename Traits >
panzer_stk::ProjectField< EvalT, Traits >::ProjectField ( const std::string &  inName,
Teuchos::RCP< panzer::PureBasis src,
Teuchos::RCP< panzer::PureBasis dst,
std::string  outname = "" 
)

Constructor for the ProjectField evaluator.

Parameters
[in]inNameName of the source MDField
[in]srcBasis of the source field
[in]dstTarget basis
[in]outname(Optional) Name for the projected MDField

Definition at line 29 of file Panzer_STK_ProjectField_impl.hpp.

Member Function Documentation

◆ postRegistrationSetup()

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

Definition at line 61 of file Panzer_STK_ProjectField_impl.hpp.

◆ evaluateFields()

template<typename EvalT , typename Traits >
void panzer_stk::ProjectField< EvalT, Traits >::evaluateFields ( typename Traits::EvalData  d)

Definition at line 71 of file Panzer_STK_ProjectField_impl.hpp.

Member Data Documentation

◆ field_name_

template<typename EvalT , typename Traits >
const std::string panzer_stk::ProjectField< EvalT, Traits >::field_name_
private

Definition at line 59 of file Panzer_STK_ProjectField_decl.hpp.

◆ srcBasis_

template<typename EvalT , typename Traits >
Teuchos::RCP<const panzer::PureBasis> panzer_stk::ProjectField< EvalT, Traits >::srcBasis_
private

Definition at line 60 of file Panzer_STK_ProjectField_decl.hpp.

◆ dstBasis_

template<typename EvalT , typename Traits >
Teuchos::RCP<const panzer::PureBasis> panzer_stk::ProjectField< EvalT, Traits >::dstBasis_
private

Definition at line 61 of file Panzer_STK_ProjectField_decl.hpp.

◆ orientations_

template<typename EvalT , typename Traits >
Teuchos::RCP<const std::vector<Intrepid2::Orientation> > panzer_stk::ProjectField< EvalT, Traits >::orientations_
private

Definition at line 62 of file Panzer_STK_ProjectField_decl.hpp.

◆ result_

template<typename EvalT , typename Traits >
PHX::MDField<double,panzer::Cell,panzer::BASIS> panzer_stk::ProjectField< EvalT, Traits >::result_
private

Definition at line 64 of file Panzer_STK_ProjectField_decl.hpp.

◆ source_

template<typename EvalT , typename Traits >
PHX::MDField<double,panzer::Cell,panzer::BASIS> panzer_stk::ProjectField< EvalT, Traits >::source_
private

Definition at line 65 of file Panzer_STK_ProjectField_decl.hpp.

◆ local_orts_

template<typename EvalT , typename Traits >
Kokkos::DynRankView<Intrepid2::Orientation,PHX::Device> panzer_stk::ProjectField< EvalT, Traits >::local_orts_
private

Definition at line 67 of file Panzer_STK_ProjectField_decl.hpp.


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