t8  1.2.0
t8code is a C library to manage a forest of adaptive space-trees of general element classes in parallel.
t8_dprism.h
Go to the documentation of this file.
1 /*
2  This file is part of t8code.
3  t8code is a C library to manage a collection (a forest) of multiple
4  connected adaptive space-trees of general element classes in parallel.
5 
6  Copyright (C) 2015 the developers
7 
8  t8code is free software; you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation; either version 2 of the License, or
11  (at your option) any later version.
12 
13  t8code is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with t8code; if not, write to the Free Software Foundation, Inc.,
20  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 */
22 
23 #ifndef T8_DPRISM_H
24 #define T8_DPRISM_H
25 
30 #include <t8.h>
33 
35 #define T8_DPRISM_CHILDREN 8
36 
38 #define T8_DPRISM_FACES 5
39 
41 #define T8_DPRISM_CORNERS 6
42 
44 #define T8_DPRISM_MAXLEVEL 21
45 
47 #define T8_DPRISM_ROOT_LEN (1 << (T8_DPRISM_MAXLEVEL))
48 
50 #define T8_DPRISM_LEN(l) (1 << (T8_DPRISM_MAXLEVEL - (l)))
51 
54 #define T8_DPRISM_ROOT_BY_QUAD_ROOT (1 << (P4EST_QMAXLEVEL - T8_DPRISM_MAXLEVEL))
55 
58 #define T8_DPRISM_ROOT_BY_DTRI_ROOT (1 << (T8_DTRI_MAXLEVEL - T8_DPRISM_MAXLEVEL))
59 
62 #define T8_DPRISM_ROOT_BY_DLINE_ROOT (1 << (T8_DLINE_MAXLEVEL - T8_DPRISM_MAXLEVEL))
63 
64 typedef int32_t t8_dprism_coord_t;
65 
66 typedef struct t8_dprism
67 {
68  t8_dline_t line; /*z coordinate + level */
69  t8_dtri_t tri; /*x,y coordinate + level + type */
70 }
72 
73 #endif /* T8_DPRISM_H */
Definition: t8_dline.h:53
Definition: t8_dprism.h:67
Definition: t8_dtri.h:66
This is the administrative header file for t8code.
TODO: document this.
TODO: document this.