#include <Evaluator_FEInterpolation.hpp>
Public Member Functions | |
FEInterpolation (const Teuchos::ParameterList &p) | |
void | postRegistrationSetup (PHX::FieldManager< Traits > &vm) |
Allows providers to grab pointers to data arrays. | |
void | evaluateFields (typename Traits::EvalData d) |
Evaluate all fields that the provider supplies. | |
FEInterpolation (const Teuchos::ParameterList &p) | |
void | postRegistrationSetup (PHX::FieldManager< Traits > &vm) |
Allows providers to grab pointers to data arrays. | |
void | evaluateFields (typename Traits::EvalData d) |
Evaluate all fields that the provider supplies. | |
Private Types | |
typedef EvalT::ScalarT | ScalarT |
typedef EvalT::ScalarT | ScalarT |
Private Attributes | |
PHX::Field< ScalarT > | val_node |
Values at nodes. | |
PHX::Field< ScalarT > | val_qp |
Values at quadrature points. | |
PHX::Field< MyVector< ScalarT > > | val_grad_qp |
Gradient values at quadrature points. | |
PHX::MDField< ScalarT, PHX::NaturalOrder, Cell, Node > | val_node |
Values at nodes. | |
PHX::MDField< ScalarT, PHX::NaturalOrder, Cell, QuadPoint > | val_qp |
Values at quadrature points. | |
PHX::MDField< ScalarT, PHX::NaturalOrder, Cell, QuadPoint, Dim > | val_grad_qp |
Gradient values at quadrature points. | |
std::size_t | num_nodes |
std::size_t | num_qp |
std::size_t | num_dim |
This object evaluates a scalar field and it's gradient at the quadrature points for a specific variable.
typedef EvalT::ScalarT FEInterpolation< EvalT, Traits >::ScalarT [private] |
typedef EvalT::ScalarT FEInterpolation< EvalT, Traits >::ScalarT [private] |
FEInterpolation< EvalT, Traits >::FEInterpolation | ( | const Teuchos::ParameterList & | p | ) | [inline] |
References PHX::EvaluatorWithBaseImpl< Traits >::addDependentField(), PHX::EvaluatorWithBaseImpl< Traits >::addEvaluatedField(), PHX::EvaluatorWithBaseImpl< Traits >::setName(), FEInterpolation< EvalT, Traits >::val_grad_qp, FEInterpolation< EvalT, Traits >::val_node, and FEInterpolation< EvalT, Traits >::val_qp.
FEInterpolation< EvalT, Traits >::FEInterpolation | ( | const Teuchos::ParameterList & | p | ) |
void FEInterpolation< EvalT, Traits >::evaluateFields | ( | typename Traits::EvalData | d | ) | [virtual] |
Evaluate all fields that the provider supplies.
Input:
d | - user defined data object defined by the EvalData typedef in the traits class. |
Implements PHX::EvaluatorWithBaseImpl< Traits >.
void FEInterpolation< EvalT, Traits >::evaluateFields | ( | typename Traits::EvalData | d | ) | [inline, virtual] |
Evaluate all fields that the provider supplies.
Input:
d | - user defined data object defined by the EvalData typedef in the traits class. |
Implements PHX::EvaluatorWithBaseImpl< Traits >.
References PHX::FieldTag::dataLayout(), PHX::Field< DataT >::fieldTag(), PHX::DataLayout::size(), FEInterpolation< EvalT, Traits >::val_grad_qp, FEInterpolation< EvalT, Traits >::val_node, and FEInterpolation< EvalT, Traits >::val_qp.
void FEInterpolation< EvalT, Traits >::postRegistrationSetup | ( | PHX::FieldManager< Traits > & | vm | ) | [virtual] |
Allows providers to grab pointers to data arrays.
Called once all providers are registered with the manager.
Once the field manager has allocated all data arrays, this method passes the field manager to the providers to allow each provider to grab and store pointers to the field data arrays. Grabbing the data arrays from the varible manager during an actual call to evaluateFields call is too slow due to the map lookup and FieldTag comparison (which uses a string compare). So lookups on field data are only allowed during this setup phase.
Implements PHX::EvaluatorWithBaseImpl< Traits >.
void FEInterpolation< EvalT, Traits >::postRegistrationSetup | ( | PHX::FieldManager< Traits > & | vm | ) | [inline, virtual] |
Allows providers to grab pointers to data arrays.
Called once all providers are registered with the manager.
Once the field manager has allocated all data arrays, this method passes the field manager to the providers to allow each provider to grab and store pointers to the field data arrays. Grabbing the data arrays from the varible manager during an actual call to evaluateFields call is too slow due to the map lookup and FieldTag comparison (which uses a string compare). So lookups on field data are only allowed during this setup phase.
Implements PHX::EvaluatorWithBaseImpl< Traits >.
References PHX::EvaluatorDerived< EvalT, Traits >::utils, FEInterpolation< EvalT, Traits >::val_grad_qp, FEInterpolation< EvalT, Traits >::val_node, and FEInterpolation< EvalT, Traits >::val_qp.
std::size_t FEInterpolation< EvalT, Traits >::num_dim [private] |
std::size_t FEInterpolation< EvalT, Traits >::num_nodes [private] |
std::size_t FEInterpolation< EvalT, Traits >::num_qp [private] |
PHX::MDField<ScalarT,PHX::NaturalOrder,Cell,QuadPoint,Dim> FEInterpolation< EvalT, Traits >::val_grad_qp [private] |
Gradient values at quadrature points.
PHX::Field< MyVector<ScalarT> > FEInterpolation< EvalT, Traits >::val_grad_qp [private] |
Gradient values at quadrature points.
Referenced by FEInterpolation< EvalT, Traits >::evaluateFields(), FEInterpolation< EvalT, Traits >::FEInterpolation(), and FEInterpolation< EvalT, Traits >::postRegistrationSetup().
PHX::MDField<ScalarT,PHX::NaturalOrder,Cell,Node> FEInterpolation< EvalT, Traits >::val_node [private] |
Values at nodes.
PHX::Field< ScalarT > FEInterpolation< EvalT, Traits >::val_node [private] |
Values at nodes.
Referenced by FEInterpolation< EvalT, Traits >::evaluateFields(), FEInterpolation< EvalT, Traits >::FEInterpolation(), and FEInterpolation< EvalT, Traits >::postRegistrationSetup().
PHX::MDField<ScalarT,PHX::NaturalOrder,Cell,QuadPoint> FEInterpolation< EvalT, Traits >::val_qp [private] |
Values at quadrature points.
PHX::Field< ScalarT > FEInterpolation< EvalT, Traits >::val_qp [private] |
Values at quadrature points.
Referenced by FEInterpolation< EvalT, Traits >::evaluateFields(), FEInterpolation< EvalT, Traits >::FEInterpolation(), and FEInterpolation< EvalT, Traits >::postRegistrationSetup().