Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
field_expr_v2_nonlinear_node_nary< NaryFunctor, Exprs >

Detailed Description

template<class NaryFunctor, class... Exprs>
class rheolef::details::field_expr_v2_nonlinear_node_nary< NaryFunctor, Exprs >

Definition at line 90 of file compose.h.

Public Types

typedef range_builder< 0, N >::type IndexRange
 
typedef geo_element::size_type size_type
 
using nary_functor_traits = functor_traits< typename std::decay< NaryFunctor >::type >
 
using result_type = typename nary_functor_traits::result_type
 
typedef result_type value_type
 
typedef scalar_traits< value_type >::type scalar_type
 
typedef float_traits< value_type >::type float_type
 
typedef rheo_default_memory_model memory_type
 

Public Member Functions

 field_expr_v2_nonlinear_node_nary (const NaryFunctor &f, const Exprs &... exprs)
 
space_constant::valued_type valued_tag () const
 
template<size_t ... Is>
void _initialize_internal (const piola_on_pointset< float_type > &pops, const integrate_option &iopt, index_list< Is... >)
 
template<size_t ... Is>
void _initialize_internal (const space_basic< float_type, memory_type > &Xh, const piola_on_pointset< float_type > &pops, const integrate_option &iopt, index_list< Is... >)
 
void initialize (const piola_on_pointset< float_type > &pops, const integrate_option &iopt)
 
void initialize (const space_basic< float_type, memory_type > &Xh, const piola_on_pointset< float_type > &pops, const integrate_option &iopt)
 
template<class Result , size_t ... Is>
void _evaluate_internal (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, Eigen::Matrix< Result, Eigen::Dynamic, 1 > &value, index_list< Is... >) const
 
template<class Result >
void evaluate (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, Eigen::Matrix< Result, Eigen::Dynamic, 1 > &value) const
 
template<class Result , size_t ... Is>
bool _valued_check_internal (Result, index_list< Is... >) const
 
template<class Result >
bool valued_check () const
 

Static Public Attributes

static const size_t N = sizeof...(Exprs)
 
static const space_constant::valued_type valued_hint = space_constant::valued_tag_traits<result_type>::value
 

Protected Attributes

NaryFunctor _f
 
std::tuple< Exprs... > _exprs
 

Member Typedef Documentation

◆ IndexRange

template<class NaryFunctor , class... Exprs>
typedef range_builder<0,N>::type IndexRange

Definition at line 95 of file compose.h.

◆ size_type

template<class NaryFunctor , class... Exprs>
typedef geo_element::size_type size_type

Definition at line 99 of file compose.h.

◆ nary_functor_traits

template<class NaryFunctor , class... Exprs>
using nary_functor_traits = functor_traits<typename std::decay<NaryFunctor>::type>

Definition at line 100 of file compose.h.

◆ result_type

template<class NaryFunctor , class... Exprs>
using result_type = typename nary_functor_traits::result_type

Definition at line 101 of file compose.h.

◆ value_type

template<class NaryFunctor , class... Exprs>
typedef result_type value_type

Definition at line 103 of file compose.h.

◆ scalar_type

template<class NaryFunctor , class... Exprs>
typedef scalar_traits<value_type>::type scalar_type

Definition at line 104 of file compose.h.

◆ float_type

template<class NaryFunctor , class... Exprs>
typedef float_traits<value_type>::type float_type

Definition at line 105 of file compose.h.

◆ memory_type

template<class NaryFunctor , class... Exprs>
typedef rheo_default_memory_model memory_type

Definition at line 106 of file compose.h.

Constructor & Destructor Documentation

◆ field_expr_v2_nonlinear_node_nary()

template<class NaryFunctor , class... Exprs>
field_expr_v2_nonlinear_node_nary ( const NaryFunctor &  f,
const Exprs &...  exprs 
)

Definition at line 115 of file compose.h.

Member Function Documentation

◆ valued_tag()

template<class NaryFunctor , class... Exprs>
space_constant::valued_type valued_tag ( ) const

Definition at line 122 of file compose.h.

◆ _initialize_internal() [1/2]

template<class NaryFunctor , class... Exprs>
template<size_t ... Is>
void _initialize_internal ( const piola_on_pointset< float_type > &  pops,
const integrate_option iopt,
index_list< Is... >   
)

Definition at line 133 of file compose.h.

◆ _initialize_internal() [2/2]

template<class NaryFunctor , class... Exprs>
template<size_t ... Is>
void _initialize_internal ( const space_basic< float_type, memory_type > &  Xh,
const piola_on_pointset< float_type > &  pops,
const integrate_option iopt,
index_list< Is... >   
)

Definition at line 140 of file compose.h.

◆ initialize() [1/2]

template<class NaryFunctor , class... Exprs>
void initialize ( const piola_on_pointset< float_type > &  pops,
const integrate_option iopt 
)

Definition at line 147 of file compose.h.

◆ initialize() [2/2]

template<class NaryFunctor , class... Exprs>
void initialize ( const space_basic< float_type, memory_type > &  Xh,
const piola_on_pointset< float_type > &  pops,
const integrate_option iopt 
)

Definition at line 152 of file compose.h.

◆ _evaluate_internal()

template<class NaryFunctor , class... Exprs>
template<class Result , size_t ... Is>
void _evaluate_internal ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
Eigen::Matrix< Result, Eigen::Dynamic, 1 > &  value,
index_list< Is... >   
) const

Definition at line 162 of file compose.h.

◆ evaluate()

template<class NaryFunctor , class... Exprs>
template<class Result >
void evaluate ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
Eigen::Matrix< Result, Eigen::Dynamic, 1 > &  value 
) const

Definition at line 194 of file compose.h.

◆ _valued_check_internal()

template<class NaryFunctor , class... Exprs>
template<class Result , size_t ... Is>
bool _valued_check_internal ( Result  ,
index_list< Is... >   
) const

Definition at line 202 of file compose.h.

◆ valued_check()

template<class NaryFunctor , class... Exprs>
template<class Result >
bool valued_check ( ) const

Definition at line 216 of file compose.h.

Member Data Documentation

◆ N

template<class NaryFunctor , class... Exprs>
const size_t N = sizeof...(Exprs)
static

Definition at line 94 of file compose.h.

◆ valued_hint

template<class NaryFunctor , class... Exprs>
const space_constant::valued_type valued_hint = space_constant::valued_tag_traits<result_type>::value
static

Definition at line 120 of file compose.h.

◆ _f

template<class NaryFunctor , class... Exprs>
NaryFunctor _f
protected

Definition at line 221 of file compose.h.

◆ _exprs

template<class NaryFunctor , class... Exprs>
std::tuple<Exprs...> _exprs
protected

Definition at line 222 of file compose.h.


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