field_expr_v2_nonlinear_node_unary< UnaryFunction, Expr >

## Classes

struct | const_iterator
struct | evaluate_call_check
struct | evaluate_call_check< Result, Arg, std::true_type >
struct | evaluate_switch
struct | evaluate_switch< This, Result, Arg, space_constant::last_valued >

## Public Types

using | size_type = geo_element::size_type
using | memory_type = typename Expr::memory_type
using | result_type = typename details::generic_unary_traits< UnaryFunction >::template result_hint< typename Expr::result_type >::type
using | value_type = result_type
using | scalar_type = typename scalar_traits< value_type >::type
using | float_type = typename float_traits< scalar_type >::type
using | self_type = field_expr_v2_nonlinear_node_unary< UnaryFunction, Expr >

using

is_affine_homogeneous = and_type< or_type< std::is_same< UnaryFunction, details::unary_plus >,std::is_same< UnaryFunction, details::negate >,std::is_same< UnaryFunction, details::binder_first< details::plus, scalar_type > >,std::is_same< UnaryFunction, details::binder_second< details::plus, scalar_type > >,std::is_same< UnaryFunction, details::binder_first< details::minus, scalar_type > >,std::is_same< UnaryFunction, details::binder_second< details::minus, scalar_type > >,std::is_same< UnaryFunction, details::binder_first< details::multiplies, scalar_type > >,std::is_same< UnaryFunction, details::binder_second< details::multiplies, scalar_type > >,std::is_same< UnaryFunction, details::binder_second< details::divides, scalar_type > > >,is_field_expr_affine_homogeneous< Expr > >

## Public Member Functions

| field_expr_v2_nonlinear_node_unary (const UnaryFunction &f, const Expr &expr)
bool | have_homogeneous_space (space_basic< scalar_type, memory_type > &Vh) const
const_iterator | begin_dof () const
const Expr & | expr () const
space_constant::valued_type | valued_tag () const
void | initialize (const piola_on_pointset< float_type > &pops, const integrate_option &iopt) const
void | initialize (const space_basic< float_type, memory_type > &Xh, const piola_on_pointset< float_type > &pops, const integrate_option &iopt) const
template<class Result , class Arg , class M >
void | evaluate_call (const geo_basic< float_type, M > &omega_K, const geo_element &K, Eigen::Matrix< Result, Eigen::Dynamic, 1 > &value) const
template<class Result , class Arg , class M >
void | evaluate_call (const geo_basic< float_type, M > &omega_K, const geo_element &K, const side_information_type &sid, Eigen::Matrix< Result, Eigen::Dynamic, 1 > &value) const

## Public Attributes

_RHEOLEF_evaluate_switch_specialization(space_constant::scalar, T) _RHEOLEF_evaluate_switch_specialization(space_constant Expr | _expr
std::array< Eigen::Matrix< scalar_type, Eigen::Dynamic, 1 >,reference_element::max_variant > | _scalar_val
std::array< Eigen::Matrix< point_basic< scalar_type >, Eigen::Dynamic, 1 >,reference_element::max_variant > | _vector_val
std::array< Eigen::Matrix< tensor_basic< scalar_type >, Eigen::Dynamic, 1 >,reference_element::max_variant > | _tensor_val
std::array< Eigen::Matrix< tensor3_basic< scalar_type >, Eigen::Dynamic, 1 >,reference_element::max_variant > | _tensor3_val
std::array< Eigen::Matrix< tensor4_basic< scalar_type >, Eigen::Dynamic, 1 >,reference_element::max_variant > | _tensor4_val

## Static Public Attributes

static const space_constant::valued_type | valued_hint = space_constant::valued_tag_traits<result_type>::value

## Detailed Description

### template<class UnaryFunction, class Expr>
class rheolef::details::field_expr_v2_nonlinear_node_unary< UnaryFunction, Expr >

Definition at line 59 of file field_expr_recursive.h.

## Member Typedef Documentation

## size_type

using size_type = geo_element::size_type

Definition at line 63 of file field_expr_recursive.h.

## memory_type

using memory_type = typename Expr::memory_type

Definition at line 64 of file field_expr_recursive.h.

## result_type

using result_type = typename details::generic_unary_traits<UnaryFunction>::template result_hint<typename Expr::result_type>::type

Definition at line 65 of file field_expr_recursive.h.

## value_type

using value_type = result_type

Definition at line 66 of file field_expr_recursive.h.

## scalar_type

using scalar_type = typename scalar_traits<value_type>::type

Definition at line 67 of file field_expr_recursive.h.

## float_type

using float_type = typename float_traits<scalar_type>::type

Definition at line 68 of file field_expr_recursive.h.

## self_type

using self_type = field_expr_v2_nonlinear_node_unary<UnaryFunction,Expr>

Definition at line 69 of file field_expr_recursive.h.

## is_affine_homogeneous

using is_affine_homogeneous = and_type< or_type< std::is_same<UnaryFunction,details::unary_plus> ,std::is_same<UnaryFunction,details::negate> ,std::is_same<UnaryFunction,details::binder_first <details::plus, scalar_type> > ,std::is_same<UnaryFunction,details::binder_second<details::plus, scalar_type> > ,std::is_same<UnaryFunction,details::binder_first <details::minus, scalar_type> > ,std::is_same<UnaryFunction,details::binder_second<details::minus, scalar_type> > ,std::is_same<UnaryFunction,details::binder_first <details::multiplies,scalar_type> > ,std::is_same<UnaryFunction,details::binder_second<details::multiplies,scalar_type> > ,std::is_same<UnaryFunction,details::binder_second<details::divides, scalar_type> > > ,is_field_expr_affine_homogeneous<Expr> >

Definition at line 79 of file field_expr_recursive.h.

## Constructor & Destructor Documentation

## field_expr_v2_nonlinear_node_unary()

field_expr_v2_nonlinear_node_unary | ( | const UnaryFunction & | f,
|  | const Expr & | expr
| ) |  |

Definition at line 388 of file field_expr_recursive.h.

## Member Function Documentation

## have_homogeneous_space()

bool have_homogeneous_space | ( | space_basic< scalar_type, memory_type > & | Vh | ) | const

Definition at line 95 of file field_expr_recursive.h.

## begin_dof()

const_iterator begin_dof | ( |  | ) | const

Definition at line 114 of file field_expr_recursive.h.

## expr()

const Expr& expr | ( |  | ) | const

Definition at line 122 of file field_expr_recursive.h.

## valued_tag()

space_constant::valued_type valued_tag | ( |  | ) | const

Definition at line 124 of file field_expr_recursive.h.

## initialize() [1/2]

void initialize | ( | const piola_on_pointset< float_type > & | pops,
|  | const integrate_option & | iopt
| ) |  | const

Definition at line 130 of file field_expr_recursive.h.

## initialize() [2/2]

void initialize | ( | const space_basic< float_type, memory_type > & | Xh,
|  | const piola_on_pointset< float_type > & | pops,
|  | const integrate_option & | iopt
| ) |  | const

Definition at line 135 of file field_expr_recursive.h.

## evaluate_call() [1/2]

void evaluate_call | ( | const geo_basic< float_type, M > & | omega_K,
|  | const geo_element & | K,
|  | Eigen::Matrix< Result, Eigen::Dynamic, 1 > & | value
| ) |  | const

Definition at line 208 of file field_expr_recursive.h.

## evaluate_call() [2/2]

void evaluate_call | ( | const geo_basic< float_type, M > & | omega_K,
|  | const geo_element & | K,
|  | const side_information_type & | sid,
|  | Eigen::Matrix< Result, Eigen::Dynamic, 1 > & | value
| ) |  | const

Definition at line 226 of file field_expr_recursive.h.

## Member Data Documentation

## valued_hint

const space_constant::valued_type valued_hint = space_constant::valued_tag_traits<result_type>::value

static

Definition at line 121 of file field_expr_recursive.h.

## _expr

_RHEOLEF_evaluate_switch_specialization (space_constant::scalar,T) _RHEOLEF_evaluate_switch_specialization(space_constant Expr _expr

Definition at line 367 of file field_expr_recursive.h.

## _scalar_val

std::array< Eigen::Matrix<scalar_type,Eigen::Dynamic,1> ,reference_element::max_variant> _scalar_val

mutable

Definition at line 372 of file field_expr_recursive.h.

## _vector_val

std::array< Eigen::Matrix<point_basic<scalar_type>,Eigen::Dynamic,1> ,reference_element::max_variant> _vector_val

mutable

Definition at line 375 of file field_expr_recursive.h.

## _tensor_val

std::array< Eigen::Matrix<tensor_basic<scalar_type>,Eigen::Dynamic,1> ,reference_element::max_variant> _tensor_val

mutable

Definition at line 378 of file field_expr_recursive.h.

## _tensor3_val

std::array< Eigen::Matrix<tensor3_basic<scalar_type>,Eigen::Dynamic,1> ,reference_element::max_variant> _tensor3_val

mutable

Definition at line 381 of file field_expr_recursive.h.

## _tensor4_val

std::array< Eigen::Matrix<tensor4_basic<scalar_type>,Eigen::Dynamic,1> ,reference_element::max_variant> _tensor4_val

mutable

Definition at line 384 of file field_expr_recursive.h.

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

- /build/rheolef-FQTnje/rheolef-7.1/main/lib/field_expr_recursive.h