Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
field_expr_v2_nonlinear_terminal_field_rep< T, M, Diff >

Detailed Description

template<class T, class M, details::differentiate_option::type Diff>
class rheolef::details::field_expr_v2_nonlinear_terminal_field_rep< T, M, Diff >

Definition at line 632 of file field_expr_terminal.h.

Public Types

using size_type = geo_element::size_type
 
using memory_type = M
 
using scalar_type = T
 
using float_type = typename float_traits< T >::type
 
using result_type = typename std::conditional< Diff==details::differentiate_option::divergence,T,undeterminated_basic< T > >::type
 
using value_type = result_type
 
using const_iterator = typename field_basic< T, M >::const_iterator
 

Public Member Functions

template<class Expr , class Sfinae = typename std::enable_if<details::has_field_rdof_interface<Expr>::value>::type>
 field_expr_v2_nonlinear_terminal_field_rep (const Expr &expr, const differentiate_option &gopt)
 
bool have_homogeneous_space (space_basic< scalar_type, memory_type > &Vh) const
 
const_iterator begin_dof () const
 
space_constant::valued_type valued_tag () const
 
void initialize (const piola_on_pointset< T > &pops, const integrate_option &iopt)
 
void initialize (const space_basic< T, M > &Xh, const piola_on_pointset< float_type > &pops, const integrate_option &iopt)
 
const geo_elementget_side (const geo_element &K, const side_information_type &sid) const
 
template<class Value >
void evaluate (const geo_basic< float_type, memory_type > &omega_K, const geo_element &K, Eigen::Matrix< Value, Eigen::Dynamic, 1 > &value) const
 
template<class Value >
void evaluate_on_side (const geo_basic< float_type, memory_type > &omega_L, const geo_element &L, const side_information_type &sid, Eigen::Matrix< Value, Eigen::Dynamic, 1 > &value) const
 
template<class Value >
bool valued_check () const
 

Public Attributes

differentiate_option _gopt
 
field_basic< T, M_uh
 
test_basic< T, M, details::vf_tag_01_u_test
 
bool _use_dom2bgd
 
bool _use_bgd2dom
 
bool _have_dg_on_sides
 
reference_element _tilde_L
 
basis_on_pointset< T_piola_on_geo_basis
 
std::vector< size_type_dis_inod_geo
 
bool _need_vector_piola
 
std::array< Eigen::Matrix< T, Eigen::Dynamic, 1 >,reference_element::max_variant_scalar_val
 
std::array< Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 >,reference_element::max_variant_vector_val
 
std::array< Eigen::Matrix< tensor_basic< T >, Eigen::Dynamic, 1 >,reference_element::max_variant_tensor_val
 
std::array< Eigen::Matrix< tensor3_basic< T >, Eigen::Dynamic, 1 >,reference_element::max_variant_tensor3_val
 
std::array< Eigen::Matrix< tensor4_basic< T >, Eigen::Dynamic, 1 >,reference_element::max_variant_tensor4_val
 

Static Public Attributes

static const space_constant::valued_type valued_hint = space_constant::last_valued
 

Member Typedef Documentation

◆ size_type

Definition at line 636 of file field_expr_terminal.h.

◆ memory_type

template<class T , class M , details::differentiate_option::type Diff>
using memory_type = M

Definition at line 637 of file field_expr_terminal.h.

◆ scalar_type

template<class T , class M , details::differentiate_option::type Diff>
using scalar_type = T

Definition at line 638 of file field_expr_terminal.h.

◆ float_type

template<class T , class M , details::differentiate_option::type Diff>
using float_type = typename float_traits<T>::type

Definition at line 639 of file field_expr_terminal.h.

◆ result_type

template<class T , class M , details::differentiate_option::type Diff>
using result_type = typename std::conditional< Diff == details::differentiate_option::divergence ,T ,undeterminated_basic<T> >::type

Definition at line 640 of file field_expr_terminal.h.

◆ value_type

template<class T , class M , details::differentiate_option::type Diff>
using value_type = result_type

Definition at line 645 of file field_expr_terminal.h.

◆ const_iterator

template<class T , class M , details::differentiate_option::type Diff>
using const_iterator = typename field_basic<T,M>::const_iterator

Definition at line 674 of file field_expr_terminal.h.

Constructor & Destructor Documentation

◆ field_expr_v2_nonlinear_terminal_field_rep()

template<class T , class M , details::differentiate_option::type Diff>
template<class Expr , class Sfinae >
field_expr_v2_nonlinear_terminal_field_rep ( const Expr &  expr,
const differentiate_option gopt 
)
explicit

Definition at line 745 of file field_expr_terminal.h.

Member Function Documentation

◆ have_homogeneous_space()

template<class T , class M , details::differentiate_option::type Diff>
bool have_homogeneous_space ( space_basic< scalar_type, memory_type > &  Vh) const

Definition at line 669 of file field_expr_terminal.h.

◆ begin_dof()

template<class T , class M , details::differentiate_option::type Diff>
const_iterator begin_dof ( ) const

Definition at line 675 of file field_expr_terminal.h.

◆ valued_tag()

template<class T , class M , details::differentiate_option::type Diff>
space_constant::valued_type valued_tag ( ) const

Definition at line 449 of file field_expr_terminal.cc.

◆ initialize() [1/2]

template<class T , class M , details::differentiate_option::type Diff>
void initialize ( const piola_on_pointset< T > &  pops,
const integrate_option iopt 
)

Definition at line 402 of file field_expr_terminal.cc.

◆ initialize() [2/2]

template<class T , class M , details::differentiate_option::type Diff>
void initialize ( const space_basic< T, M > &  Xh,
const piola_on_pointset< float_type > &  pops,
const integrate_option iopt 
)

Definition at line 411 of file field_expr_terminal.cc.

◆ get_side()

template<class T , class M , details::differentiate_option::type Diff>
const geo_element & get_side ( const geo_element K,
const side_information_type sid 
) const

◆ evaluate()

template<class T , class M , details::differentiate_option::type Diff>
template<class Value >
void evaluate ( const geo_basic< float_type, memory_type > &  omega_K,
const geo_element K,
Eigen::Matrix< Value, Eigen::Dynamic, 1 > &  value 
) const

Definition at line 424 of file field_expr_terminal.cc.

◆ evaluate_on_side()

template<class T , class M , details::differentiate_option::type Diff>
template<class Value >
void evaluate_on_side ( const geo_basic< float_type, memory_type > &  omega_L,
const geo_element L,
const side_information_type sid,
Eigen::Matrix< Value, Eigen::Dynamic, 1 > &  value 
) const

Definition at line 436 of file field_expr_terminal.cc.

◆ valued_check()

template<class T , class M , details::differentiate_option::type Diff>
template<class Value >
bool valued_check ( ) const

Definition at line 771 of file field_expr_terminal.h.

Member Data Documentation

◆ valued_hint

template<class T , class M , details::differentiate_option::type Diff>
const space_constant::valued_type valued_hint = space_constant::last_valued
static

Definition at line 681 of file field_expr_terminal.h.

◆ _gopt

template<class T , class M , details::differentiate_option::type Diff>
differentiate_option _gopt

Definition at line 713 of file field_expr_terminal.h.

◆ _uh

template<class T , class M , details::differentiate_option::type Diff>
field_basic<T,M> _uh

Definition at line 714 of file field_expr_terminal.h.

◆ _u_test

template<class T , class M , details::differentiate_option::type Diff>
test_basic<T,M,details::vf_tag_01> _u_test

Definition at line 715 of file field_expr_terminal.h.

◆ _use_dom2bgd

template<class T , class M , details::differentiate_option::type Diff>
bool _use_dom2bgd
mutable

Definition at line 716 of file field_expr_terminal.h.

◆ _use_bgd2dom

template<class T , class M , details::differentiate_option::type Diff>
bool _use_bgd2dom
mutable

Definition at line 717 of file field_expr_terminal.h.

◆ _have_dg_on_sides

template<class T , class M , details::differentiate_option::type Diff>
bool _have_dg_on_sides
mutable

Definition at line 718 of file field_expr_terminal.h.

◆ _tilde_L

template<class T , class M , details::differentiate_option::type Diff>
reference_element _tilde_L
mutable

Definition at line 719 of file field_expr_terminal.h.

◆ _piola_on_geo_basis

template<class T , class M , details::differentiate_option::type Diff>
basis_on_pointset<T> _piola_on_geo_basis
mutable

Definition at line 721 of file field_expr_terminal.h.

◆ _dis_inod_geo

template<class T , class M , details::differentiate_option::type Diff>
std::vector<size_type> _dis_inod_geo
mutable

Definition at line 722 of file field_expr_terminal.h.

◆ _need_vector_piola

template<class T , class M , details::differentiate_option::type Diff>
bool _need_vector_piola

Definition at line 723 of file field_expr_terminal.h.

◆ _scalar_val

template<class T , class M , details::differentiate_option::type Diff>
std::array< Eigen::Matrix<T,Eigen::Dynamic,1> ,reference_element::max_variant> _scalar_val
mutable

Definition at line 727 of file field_expr_terminal.h.

◆ _vector_val

template<class T , class M , details::differentiate_option::type Diff>
std::array< Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1> ,reference_element::max_variant> _vector_val
mutable

Definition at line 730 of file field_expr_terminal.h.

◆ _tensor_val

template<class T , class M , details::differentiate_option::type Diff>
std::array< Eigen::Matrix<tensor_basic<T>,Eigen::Dynamic,1> ,reference_element::max_variant> _tensor_val
mutable

Definition at line 733 of file field_expr_terminal.h.

◆ _tensor3_val

template<class T , class M , details::differentiate_option::type Diff>
std::array< Eigen::Matrix<tensor3_basic<T>,Eigen::Dynamic,1> ,reference_element::max_variant> _tensor3_val
mutable

Definition at line 736 of file field_expr_terminal.h.

◆ _tensor4_val

template<class T , class M , details::differentiate_option::type Diff>
std::array< Eigen::Matrix<tensor4_basic<T>,Eigen::Dynamic,1> ,reference_element::max_variant> _tensor4_val
mutable

Definition at line 739 of file field_expr_terminal.h.


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