Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
field_rdof_node.h File Reference

Go to the source code of this file.

Classes

class  field_rdof_unary_iterator< UnaryFunction, InputIterator >
 
class  field_rdof_unary< UnaryFunction, FieldRdof >
 
struct  is_field_rdof< field_rdof_unary< UnaryFunction, FieldRdof > >
 
struct  field_traits< field_rdof_unary< UnaryFunction, FieldRdof > >
 

Namespaces

namespace  rheolef
 This file is part of Rheolef.
 
namespace  rheolef::details
 

Macros

#define _RHEOLEF_make_field_rdof_unary(FUNCTION, FUNCTOR)
 
#define _RHEOLEF_make_field_rdof_unary_scalar_first(FUNCTION, FUNCTOR)
 
#define _RHEOLEF_make_field_rdof_unary_scalar_second(FUNCTION, FUNCTOR)
 

Functions

 _RHEOLEF_make_field_rdof_unary (operator+, details::unary_plus) _RHEOLEF_make_field_rdof_unary(operator-
 
 _RHEOLEF_make_field_rdof_unary_scalar_first (operator+, details::plus) _RHEOLEF_make_field_rdof_unary_scalar_first(operator-
 
details::minus _RHEOLEF_make_field_rdof_unary_scalar_first (operator*, details::multiplies) _RHEOLEF_make_field_rdof_unary_scalar_second(operator+
 
details::minus details::plus _RHEOLEF_make_field_rdof_unary_scalar_second (operator-, details::minus) _RHEOLEF_make_field_rdof_unary_scalar_second(operator*
 

Macro Definition Documentation

◆ _RHEOLEF_make_field_rdof_unary

#define _RHEOLEF_make_field_rdof_unary (   FUNCTION,
  FUNCTOR 
)
Value:
template<class FieldRdof> \
typename \
std::enable_if< \
details::has_field_rdof_interface<FieldRdof>::value \
,details::field_rdof_unary<FUNCTOR,FieldRdof> \
>::type \
FUNCTION (const FieldRdof& rdof) \
{ \
return details::field_rdof_unary<FUNCTOR,FieldRdof> (FUNCTOR(), rdof); \
}

Definition at line 142 of file field_rdof_node.h.

◆ _RHEOLEF_make_field_rdof_unary_scalar_first

#define _RHEOLEF_make_field_rdof_unary_scalar_first (   FUNCTION,
  FUNCTOR 
)
Value:
template<class FieldRdof> \
typename \
std::enable_if< \
details::has_field_rdof_interface<FieldRdof>::value \
,details::field_rdof_unary<details::binder_first<FUNCTOR,typename FieldRdof::scalar_type>,FieldRdof> \
>::type \
FUNCTION (const typename FieldRdof::scalar_type& lambda, const FieldRdof& rdof) \
{ \
using A1 = details::binder_first<FUNCTOR,typename FieldRdof::scalar_type>; \
return details::field_rdof_unary<A1,FieldRdof> (A1(FUNCTOR(),lambda), rdof); \
}

Definition at line 161 of file field_rdof_node.h.

◆ _RHEOLEF_make_field_rdof_unary_scalar_second

#define _RHEOLEF_make_field_rdof_unary_scalar_second (   FUNCTION,
  FUNCTOR 
)
Value:
template<class FieldRdof> \
typename \
std::enable_if< \
details::has_field_rdof_interface<FieldRdof>::value \
,details::field_rdof_unary<details::binder_second<FUNCTOR,typename FieldRdof::scalar_type>,FieldRdof> \
>::type \
FUNCTION (const FieldRdof& rdof, const typename FieldRdof::scalar_type& lambda) \
{ \
using A2 = details::binder_second<FUNCTOR,typename FieldRdof::scalar_type>; \
return details::field_rdof_unary<A2,FieldRdof> (A2(FUNCTOR(),lambda), rdof); \
}

Definition at line 174 of file field_rdof_node.h.