Panzer  Version of the Day
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
panzer::DOF_PointField< EvalT, TRAITST > Class Template Reference

Interpolates basis DOF using reference coordinates defined by a field. More...

#include <Panzer_DOF_PointField_decl.hpp>

Inheritance diagram for panzer::DOF_PointField< EvalT, TRAITST >:
Inheritance graph
[legend]

Public Member Functions

 DOF_PointField (const std::string &postfixFieldName, const std::string &fieldName, const PureBasis &fieldBasis, const std::string &coordinateName, const Teuchos::RCP< PHX::DataLayout > &coordLayout, const Teuchos::RCP< PHX::DataLayout > &quadLayout)
 
 DOF_PointField (const std::string &fieldName, const PureBasis &fieldBasis, const std::string &coordinateName, const Teuchos::RCP< PHX::DataLayout > &coordLayout, const Teuchos::RCP< PHX::DataLayout > &quadLayout, bool useCoordPostfix)
 
void postRegistrationSetup (typename TRAITST::SetupData d, PHX::FieldManager< TRAITST > &vm)
 
void evaluateFields (typename TRAITST::EvalData workset)
 
- Public Member Functions inherited from panzer::EvaluatorWithBaseImpl< TRAITST >
void setDetailsIndex (const int di)
 An evaluator builder sets the details index. More...
 

Private Types

typedef EvalT::ScalarT ScalarT
 

Private Member Functions

void initialize (const std::string &fieldName, const PureBasis &fieldBasis, const std::string &coordinateName, const Teuchos::RCP< PHX::DataLayout > &coordLayout, const Teuchos::RCP< PHX::DataLayout > &quadLayout, const std::string &postfixFieldName)
 Convenience initialization routine, see constructor above. More...
 

Private Attributes

PHX::MDField< ScalarT, Point, Dim > coordinates
 
PHX::MDField< ScalarTdof_coeff
 
PHX::MDField< ScalarTdof_field
 
Teuchos::RCP< Intrepid2::Basis< double, Kokkos::DynRankView< double, PHX::Device > > > intrepidBasis
 
Kokkos::DynRankView< double, PHX::Device > intrpCoords
 
Kokkos::DynRankView< double, PHX::Device > basisRef
 
Kokkos::DynRankView< double, PHX::Device > basis
 

Additional Inherited Members

- Protected Attributes inherited from panzer::EvaluatorWithBaseImpl< TRAITST >
WorksetDetailsAccessor wda
 

Detailed Description

template<typename EvalT, typename TRAITST>
class panzer::DOF_PointField< EvalT, TRAITST >

Interpolates basis DOF using reference coordinates defined by a field.

Definition at line 65 of file Panzer_DOF_PointField_decl.hpp.

Member Typedef Documentation

◆ ScalarT

template<typename EvalT , typename TRAITST >
typedef EvalT::ScalarT panzer::DOF_PointField< EvalT, TRAITST >::ScalarT
private

Definition at line 123 of file Panzer_DOF_PointField_decl.hpp.

Constructor & Destructor Documentation

◆ DOF_PointField() [1/2]

template<typename EvalT , typename TRAITST >
panzer::DOF_PointField< EvalT, TRAITST >::DOF_PointField ( const std::string &  postfixFieldName,
const std::string &  fieldName,
const PureBasis fieldBasis,
const std::string &  coordinateName,
const Teuchos::RCP< PHX::DataLayout > &  coordLayout,
const Teuchos::RCP< PHX::DataLayout > &  quadLayout 
)
inline

Constructor that allows user to specify a postfix for the field.

This constructor builds an evaluator from coordinates defined on the reference element. The name of the evaluated field is flexible, the name being fieldName+postfixFieldName.

Parameters
[in]postfixFieldNamePostfix string to modify field name
[in]fieldNameName of DOF field (dimensioned number cells by number of basis functions)
[in]fieldBasisDatalayout describing DOF field
[in]coordinateNameName of reference coordinates (sized number of points by dimension)
[in]coordLayoutLayout for coordinates

Definition at line 85 of file Panzer_DOF_PointField_decl.hpp.

◆ DOF_PointField() [2/2]

template<typename EvalT , typename TRAITST >
panzer::DOF_PointField< EvalT, TRAITST >::DOF_PointField ( const std::string &  fieldName,
const PureBasis fieldBasis,
const std::string &  coordinateName,
const Teuchos::RCP< PHX::DataLayout > &  coordLayout,
const Teuchos::RCP< PHX::DataLayout > &  quadLayout,
bool  useCoordPostfix 
)
inline

Constructor that appends (or not) the coordinate name to the field.

This constructor builds an evaluator from coordinates defined on the reference element. The name of the evaluated field is either fieldName+coordinateName or simply fieldName.

Parameters
[in]fieldNameName of DOF field (dimensioned number cells by number of basis functions)
[in]fieldBasisDatalayout describing DOF field
[in]coordinateNameName of reference coordinates (sized number of points by dimension)
[in]coordLayoutLayout for coordinates
[in]useCoordPostfixPostfix field name with coordinate name.

Definition at line 108 of file Panzer_DOF_PointField_decl.hpp.

Member Function Documentation

◆ postRegistrationSetup()

template<typename EvalT , typename TRAITST >
void panzer::DOF_PointField< EvalT, TRAITST >::postRegistrationSetup ( typename TRAITST::SetupData  d,
PHX::FieldManager< TRAITST > &  vm 
)

Definition at line 92 of file Panzer_DOF_PointField_impl.hpp.

◆ evaluateFields()

template<typename EvalT , typename TRAITST >
void panzer::DOF_PointField< EvalT, TRAITST >::evaluateFields ( typename TRAITST::EvalData  workset)

Definition at line 102 of file Panzer_DOF_PointField_impl.hpp.

◆ initialize()

template<typename EvalT , typename TRAITST >
void panzer::DOF_PointField< EvalT, TRAITST >::initialize ( const std::string &  fieldName,
const PureBasis fieldBasis,
const std::string &  coordinateName,
const Teuchos::RCP< PHX::DataLayout > &  coordLayout,
const Teuchos::RCP< PHX::DataLayout > &  quadLayout,
const std::string &  postfixFieldName 
)
private

Convenience initialization routine, see constructor above.

Definition at line 57 of file Panzer_DOF_PointField_impl.hpp.

Member Data Documentation

◆ coordinates

template<typename EvalT , typename TRAITST >
PHX::MDField<ScalarT,Point,Dim> panzer::DOF_PointField< EvalT, TRAITST >::coordinates
private

Definition at line 133 of file Panzer_DOF_PointField_decl.hpp.

◆ dof_coeff

template<typename EvalT , typename TRAITST >
PHX::MDField<ScalarT> panzer::DOF_PointField< EvalT, TRAITST >::dof_coeff
private

Definition at line 134 of file Panzer_DOF_PointField_decl.hpp.

◆ dof_field

template<typename EvalT , typename TRAITST >
PHX::MDField<ScalarT> panzer::DOF_PointField< EvalT, TRAITST >::dof_field
private

Definition at line 135 of file Panzer_DOF_PointField_decl.hpp.

◆ intrepidBasis

template<typename EvalT , typename TRAITST >
Teuchos::RCP<Intrepid2::Basis<double,Kokkos::DynRankView<double,PHX::Device> > > panzer::DOF_PointField< EvalT, TRAITST >::intrepidBasis
private

Definition at line 137 of file Panzer_DOF_PointField_decl.hpp.

◆ intrpCoords

template<typename EvalT , typename TRAITST >
Kokkos::DynRankView<double,PHX::Device> panzer::DOF_PointField< EvalT, TRAITST >::intrpCoords
private

Definition at line 138 of file Panzer_DOF_PointField_decl.hpp.

◆ basisRef

template<typename EvalT , typename TRAITST >
Kokkos::DynRankView<double,PHX::Device> panzer::DOF_PointField< EvalT, TRAITST >::basisRef
private

Definition at line 138 of file Panzer_DOF_PointField_decl.hpp.

◆ basis

template<typename EvalT , typename TRAITST >
Kokkos::DynRankView<double,PHX::Device> panzer::DOF_PointField< EvalT, TRAITST >::basis
private

Definition at line 138 of file Panzer_DOF_PointField_decl.hpp.


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