Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
rheolef

Detailed Description

see the rheolef page for the full documentation

Public Types

typedef double Float
 see the Float page for the full documentation
 
template<class T >
using heap_allocator = std::allocator< T >
 
typedef solver_basic< Floatsolver
 
typedef solver_abtb_basic< Float, rheo_default_memory_modelsolver_abtb
 
using solver_option_type = solver_option
 
using quadrature_option = integrate_option
 
using quadrature_option_type = integrate_option
 
using integrate_option_type = integrate_option
 
typedef point_basic< Floatpoint
 
typedef tensor_basic< Floattensor
 
typedef tensor3_basic< Floattensor3
 
typedef tensor4_basic< Floattensor4
 
typedef ad3_basic< Floatad3
 
typedef basis_basic< Floatbasis
 
typedef size_t size_type
 
typedef basis_raw_basic< Floatbasis_raw
 
using adapt_option_type = adapt_option
 
typedef band_basic< Floatband
 
typedef branch_basic< Floatbranch
 
typedef characteristic_basic< Floatcharacteristic
 
using continuation_option_type = continuation_option
 
typedef domain_indirect_basic< rheo_default_memory_modeldomain_indirect
 
typedef field_basic< Floatfield
 see the field page for the full documentation
 
typedef field_basic< Float, sequentialfield_sequential
 
using result_type = typename details::generic_binary_traits< BinaryFunction >::template result_hint< typename Expr1::result_type, typename Expr2::result_type >::type
 
using value_type = result_type
 
using scalar_type = typename scalar_traits< value_type >::type
 
using float_type = typename float_traits< value_type >::type
 
using memory_type = typename Expr1::memory_type
 
using is_affine_homogeneous = or_type< and_type< or_type< std::is_same< BinaryFunction, details::plus >,std::is_same< BinaryFunction, details::minus > >,is_field_expr_affine_homogeneous< Expr1 >,is_field_expr_affine_homogeneous< Expr2 > >,and_type< or_type< std::is_same< BinaryFunction, details::multiplies >,std::is_same< BinaryFunction, details::divides > >,is_field_expr_affine_homogeneous< Expr1 >,is_field_expr_v2_constant< Expr2 > >,and_type< std::is_same< BinaryFunction, details::multiplies >,is_field_expr_v2_constant< Expr1 >,is_field_expr_affine_homogeneous< Expr2 > > >
 
typedef form_basic< Float, rheo_default_memory_modelform
 
typedef geo_basic< Float, rheo_default_memory_modelgeo
 
typedef geo domain
 
typedef int my_idxtype
 
typedef my_idxtype idxtype
 
typedef struct KeyValueType KeyValueType
 
typedef geo_element_auto< heap_allocator< geo_element::size_type > > element_type
 
using level_set_option_type = level_set_option
 
typedef limiter_option limiter_option_type
 
typedef problem_basic< Floatproblem
 
typedef problem_mixed_basic< Floatproblem_mixed
 see the problem_mixed page for the full documentation
 
typedef size_t size_type
 
typedef std::list< tree_typelist_type
 
typedef int(* parse_type) (void)
 
typedef size_t size_type
 
typedef test_basic< Float, rheo_default_memory_model, details::vf_tag_01test
 
typedef test_basic< Float, rheo_default_memory_model, details::vf_tag_10trial
 
using point = point_basic< double >
 
using point = point_basic< double >
 
typedef int orientation_type
 
typedef int shift_type
 

Public Attributes

 distributed
 
idiststream din (cin)
 see the diststream page for the full documentation
 
odiststream dout (cout)
 see the diststream page for the full documentation
 
odiststream dlog (clog)
 see the diststream page for the full documentation
 
odiststream derr (cerr)
 see the diststream page for the full documentation
 
rheolef::std Expr1
 dot(x,y): see the expression page for the full documentation
 
rheolef::std value
 
constexpr size_t reference_element__p = 0
 
constexpr size_t reference_element__e = 1
 
constexpr size_t reference_element__t = 2
 
constexpr size_t reference_element__q = 3
 
constexpr size_t reference_element__T = 4
 
constexpr size_t reference_element__P = 5
 
constexpr size_t reference_element__H = 6
 
constexpr size_t reference_element__max_variant = 7
 
const unsigned int tiny_size_max = 32
 
 point_basic< T >
 
tensor_basic< Ttensor3_basic< T >
 
rheolef::std BinaryFunction
 
rheolef::std size_type = geo_element::size_type
 
rheolef::space_base_rep< T, Mt = std::pair<size_t,size_t>
 
const char _reference_element_name [reference_element__max_variant]
 
gmsh_element_t gmsh_table []
 
const size_t gmshtype_max = sizeof(gmsh_table)/sizeof(gmsh_element_t)
 

Static Public Attributes

static iorheo::force_initialization dummy
 
static const char * rheo_path_name = "RHEOPATH"
 
static const char * default_rheo_path = "."
 
static char * rheo_path = 0
 
static const bool dont_gzip = false
 
static const char * static_family_name [quadrature_option::max_family+1]
 
static size_t _reference_element_dimension_by_variant [reference_element__max_variant] = {0, 1, 2, 2, 3, 3, 3}
 
static size_t _reference_element_n_edge_by_variant [reference_element__max_variant] = {0, 1, 3, 4, 6, 9, 12}
 
static size_t _reference_element_n_face_by_variant [reference_element__max_variant] = {0, 0, 1, 1, 4, 5, 6}
 
static const size_t _first_variant_by_dimension [5]
 
static family_index_option_type _current_fio
 
static size_type basis_line_no = 1
 
static size_type basis_n_error = 0
 
static std::string basis_input_string
 
static std::vector< std::string > symbol_table
 
static yyFlexLexer input_basis
 
static const char * static_node_name [basis_option::max_node+1]
 
static const char * static_raw_polynomial_name [basis_option::max_raw_polynomial+1]
 
static Float band_epsilon = 100*std::numeric_limits<Float>::epsilon()
 
static const space_constant::valued_type valued_hint = space_constant::valued_tag_traits<result_type>::value
 
static const char * label_variant []
 
static Float level_set_epsilon = 100*std::numeric_limits<Float>::epsilon()
 
static size_type space_constitution_line_no = 1
 
static size_type space_constitution_n_error = 0
 
static yyFlexLexer input_space_constitution
 
static tree_typeresult_ptr
 
static size_type space_constitution_old_line_no = 1
 
static size_type space_constitution_old_n_error = 0
 
static yyFlexLexer input_space_constitution_old
 
static std::set< size_t > empty_set
 
static vector< size_t > t_msh_inod2loc_inod
 
static vector< size_t > q_msh_inod2loc_inod
 
static vector< size_t > T_msh_inod2loc_inod
 

Protected Types

typedef space_basic< Floatspace
 

Protected Attributes

BinaryFunction _f
 
Expr1 _expr1
 
Expr2 _expr2
 
rheolef::std Function
 
rheolef::std functor_type
 
rheolef::std type
 

Member Typedef Documentation

◆ Float

typedef double Float

see the Float page for the full documentation

Definition at line 143 of file Float.h.

◆ heap_allocator

template<class T >
using heap_allocator = std::allocator<T>

Definition at line 65 of file heap_allocator.h.

◆ solver

Definition at line 292 of file solver.h.

◆ solver_abtb

◆ solver_option_type

Definition at line 220 of file solver_option.h.

◆ quadrature_option

Definition at line 186 of file integrate_option.h.

◆ quadrature_option_type

Definition at line 187 of file integrate_option.h.

◆ integrate_option_type

Definition at line 188 of file integrate_option.h.

◆ point [1/3]

Definition at line 163 of file point.h.

◆ tensor

Definition at line 181 of file tensor.h.

◆ tensor3

Definition at line 121 of file tensor3.h.

◆ tensor4

Definition at line 133 of file tensor4.h.

◆ ad3

typedef ad3_basic<Float> ad3

Definition at line 95 of file ad3.h.

◆ basis

Definition at line 683 of file basis.h.

◆ size_type [1/3]

typedef size_t size_type

Definition at line 76 of file basis_get.cc.

◆ basis_raw

typedef basis_raw_basic<Float> basis_raw

Definition at line 155 of file basis_raw.h.

◆ adapt_option_type

Definition at line 188 of file adapt.h.

◆ band

typedef band_basic<Float> band

Definition at line 125 of file band.h.

◆ branch

Definition at line 229 of file branch.h.

◆ characteristic

typedef characteristic_basic<Float> characteristic

Definition at line 218 of file characteristic.h.

◆ continuation_option_type

◆ domain_indirect

typedef domain_indirect_basic<rheo_default_memory_model> domain_indirect

Definition at line 338 of file domain_indirect.h.

◆ field

see the field page for the full documentation

Definition at line 511 of file field.h.

◆ field_sequential

typedef field_basic<Float,sequential> field_sequential

Definition at line 514 of file field.h.

◆ result_type

using result_type = typename details::generic_binary_traits<BinaryFunction>::template result_hint<typename Expr1::result_type,typename Expr2::result_type>::type

Definition at line 540 of file field_expr_recursive.h.

◆ value_type

using value_type = result_type

Definition at line 541 of file field_expr_recursive.h.

◆ scalar_type

using scalar_type = typename scalar_traits<value_type>::type

Definition at line 542 of file field_expr_recursive.h.

◆ float_type

using float_type = typename float_traits<value_type>::type

Definition at line 543 of file field_expr_recursive.h.

◆ memory_type

using memory_type = typename Expr1::memory_type

Definition at line 544 of file field_expr_recursive.h.

◆ is_affine_homogeneous

using is_affine_homogeneous = or_type< and_type< or_type< std::is_same<BinaryFunction,details::plus> ,std::is_same<BinaryFunction,details::minus> > ,is_field_expr_affine_homogeneous<Expr1> ,is_field_expr_affine_homogeneous<Expr2> > ,and_type< or_type< std::is_same<BinaryFunction,details::multiplies> ,std::is_same<BinaryFunction,details::divides> > ,is_field_expr_affine_homogeneous<Expr1> ,is_field_expr_v2_constant <Expr2> > ,and_type< std::is_same<BinaryFunction,details::multiplies> ,is_field_expr_v2_constant <Expr1> ,is_field_expr_affine_homogeneous<Expr2> > >

Definition at line 562 of file field_expr_recursive.h.

◆ form

Definition at line 309 of file form.h.

◆ geo

Definition at line 1575 of file geo.h.

◆ domain

typedef geo domain

Definition at line 58 of file geo_domain_indirect.h.

◆ my_idxtype

typedef int my_idxtype

Definition at line 28 of file geo_partition_scotch.h.

◆ idxtype

typedef my_idxtype idxtype

Definition at line 30 of file geo_partition_scotch.h.

◆ KeyValueType

typedef struct KeyValueType KeyValueType

Definition at line 122 of file geo_partition_scotch.h.

◆ element_type

Definition at line 347 of file level_set.cc.

◆ level_set_option_type

Definition at line 85 of file level_set.h.

◆ limiter_option_type

Definition at line 79 of file limiter.h.

◆ problem

typedef problem_basic<Float> problem

Definition at line 163 of file problem.h.

◆ problem_mixed

typedef problem_mixed_basic<Float> problem_mixed

see the problem_mixed page for the full documentation

Definition at line 236 of file problem_mixed.h.

◆ space

typedef space_basic<Float> space
protected

Definition at line 386 of file space.h.

◆ size_type [2/3]

typedef size_t size_type

Definition at line 52 of file space_constitution_get.cc.

◆ list_type

typedef std::list<tree_type> list_type

Definition at line 98 of file space_constitution_get.icc.

◆ parse_type

typedef int(* parse_type) (void)

Definition at line 107 of file space_constitution_get.icc.

◆ size_type [3/3]

typedef size_t size_type

Definition at line 52 of file space_constitution_old_get.cc.

◆ test

◆ trial

◆ point [2/3]

using point = point_basic<double>

Definition at line 68 of file field2gmsh_pos.cc.

◆ point [3/3]

using point = point_basic<double>

Definition at line 143 of file msh2geo.cc.

◆ orientation_type

typedef int orientation_type

Definition at line 190 of file msh2geo.cc.

◆ shift_type

typedef int shift_type

Definition at line 191 of file msh2geo.cc.

Member Data Documentation

◆ dummy

iorheo::force_initialization dummy
static

Definition at line 147 of file iorheo.cc.

◆ rheo_path_name

const char* rheo_path_name = "RHEOPATH"
static

Definition at line 283 of file rheostream.cc.

◆ default_rheo_path

const char* default_rheo_path = "."
static

Definition at line 284 of file rheostream.cc.

◆ rheo_path

char* rheo_path = 0
static

Definition at line 285 of file rheostream.cc.

◆ dont_gzip

const bool dont_gzip = false
static

Definition at line 192 of file rheostream.h.

◆ distributed

Definition at line 228 of file asr.cc.

◆ din

see the diststream page for the full documentation

Definition at line 464 of file diststream.h.

◆ dout

see the diststream page for the full documentation

Definition at line 467 of file diststream.h.

◆ dlog

see the diststream page for the full documentation

Definition at line 470 of file diststream.h.

◆ derr

see the diststream page for the full documentation

Definition at line 473 of file diststream.h.

◆ Expr1

rheolef::std Expr1

dot(x,y): see the expression page for the full documentation

◆ value

rheolef::std value

◆ static_family_name

const char* static_family_name[quadrature_option::max_family+1]
static
Initial value:
= {
"gauss" ,
"gauss_lobatto" ,
"gauss_radau" ,
"middle_edge" ,
"superconvergent" ,
"equispaced" ,
"undefined"
}

Definition at line 31 of file quadrature_rep.cc.

◆ reference_element__p

constexpr size_t reference_element__p = 0
constexpr

Definition at line 33 of file reference_element_aux.icc.

◆ reference_element__e

constexpr size_t reference_element__e = 1
constexpr

Definition at line 34 of file reference_element_aux.icc.

◆ reference_element__t

constexpr size_t reference_element__t = 2
constexpr

Definition at line 35 of file reference_element_aux.icc.

◆ reference_element__q

constexpr size_t reference_element__q = 3
constexpr

Definition at line 36 of file reference_element_aux.icc.

◆ reference_element__T

constexpr size_t reference_element__T = 4
constexpr

Definition at line 37 of file reference_element_aux.icc.

◆ reference_element__P

constexpr size_t reference_element__P = 5
constexpr

Definition at line 38 of file reference_element_aux.icc.

◆ reference_element__H

constexpr size_t reference_element__H = 6
constexpr

Definition at line 39 of file reference_element_aux.icc.

◆ reference_element__max_variant

constexpr size_t reference_element__max_variant = 7
constexpr

Definition at line 40 of file reference_element_aux.icc.

◆ _reference_element_dimension_by_variant

size_t _reference_element_dimension_by_variant[reference_element__max_variant] = {0, 1, 2, 2, 3, 3, 3}
static

Definition at line 52 of file reference_element_aux.icc.

◆ _reference_element_n_edge_by_variant

size_t _reference_element_n_edge_by_variant[reference_element__max_variant] = {0, 1, 3, 4, 6, 9, 12}
static

Definition at line 53 of file reference_element_aux.icc.

◆ _reference_element_n_face_by_variant

size_t _reference_element_n_face_by_variant[reference_element__max_variant] = {0, 0, 1, 1, 4, 5, 6}
static

Definition at line 54 of file reference_element_aux.icc.

◆ _first_variant_by_dimension

const size_t _first_variant_by_dimension[5]
static
Initial value:
= {
}
constexpr size_t reference_element__e
constexpr size_t reference_element__T
constexpr size_t reference_element__p
constexpr size_t reference_element__t
constexpr size_t reference_element__max_variant

Definition at line 151 of file reference_element_aux.icc.

◆ tiny_size_max

const unsigned int tiny_size_max = 32

Definition at line 36 of file tiny_matvec.h.

◆ _current_fio

static family_index_option_type _current_fio
static

Definition at line 50 of file basis_get.cc.

◆ basis_line_no

size_type basis_line_no = 1
static

Definition at line 78 of file basis_get.cc.

◆ basis_n_error

size_type basis_n_error = 0
static

Definition at line 79 of file basis_get.cc.

◆ basis_input_string

std::string basis_input_string
static

Definition at line 80 of file basis_get.cc.

◆ symbol_table

static std::vector< std::string > symbol_table
static

Definition at line 90 of file basis_get.cc.

◆ input_basis

yyFlexLexer input_basis
static

Definition at line 109 of file basis_get.cc.

◆ static_node_name

const char* static_node_name[basis_option::max_node+1]
static
Initial value:
= {
"equispaced" ,
"warburton" ,
"fekete" ,
"undefined"
}

Definition at line 31 of file basis_option.cc.

◆ static_raw_polynomial_name

const char* static_raw_polynomial_name[basis_option::max_raw_polynomial+1]
static
Initial value:
= {
"monomial" ,
"bernstein" ,
"dubiner" ,
"undefined"
}

Definition at line 37 of file basis_option.cc.

◆ point_basic< T >

Definition at line 134 of file piola_fem.h.

◆ tensor3_basic< T >

Definition at line 136 of file piola_fem.h.

◆ band_epsilon

Float band_epsilon = 100*std::numeric_limits<Float>::epsilon()
static

Definition at line 43 of file band.cc.

◆ BinaryFunction

rheolef::std BinaryFunction

◆ size_type

◆ valued_hint

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

Definition at line 619 of file field_expr_recursive.h.

◆ _f

BinaryFunction _f
protected

Definition at line 974 of file field_expr_recursive.h.

◆ _expr1

Expr1 _expr1
protected

Definition at line 975 of file field_expr_recursive.h.

◆ _expr2

Expr2 _expr2
protected

Definition at line 976 of file field_expr_recursive.h.

◆ Function

rheolef::std Function
protected

◆ functor_type

rheolef::std functor_type
protected

◆ type

rheolef::std type
protected

◆ label_variant

const char* label_variant[]
static
Initial value:
= {
"nodes",
"edges",
"triangles",
"quadrangles",
"tetrahedra",
"prisms",
"hexahedra"
}

Definition at line 26 of file geo_header.cc.

◆ level_set_epsilon

Float level_set_epsilon = 100*std::numeric_limits<Float>::epsilon()
static

Definition at line 82 of file level_set.cc.

◆ t

rheolef::space_base_rep< T, M > t = std::pair<size_t,size_t>

◆ space_constitution_line_no

size_type space_constitution_line_no = 1
static

Definition at line 54 of file space_constitution_get.cc.

◆ space_constitution_n_error

size_type space_constitution_n_error = 0
static

Definition at line 55 of file space_constitution_get.cc.

◆ input_space_constitution

yyFlexLexer input_space_constitution
static

Definition at line 77 of file space_constitution_get.cc.

◆ result_ptr

tree_type* result_ptr
static

Definition at line 100 of file space_constitution_get.icc.

◆ space_constitution_old_line_no

size_type space_constitution_old_line_no = 1
static

Definition at line 54 of file space_constitution_old_get.cc.

◆ space_constitution_old_n_error

size_type space_constitution_old_n_error = 0
static

Definition at line 55 of file space_constitution_old_get.cc.

◆ input_space_constitution_old

yyFlexLexer input_space_constitution_old
static

Definition at line 77 of file space_constitution_old_get.cc.

◆ empty_set

std::set<size_t> empty_set
static

Definition at line 59 of file space_seq.cc.

◆ _reference_element_name

const char _reference_element_name
Initial value:
= {
'p',
'e',
't',
'q',
'T',
'P',
'H'
}

Definition at line 78 of file field2gmsh_pos.cc.

◆ gmsh_table

gmsh_element_t gmsh_table[]

Definition at line 37 of file msh2geo_defs.icc.

◆ gmshtype_max

const size_t gmshtype_max = sizeof(gmsh_table)/sizeof(gmsh_element_t)

Definition at line 115 of file msh2geo_defs.icc.

◆ t_msh_inod2loc_inod

vector<size_t> t_msh_inod2loc_inod
static

Definition at line 120 of file msh2geo_node_renum.icc.

◆ q_msh_inod2loc_inod

vector<size_t> q_msh_inod2loc_inod
static

Definition at line 191 of file msh2geo_node_renum.icc.

◆ T_msh_inod2loc_inod

vector<size_t> T_msh_inod2loc_inod
static

Definition at line 268 of file msh2geo_node_renum.icc.


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