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

Detailed Description

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

Definition at line 356 of file form_expr_variational.h.

Classes

struct  evaluate_switch
 

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 form_expr_v2_variational_binary_field< BinaryFunction, Expr1, Expr2 > self_type
 
typedef form_expr_v2_variational_binary_field< BinaryFunction, typename Expr1::dual_self_type, typename Expr2::dual_self_type > dual_self_type
 
typedef and_type< typenamedetails::generic_binary_traits< BinaryFunction >::is_symmetric::type, typenamedetails::is_equal< Expr1, typenameExpr2::dual_self_type >::type >::type maybe_symmetric
 

Public Member Functions

 form_expr_v2_variational_binary_field (const BinaryFunction &f, const Expr1 &expr1, const Expr2 &expr2)
 
form_expr_v2_variational_binary_field< BinaryFunction, Expr1, Expr2 > & operator= (const form_expr_v2_variational_binary_field< BinaryFunction, Expr1, Expr2 > &x)
 
const space_typeget_test_space () const
 
const space_typeget_trial_space () 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 ValueType , class Arg1 , class Arg2 >
void evaluate_internal (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, Eigen::Tensor< ValueType, 3 > &value) const
 
template<class ValueType , 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::Tensor< ValueType, 3 > &value) const
 
template<class ValueType >
void evaluate (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, Eigen::Tensor< ValueType, 3 > &value) const
 
template<class ValueType >
void evaluate_on_side (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, const side_information_type &sid, Eigen::Tensor< ValueType, 3 > &value) const
 
template<class ValueType >
bool valued_check () const
 

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 360 of file form_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 362 of file form_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 365 of file form_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 369 of file form_expr_variational.h.

◆ scalar_type

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

Definition at line 370 of file form_expr_variational.h.

◆ float_type

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

Definition at line 371 of file form_expr_variational.h.

◆ space_type

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

Definition at line 372 of file form_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 375 of file form_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 377 of file form_expr_variational.h.

◆ self_type

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

Definition at line 378 of file form_expr_variational.h.

◆ dual_self_type

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

Definition at line 380 of file form_expr_variational.h.

◆ maybe_symmetric

template<class BinaryFunction , class Expr1 , class Expr2 >
typedef and_type<typenamedetails::generic_binary_traits<BinaryFunction>::is_symmetric::type,typenamedetails::is_equal<Expr1,typenameExpr2::dual_self_type>::type>::type maybe_symmetric

Definition at line 385 of file form_expr_variational.h.

Constructor & Destructor Documentation

◆ form_expr_v2_variational_binary_field()

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

Definition at line 391 of file form_expr_variational.h.

Member Function Documentation

◆ operator=()

template<class BinaryFunction , class Expr1 , class Expr2 >
form_expr_v2_variational_binary_field< BinaryFunction, Expr1, Expr2 > & operator= ( const form_expr_v2_variational_binary_field< BinaryFunction, Expr1, Expr2 > &  x)

Definition at line 396 of file form_expr_variational.h.

◆ get_test_space()

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

Definition at line 401 of file form_expr_variational.h.

◆ get_trial_space()

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

Definition at line 405 of file form_expr_variational.h.

◆ n_derivative()

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

Definition at line 410 of file form_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 414 of file form_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 421 of file form_expr_variational.h.

◆ evaluate_internal()

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

Definition at line 431 of file form_expr_variational.h.

◆ evaluate_on_side_internal()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class ValueType , 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::Tensor< ValueType, 3 > &  value 
) const

Definition at line 470 of file form_expr_variational.h.

◆ evaluate()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class ValueType >
void evaluate ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
Eigen::Tensor< ValueType, 3 > &  value 
) const

Definition at line 536 of file form_expr_variational.h.

◆ evaluate_on_side()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class ValueType >
void evaluate_on_side ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
const side_information_type sid,
Eigen::Tensor< ValueType, 3 > &  value 
) const

Definition at line 557 of file form_expr_variational.h.

◆ valued_check()

template<class BinaryFunction , class Expr1 , class Expr2 >
template<class ValueType >
bool valued_check ( ) const

Definition at line 579 of file form_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 387 of file form_expr_variational.h.

◆ _f

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

Definition at line 594 of file form_expr_variational.h.

◆ _expr1

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

Definition at line 595 of file form_expr_variational.h.

◆ _expr2

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

Definition at line 596 of file form_expr_variational.h.


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