libMesh
Public Types | Public Member Functions | Protected Types | Private Attributes | List of all members
libMesh::FEMFunctionWrapper< Output > Class Template Reference

The FEMFunctionWrapper input functor class can be used with a GenericProjector to read values from an FEMFunction. More...

#include <generic_projector.h>

Public Types

typedef TensorTools::MakeReal< Output >::type RealType
 
typedef DofValueType ValuePushType
 
typedef Output FunctorValue
 

Public Member Functions

 FEMFunctionWrapper (const FEMFunctionBase< Output > &f)
 
 FEMFunctionWrapper (const FEMFunctionWrapper< Output > &fw)
 
void init_context (FEMContext &c)
 
Output eval_at_node (const FEMContext &c, unsigned int i, unsigned int, const Node &n, bool, const Real time)
 
Output eval_at_point (const FEMContext &c, unsigned int i, const Point &n, const Real time, bool)
 
void eval_mixed_derivatives (const FEMContext &, unsigned int, unsigned int, const Node &, std::vector< Output > &)
 
bool is_grid_projection ()
 
void eval_old_dofs (const Elem &, unsigned int, unsigned int, std::vector< dof_id_type > &, std::vector< Output > &)
 
void eval_old_dofs (const Elem &, const FEType &, unsigned int, unsigned int, std::vector< dof_id_type > &, std::vector< Output > &)
 

Protected Types

typedef TensorTools::MakeBaseNumber< Output >::type DofValueType
 

Private Attributes

std::unique_ptr< FEMFunctionBase< Output > > _f
 

Detailed Description

template<typename Output>
class libMesh::FEMFunctionWrapper< Output >

The FEMFunctionWrapper input functor class can be used with a GenericProjector to read values from an FEMFunction.

Author
Roy H. Stogner
Date
2016

Definition at line 447 of file generic_projector.h.

Member Typedef Documentation

◆ DofValueType

template<typename Output>
typedef TensorTools::MakeBaseNumber<Output>::type libMesh::FEMFunctionWrapper< Output >::DofValueType
protected

Definition at line 450 of file generic_projector.h.

◆ FunctorValue

template<typename Output>
typedef Output libMesh::FEMFunctionWrapper< Output >::FunctorValue

Definition at line 455 of file generic_projector.h.

◆ RealType

template<typename Output>
typedef TensorTools::MakeReal<Output>::type libMesh::FEMFunctionWrapper< Output >::RealType

Definition at line 453 of file generic_projector.h.

◆ ValuePushType

template<typename Output>
typedef DofValueType libMesh::FEMFunctionWrapper< Output >::ValuePushType

Definition at line 454 of file generic_projector.h.

Constructor & Destructor Documentation

◆ FEMFunctionWrapper() [1/2]

template<typename Output>
libMesh::FEMFunctionWrapper< Output >::FEMFunctionWrapper ( const FEMFunctionBase< Output > &  f)
inline

Definition at line 457 of file generic_projector.h.

457 : _f(f.clone()) {}
std::unique_ptr< FEMFunctionBase< Output > > _f

◆ FEMFunctionWrapper() [2/2]

template<typename Output>
libMesh::FEMFunctionWrapper< Output >::FEMFunctionWrapper ( const FEMFunctionWrapper< Output > &  fw)
inline

Definition at line 459 of file generic_projector.h.

459  :
460  _f(fw._f->clone()) {}
std::unique_ptr< FEMFunctionBase< Output > > _f

Member Function Documentation

◆ eval_at_node()

template<typename Output>
Output libMesh::FEMFunctionWrapper< Output >::eval_at_node ( const FEMContext c,
unsigned int  i,
unsigned  int,
const Node n,
bool  ,
const Real  time 
)
inline

Definition at line 464 of file generic_projector.h.

References libMesh::FEMFunctionWrapper< Output >::_f.

470  { return _f->component(c, i, n, time); }
std::unique_ptr< FEMFunctionBase< Output > > _f

◆ eval_at_point()

template<typename Output>
Output libMesh::FEMFunctionWrapper< Output >::eval_at_point ( const FEMContext c,
unsigned int  i,
const Point n,
const Real  time,
bool   
)
inline

Definition at line 472 of file generic_projector.h.

References libMesh::FEMFunctionWrapper< Output >::_f.

477  { return _f->component(c, i, n, time); }
std::unique_ptr< FEMFunctionBase< Output > > _f

◆ eval_mixed_derivatives()

template<typename Output>
void libMesh::FEMFunctionWrapper< Output >::eval_mixed_derivatives ( const FEMContext ,
unsigned  int,
unsigned  int,
const Node ,
std::vector< Output > &   
)
inline

Definition at line 479 of file generic_projector.h.

484  { libmesh_error(); } // this is only for grid projections

◆ eval_old_dofs() [1/2]

template<typename Output>
void libMesh::FEMFunctionWrapper< Output >::eval_old_dofs ( const Elem ,
unsigned  int,
unsigned  int,
std::vector< dof_id_type > &  ,
std::vector< Output > &   
)
inline

Definition at line 488 of file generic_projector.h.

493  { libmesh_error(); }

◆ eval_old_dofs() [2/2]

template<typename Output>
void libMesh::FEMFunctionWrapper< Output >::eval_old_dofs ( const Elem ,
const FEType ,
unsigned  int,
unsigned  int,
std::vector< dof_id_type > &  ,
std::vector< Output > &   
)
inline

Definition at line 495 of file generic_projector.h.

501  { libmesh_error(); }

◆ init_context()

template<typename Output>
void libMesh::FEMFunctionWrapper< Output >::init_context ( FEMContext c)
inline

Definition at line 462 of file generic_projector.h.

References libMesh::FEMFunctionWrapper< Output >::_f.

462 { _f->init_context(c); }
std::unique_ptr< FEMFunctionBase< Output > > _f

◆ is_grid_projection()

template<typename Output>
bool libMesh::FEMFunctionWrapper< Output >::is_grid_projection ( )
inline

Definition at line 486 of file generic_projector.h.

486 { return false; }

Member Data Documentation

◆ _f

template<typename Output>
std::unique_ptr<FEMFunctionBase<Output> > libMesh::FEMFunctionWrapper< Output >::_f
private

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