NiHu
2.0
lib_element.hpp
Go to the documentation of this file.
1
// This file is a part of NiHu, a C++ BEM template library.
2
//
3
// Copyright (C) 2012-2014 Peter Fiala <fiala@hit.bme.hu>
4
// Copyright (C) 2012-2014 Peter Rucz <rucz@hit.bme.hu>
5
//
6
// This program is free software: you can redistribute it and/or modify
7
// it under the terms of the GNU General Public License as published by
8
// the Free Software Foundation, either version 3 of the License, or
9
// (at your option) any later version.
10
//
11
// This program is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
// GNU General Public License for more details.
15
//
16
// You should have received a copy of the GNU General Public License
17
// along with this program. If not, see <http://www.gnu.org/licenses/>.
18
24
#ifndef LIB_ELEMENT_HPP_INCLUDED
25
#define LIB_ELEMENT_HPP_INCLUDED
26
27
#include "../core/element.hpp"
28
#include "../util/type2tag.hpp"
29
#include "
lib_shape.hpp
"
30
31
namespace
NiHu
32
{
33
35
typedef
surface_element<line_1_shape_set, space_2d<>::scalar_t
>
line_1_elem
;
36
38
typedef
surface_element<line_2_shape_set, space_2d<>::scalar_t
>
line_2_elem
;
39
41
typedef
surface_element<tria_1_shape_set, space_3d<>::scalar_t
>
tria_1_elem
;
42
44
typedef
surface_element<tria_2_shape_set, space_3d<>::scalar_t
>
tria_2_elem
;
45
47
typedef
surface_element<quad_1_shape_set, space_3d<>::scalar_t
>
quad_1_elem
;
48
50
typedef
surface_element<quad_2_shape_set, space_3d<>::scalar_t
>
quad_2_elem
;
51
53
typedef
surface_element<quad_28_shape_set, space_3d<>::scalar_t
>
quad_28_elem
;
54
55
57
typedef
volume_element<line_1_shape_set, space_1d<>::scalar_t
>
line_1_volume_elem
;
58
60
typedef
volume_element<tria_1_shape_set, space_2d<>::scalar_t
>
tria_1_volume_elem
;
61
63
typedef
volume_element<quad_1_shape_set, space_2d<>::scalar_t
>
quad_1_volume_elem
;
64
65
typedef
type2tag<line_1_elem>
line_1_tag
;
66
typedef
type2tag<line_2_elem>
line_2_tag
;
67
typedef
type2tag<tria_1_elem>
tria_1_tag
;
68
typedef
type2tag<tria_2_elem>
tria_2_tag
;
69
typedef
type2tag<quad_1_elem>
quad_1_tag
;
70
typedef
type2tag<quad_2_elem>
quad_2_tag
;
71
typedef
type2tag<quad_28_elem>
quad_28_tag
;
72
typedef
type2tag<line_1_volume_elem>
line_1_volume_tag
;
73
typedef
type2tag<tria_1_volume_elem>
tria_1_volume_tag
;
74
typedef
type2tag<quad_1_volume_elem>
quad_1_volume_tag
;
75
76
}
77
78
#endif // LIB_ELEMENT_HPP_INCLUDED
79
NiHu::type2tag
Metafunction assigning a tag to a type.
Definition:
type2tag.hpp:17
NiHu::volume_element
class describing a volume element that has no normal vector
Definition:
element.hpp:455
lib_shape.hpp
definition of shape function sets
NiHu::surface_element
class describing a surface element that provides a normal vector
Definition:
element.hpp:451
src
library
lib_element.hpp
Generated on Wed Dec 4 2024 01:00:13 for NiHu by
1.8.18