Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
field_expr_v2_variational_binary< BinaryFunction, Expr1, Expr2 >

Detailed Description

template<class BinaryFunction, class Expr1, class Expr2>
class rheolef::details::field_expr_v2_variational_binary< BinaryFunction, Expr1, Expr2 >

Definition at line 332 of file field_expr_variational.h.

Classes

struct  evaluate_call_check
 
struct  evaluate_call_check< Result, Arg1, Arg2, std::true_type >
 
struct  evaluate_switch
 
struct  evaluate_switch< This, Result, Arg1, Arg2, std::false_type, std::false_type >
 
struct  evaluate_switch< This, Result, Arg1, Arg2, std::false_type, std::true_type >
 
struct  evaluate_switch< This, Result, Arg1, Arg2, std::true_type, std::false_type >
 
struct  evaluate_switch< This, Result, Arg1, Arg2, std::true_type, std::true_type >
 
struct  hint
 

Public Types

typedef geo_element::size_type size_type
 
typedef promote_memory< typenameExpr1::memory_type, typenameExpr2::memory_type >::type memory_type
 
typedef details::generic_binary_traits< BinaryFunction >::template result_hint< typenameExpr1::value_type, typenameExpr2::value_type >::type result_hint
 
typedef details::generic_binary_traits< BinaryFunction >::template hint< typenameExpr1::value_type, typenameExpr2::value_type, result_hint >::result_type value_type
 
typedef scalar_traits< value_type >::type scalar_type
 
typedef float_traits< value_type >::type float_type
 
typedef space_basic< scalar_type, memory_typespace_type
 
typedef details::bf_vf_tag< BinaryFunction, typenameExpr1::vf_tag_type, typenameExpr2::vf_tag_type >::type vf_tag_type
 
typedef details::dual_vf_tag< vf_tag_type >::type vf_dual_tag_type
 
typedef field_expr_v2_variational_binary< BinaryFunction, Expr1, Expr2 > self_type
 
typedef field_expr_v2_variational_binary< BinaryFunction, typename Expr1::dual_self_type, typename Expr2::dual_self_type > dual_self_type
 

Public Member Functions

 field_expr_v2_variational_binary (const BinaryFunction &f, const Expr1 &expr1, const Expr2 &expr2)
 
const space_typeget_vf_space () const
 
space_constant::valued_type valued_tag () const
 
size_type n_derivative () const
 
void initialize (const piola_on_pointset< float_type > &pops, const integrate_option &iopt)
 
void initialize (const band_basic< float_type, memory_type > &gh, const piola_on_pointset< float_type > &pops, const integrate_option &iopt)
 
template<class Result , class Arg1 , class Arg2 >
void evaluate_internal (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &value) const
 
template<class Result , class Arg1 , class Arg2 >
void evaluate_on_side_internal (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, const side_information_type &sid, Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &value, bool do_local_component_assembly) const
 
template<class Result >
void evaluate (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &value) const
 
template<class Result >
void evaluate_on_side (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, const side_information_type &sid, Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &value, bool do_local_component_assembly) const
 
template<class Result >
void valued_check () const
 

Static Public Member Functions

static bool have_test_space ()
 

Static Public Attributes

static const space_constant::valued_type valued_hint = space_constant::valued_tag_traits<value_type>::value
 

Protected Attributes

BinaryFunction _f
 
Expr1 _expr1
 
Expr2 _expr2
 

Member Typedef Documentation

◆ size_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef geo_element::size_type size_type

Definition at line 336 of file field_expr_variational.h.

◆ memory_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef promote_memory<typenameExpr1::memory_type,typenameExpr2::memory_type>::type memory_type

Definition at line 338 of file field_expr_variational.h.

◆ result_hint

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef details::generic_binary_traits<BinaryFunction>::template result_hint<typenameExpr1::value_type,typenameExpr2::value_type>::type result_hint

Definition at line 341 of file field_expr_variational.h.

◆ value_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef details::generic_binary_traits<BinaryFunction>::template hint<typenameExpr1::value_type,typenameExpr2::value_type,result_hint>::result_type value_type

Definition at line 345 of file field_expr_variational.h.

◆ scalar_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef scalar_traits<value_type>::type scalar_type

Definition at line 346 of file field_expr_variational.h.

◆ float_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef float_traits<value_type>::type float_type

Definition at line 347 of file field_expr_variational.h.

◆ space_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef space_basic<scalar_type,memory_type> space_type

Definition at line 348 of file field_expr_variational.h.

◆ vf_tag_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef details::bf_vf_tag<BinaryFunction,typenameExpr1::vf_tag_type,typenameExpr2::vf_tag_type>::type vf_tag_type

Definition at line 351 of file field_expr_variational.h.

◆ vf_dual_tag_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef details::dual_vf_tag<vf_tag_type>::type vf_dual_tag_type

Definition at line 353 of file field_expr_variational.h.

◆ self_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef field_expr_v2_variational_binary<BinaryFunction,Expr1,Expr2> self_type

Definition at line 354 of file field_expr_variational.h.

◆ dual_self_type

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef field_expr_v2_variational_binary<BinaryFunction,typename Expr1::dual_self_type,typename Expr2::dual_self_type> dual_self_type

Definition at line 356 of file field_expr_variational.h.

Constructor & Destructor Documentation

◆ field_expr_v2_variational_binary()

template<class BinaryFunction , class Expr1 , class Expr2 >
field_expr_v2_variational_binary ( const BinaryFunction &  f,
const Expr1 &  expr1,
const Expr2 &  expr2 
)

Definition at line 360 of file field_expr_variational.h.

Member Function Documentation

◆ have_test_space()

template<class BinaryFunction , class Expr1 , class Expr2 >
static bool have_test_space ( )
static

Definition at line 367 of file field_expr_variational.h.

◆ get_vf_space()

template<class BinaryFunction , class Expr1 , class Expr2 >
const space_type & get_vf_space ( ) const

Definition at line 368 of file field_expr_variational.h.

◆ valued_tag()

template<class BinaryFunction , class Expr1 , class Expr2 >
space_constant::valued_type valued_tag ( ) const

Definition at line 370 of file field_expr_variational.h.

◆ n_derivative()

template<class BinaryFunction , class Expr1 , class Expr2 >
size_type n_derivative ( ) const

Definition at line 373 of file field_expr_variational.h.

◆ initialize() [1/2]

template<class BinaryFunction , class Expr1 , class Expr2 >
void initialize ( const piola_on_pointset< float_type > &  pops,
const integrate_option iopt 
)

Definition at line 378 of file field_expr_variational.h.

◆ initialize() [2/2]

template<class BinaryFunction , class Expr1 , class Expr2 >
void initialize ( const band_basic< float_type, memory_type > &  gh,
const piola_on_pointset< float_type > &  pops,
const integrate_option iopt 
)

Definition at line 382 of file field_expr_variational.h.

◆ evaluate_internal()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class Result , class Arg1 , class Arg2 >
void evaluate_internal ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &  value 
) const

Definition at line 443 of file field_expr_variational.h.

◆ evaluate_on_side_internal()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class Result , class Arg1 , class Arg2 >
void evaluate_on_side_internal ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
const side_information_type sid,
Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &  value,
bool  do_local_component_assembly 
) const

Definition at line 455 of file field_expr_variational.h.

◆ evaluate()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class Result >
void evaluate ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &  value 
) const

Definition at line 697 of file field_expr_variational.h.

◆ evaluate_on_side()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class Result >
void evaluate_on_side ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
const side_information_type sid,
Eigen::Matrix< Result, Eigen::Dynamic, Eigen::Dynamic > &  value,
bool  do_local_component_assembly 
) const

Definition at line 710 of file field_expr_variational.h.

◆ valued_check()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class Result >
void valued_check ( ) const

Definition at line 725 of file field_expr_variational.h.

Member Data Documentation

◆ valued_hint

template<class BinaryFunction , class Expr1 , class Expr2 >
const space_constant::valued_type valued_hint = space_constant::valued_tag_traits<value_type>::value
static

Definition at line 369 of file field_expr_variational.h.

◆ _f

template<class BinaryFunction , class Expr1 , class Expr2 >
BinaryFunction _f
protected

Definition at line 733 of file field_expr_variational.h.

◆ _expr1

template<class BinaryFunction , class Expr1 , class Expr2 >
Expr1 _expr1
protected

Definition at line 734 of file field_expr_variational.h.

◆ _expr2

template<class BinaryFunction , class Expr1 , class Expr2 >
Expr2 _expr2
protected

Definition at line 735 of file field_expr_variational.h.


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