FEInterpolation< EvalT, Traits > Class Template Reference

Finite Element Interpolation Evaluator. More...

#include <Evaluator_FEInterpolation.hpp>

Inheritance diagram for FEInterpolation< EvalT, Traits >:

Inheritance graph
[legend]
Collaboration diagram for FEInterpolation< EvalT, Traits >:

Collaboration graph
[legend]

List of all members.

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< ScalarTval_node
 Values at nodes.
PHX::Field< ScalarTval_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


Detailed Description

template<typename EvalT, typename Traits>
class FEInterpolation< EvalT, Traits >

Finite Element Interpolation Evaluator.

This object evaluates a scalar field and it's gradient at the quadrature points for a specific variable.


Member Typedef Documentation

template<typename EvalT , typename Traits >
typedef EvalT::ScalarT FEInterpolation< EvalT, Traits >::ScalarT [private]

template<typename EvalT , typename Traits >
typedef EvalT::ScalarT FEInterpolation< EvalT, Traits >::ScalarT [private]


Constructor & Destructor Documentation

template<typename EvalT , typename Traits >
FEInterpolation< EvalT, Traits >::FEInterpolation ( const Teuchos::ParameterList &  p  )  [inline]

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


Member Function Documentation

template<typename EvalT , typename Traits >
void FEInterpolation< EvalT, Traits >::evaluateFields ( typename Traits::EvalData  d  )  [virtual]

Evaluate all fields that the provider supplies.

Input:

Parameters:
d - user defined data object defined by the EvalData typedef in the traits class.

Implements PHX::EvaluatorWithBaseImpl< Traits >.

template<typename EvalT , typename Traits >
void FEInterpolation< EvalT, Traits >::evaluateFields ( typename Traits::EvalData  d  )  [inline, virtual]

Evaluate all fields that the provider supplies.

Input:

Parameters:
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.

Here is the call graph for this function:

template<typename EvalT , typename Traits >
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 >.

template<typename EvalT , typename 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.


Member Data Documentation

template<typename EvalT , typename Traits >
std::size_t FEInterpolation< EvalT, Traits >::num_dim [private]

template<typename EvalT , typename Traits >
std::size_t FEInterpolation< EvalT, Traits >::num_nodes [private]

template<typename EvalT , typename Traits >
std::size_t FEInterpolation< EvalT, Traits >::num_qp [private]

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT,PHX::NaturalOrder,Cell,QuadPoint,Dim> FEInterpolation< EvalT, Traits >::val_grad_qp [private]

Gradient values at quadrature points.

template<typename EvalT , typename Traits >
PHX::Field< MyVector<ScalarT> > FEInterpolation< EvalT, Traits >::val_grad_qp [private]

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT,PHX::NaturalOrder,Cell,Node> FEInterpolation< EvalT, Traits >::val_node [private]

Values at nodes.

template<typename EvalT , typename Traits >
PHX::Field< ScalarT > FEInterpolation< EvalT, Traits >::val_node [private]

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT,PHX::NaturalOrder,Cell,QuadPoint> FEInterpolation< EvalT, Traits >::val_qp [private]

Values at quadrature points.

template<typename EvalT , typename Traits >
PHX::Field< ScalarT > FEInterpolation< EvalT, Traits >::val_qp [private]


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

Generated on Thu Dec 17 11:05:54 2009 for Phalanx by  doxygen 1.5.9