bitrl & cuberl Documentation
Simulation engine for reinforcement learning agents
Loading...
Searching...
No Matches
element_traits.h
Go to the documentation of this file.
1#ifndef ELEMENT_TRAITS_H
2#define ELEMENT_TRAITS_H
3
5
6namespace bitrl
7{
8namespace utils
9{
10namespace geom
11{
12
13template <int dim> class Element;
14template <int dim, int topodim> class FaceElement;
15
16template <typename ELEMENT_TYPE> struct element_traits;
17
34
51
52template <> struct element_traits<Element<3>>
53{
54
55 static const int dim_ = 3;
56 static const int topodim_ = 3;
57
62
67};
68
73template <> struct element_traits<FaceElement<2, 1>>
74{
75
76 static const int dim_ = 2;
77 static const int topodim_ = 1;
78
81 typedef const Node<2> *cedge_ptr_t;
82 typedef const Node<2> &cedge_ref_t;
83
86 typedef const Node<2> *cface_ptr_t;
87 typedef const Node<2> &cface_ref_t;
88};
89
94template <> struct element_traits<FaceElement<3, 1>>
95{
96
97 static const int dim_ = 3;
98 static const int topodim_ = 1;
99
102 typedef const Node<3> *cedge_ptr_t;
103 typedef const Node<3> &cedge_ref_t;
104
107 typedef const Node<3> *cface_ptr_t;
108 typedef const Node<3> &cface_ref_t;
109};
110
127
128} // namespace geom
129} // namespace utils
130} // namespace bitrl
131#endif
Wraps the notion of an element.
Definition element.h:30
Definition edge_face_selector.h:12
Wraps the notion of a node. A node is simply a point in dim-space that can hold dofs.
Definition node.h:24
Definition bitrl_consts.h:14
EdgeType< dim, 1 >::ref_t ref_t
Definition edge_face_selector.h:38
EdgeType< dim, 1 >::cptr_t cptr_t
Definition edge_face_selector.h:39
EdgeType< dim, 1 >::ptr_t ptr_t
Definition edge_face_selector.h:37
EdgeType< dim, 1 >::cref_t cref_t
Definition edge_face_selector.h:40
EdgeSelector< 1 >::cptr_t cface_ptr_t
Definition element_traits.h:31
EdgeSelector< 1 >::ptr_t face_ptr_t
Definition element_traits.h:29
EdgeSelector< 1 >::ref_t face_ref_t
Definition element_traits.h:30
EdgeSelector< 1 >::ptr_t edge_ptr_t
Definition element_traits.h:24
EdgeSelector< 1 >::cref_t cface_ref_t
Definition element_traits.h:32
EdgeSelector< 1 >::cref_t cedge_ref_t
Definition element_traits.h:27
EdgeSelector< 1 >::cptr_t cedge_ptr_t
Definition element_traits.h:26
EdgeSelector< 1 >::ref_t edge_ref_t
Definition element_traits.h:25
EdgeSelector< 2 >::ptr_t face_ptr_t
Definition element_traits.h:46
EdgeSelector< 2 >::cptr_t cface_ptr_t
Definition element_traits.h:48
EdgeSelector< 2 >::cref_t cface_ref_t
Definition element_traits.h:49
EdgeSelector< 2 >::ref_t face_ref_t
Definition element_traits.h:47
EdgeSelector< 2 >::ref_t edge_ref_t
Definition element_traits.h:42
EdgeSelector< 2 >::ptr_t edge_ptr_t
Definition element_traits.h:41
EdgeSelector< 2 >::cref_t cedge_ref_t
Definition element_traits.h:44
EdgeSelector< 2 >::cptr_t cedge_ptr_t
Definition element_traits.h:43
EdgeSelector< 3 >::cref_t cedge_ref_t
Definition element_traits.h:61
const FaceElement< 3, 2 > & cface_ref_t
Definition element_traits.h:66
EdgeSelector< 3 >::ptr_t edge_ptr_t
Definition element_traits.h:58
FaceElement< 3, 2 > * face_ptr_t
Definition element_traits.h:63
EdgeSelector< 3 >::ref_t edge_ref_t
Definition element_traits.h:59
FaceElement< 3, 2 > & face_ref_t
Definition element_traits.h:64
EdgeSelector< 3 >::cptr_t cedge_ptr_t
Definition element_traits.h:60
const FaceElement< 3, 2 > * cface_ptr_t
Definition element_traits.h:65
Node< 2 > * edge_ptr_t
Definition element_traits.h:79
Node< 2 > & face_ref_t
Definition element_traits.h:85
const Node< 2 > * cedge_ptr_t
Definition element_traits.h:81
const Node< 2 > & cface_ref_t
Definition element_traits.h:87
const Node< 2 > & cedge_ref_t
Definition element_traits.h:82
Node< 2 > * face_ptr_t
Definition element_traits.h:84
Node< 2 > & edge_ref_t
Definition element_traits.h:80
const Node< 2 > * cface_ptr_t
Definition element_traits.h:86
const Node< 3 > & cface_ref_t
Definition element_traits.h:108
const Node< 3 > * cface_ptr_t
Definition element_traits.h:107
Node< 3 > * face_ptr_t
Definition element_traits.h:105
const Node< 3 > * cedge_ptr_t
Definition element_traits.h:102
Node< 3 > * edge_ptr_t
Definition element_traits.h:100
const Node< 3 > & cedge_ref_t
Definition element_traits.h:103
Node< 3 > & face_ref_t
Definition element_traits.h:106
Node< 3 > & edge_ref_t
Definition element_traits.h:101
EdgeSelector< 3 >::cptr_t cedge_ptr_t
Definition element_traits.h:119
EdgeSelector< 3 >::ptr_t edge_ptr_t
Definition element_traits.h:117
EdgeSelector< 3 >::cptr_t cface_ptr_t
Definition element_traits.h:124
EdgeSelector< 3 >::cref_t cedge_ref_t
Definition element_traits.h:120
EdgeSelector< 3 >::cref_t cface_ref_t
Definition element_traits.h:125
EdgeSelector< 3 >::ptr_t face_ptr_t
Definition element_traits.h:122
EdgeSelector< 3 >::ref_t face_ref_t
Definition element_traits.h:123
EdgeSelector< 3 >::ref_t edge_ref_t
Definition element_traits.h:118
Definition element_traits.h:16