MFEM  v4.5.2
Finite element discretization library
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
mfem::TFunctionCoefficient< Func, complex_t > Class Template Reference

Function coefficient. More...

#include <tcoefficient.hpp>

Inheritance diagram for mfem::TFunctionCoefficient< Func, complex_t >:
[legend]
Collaboration diagram for mfem::TFunctionCoefficient< Func, complex_t >:
[legend]

Classes

struct  Dim
 
struct  Dim< 1, dummy >
 
struct  Dim< 2, dummy >
 
struct  Dim< 3, dummy >
 

Public Types

typedef complex_t complex_type
 

Public Member Functions

 TFunctionCoefficient ()
 Constructor for the case when Func has no data members. More...
 
 TFunctionCoefficient (Func &F_)
 Constructor for the case when Func has data members. More...
 
template<typename T_result_t , typename c_layout_t , typename c_data_t >
MFEM_ALWAYS_INLINE void Eval (const T_result_t &T, const c_layout_t &l, c_data_t &c)
 

Static Public Attributes

static const bool uses_coordinates = true
 
- Static Public Attributes inherited from mfem::TCoefficient
static const int rank = 0
 
static const bool is_const = false
 
static const bool uses_coordinates = false
 
static const bool uses_Jacobians = false
 
static const bool uses_attributes = false
 
static const bool uses_element_idxs = false
 

Protected Attributes

Func F
 

Detailed Description

template<typename Func, typename complex_t = double>
class mfem::TFunctionCoefficient< Func, complex_t >

Function coefficient.

Template Parameters
Funchas to implement at least one of the following methods, depending on the dimension that will be used: complex_t Eval1D(real_t); complex_t Eval2D(real_t,real_t); complex_t Eval3D(real_t,real_t,real_t); Use MFEM_FLOPS_ADD() to count flops inside Eval*D.

Definition at line 67 of file tcoefficient.hpp.

Member Typedef Documentation

◆ complex_type

template<typename Func , typename complex_t = double>
typedef complex_t mfem::TFunctionCoefficient< Func, complex_t >::complex_type

Definition at line 71 of file tcoefficient.hpp.

Constructor & Destructor Documentation

◆ TFunctionCoefficient() [1/2]

template<typename Func , typename complex_t = double>
mfem::TFunctionCoefficient< Func, complex_t >::TFunctionCoefficient ( )
inline

Constructor for the case when Func has no data members.

Definition at line 144 of file tcoefficient.hpp.

◆ TFunctionCoefficient() [2/2]

template<typename Func , typename complex_t = double>
mfem::TFunctionCoefficient< Func, complex_t >::TFunctionCoefficient ( Func &  F_)
inline

Constructor for the case when Func has data members.

Definition at line 146 of file tcoefficient.hpp.

Member Function Documentation

◆ Eval()

template<typename Func , typename complex_t = double>
template<typename T_result_t , typename c_layout_t , typename c_data_t >
MFEM_ALWAYS_INLINE void mfem::TFunctionCoefficient< Func, complex_t >::Eval ( const T_result_t &  T,
const c_layout_t &  l,
c_data_t &  c 
)
inline

Definition at line 151 of file tcoefficient.hpp.

Member Data Documentation

◆ F

template<typename Func , typename complex_t = double>
Func mfem::TFunctionCoefficient< Func, complex_t >::F
protected

Definition at line 74 of file tcoefficient.hpp.

◆ uses_coordinates

template<typename Func , typename complex_t = double>
const bool mfem::TFunctionCoefficient< Func, complex_t >::uses_coordinates = true
static

Definition at line 70 of file tcoefficient.hpp.


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