Reference documentation for deal.II version Git 4abc4a1666 2020-07-04 19:58:34 +0200
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
types.h
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2009 - 2020 by the deal.II authors
4 //
5 // This file is part of the deal.II library.
6 //
7 // The deal.II library is free software; you can use it, redistribute
8 // it, and/or modify it under the terms of the GNU Lesser General
9 // Public License as published by the Free Software Foundation; either
10 // version 2.1 of the License, or (at your option) any later version.
11 // The full text of the license can be found in the file LICENSE.md at
12 // the top level directory of deal.II.
13 //
14 // ---------------------------------------------------------------------
15 
16 #ifndef dealii_types_h
17 #define dealii_types_h
18 
19 
20 #include <deal.II/base/config.h>
21 
22 #include <cstdint>
23 
24 
26 
31 namespace types
32 {
43  using subdomain_id = unsigned int;
44 
48  using global_vertex_index = uint64_t;
49 
54 #define DEAL_II_VERTEX_INDEX_MPI_TYPE MPI_UINT64_T
55 
73 #ifdef DEAL_II_WITH_64BIT_INDICES
74  using global_dof_index = uint64_t;
75 #else
76  using global_dof_index = unsigned int;
77 #endif
78 
83 #ifdef DEAL_II_WITH_64BIT_INDICES
84 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UINT64_T
85 #else
86 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED
87 #endif
88 
102 #ifdef DEAL_II_WITH_64BIT_INDICES
103  using global_cell_index = uint64_t;
104 #else
105  using global_cell_index = unsigned int;
106 #endif
107 
115 
129  using boundary_id = unsigned int;
130 
141  using manifold_id = unsigned int;
142 
152  using material_id = unsigned int;
153 } // namespace types
154 
159 
160 
162 {
163  namespace types
164  {
165 #ifdef DEAL_II_WITH_64BIT_INDICES
166 
169  using int_type = long long int;
170 #else
171 
174  using int_type = int;
175 #endif
176  } // namespace types
177 } // namespace TrilinosWrappers
178 
179 
180 // this part of the namespace numbers got moved to the bottom types.h file,
181 // because otherwise we get a circular inclusion of config.h, types.h, and
182 // numbers.h
183 namespace numbers
184 {
191  static const unsigned int invalid_unsigned_int =
192  static_cast<unsigned int>(-1);
193 
201  static_cast<types::global_dof_index>(-1);
202 
207  static_cast<types::global_dof_index>(-1);
208 
216  static_cast<types::coarse_cell_id>(-1);
217 
224  static_cast<types::material_id>(-1);
225 
235  static_cast<types::boundary_id>(-1);
236 
251  static_cast<types::boundary_id>(-1);
252 
265  static_cast<types::manifold_id>(-1);
266 
274  static_cast<types::manifold_id>(-1);
275 
286  static_cast<types::subdomain_id>(-1);
287 
303  static_cast<types::subdomain_id>(-2);
304 } // namespace numbers
305 
307 
308 #endif
const types::global_dof_index invalid_size_type
Definition: types.h:200
const types::manifold_id flat_manifold_id
Definition: types.h:273
static const unsigned int invalid_unsigned_int
Definition: types.h:191
const types::coarse_cell_id invalid_coarse_cell_id
Definition: types.h:215
const types::subdomain_id invalid_subdomain_id
Definition: types.h:285
unsigned int global_cell_index
Definition: types.h:105
Definition: types.h:31
const types::boundary_id invalid_boundary_id
Definition: types.h:234
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:363
uint64_t global_vertex_index
Definition: types.h:48
unsigned int global_dof_index
Definition: types.h:76
const types::subdomain_id artificial_subdomain_id
Definition: types.h:302
const types::manifold_id invalid_manifold_id
Definition: types.h:264
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:362
const types::boundary_id internal_face_boundary_id
Definition: types.h:250
const types::global_dof_index invalid_dof_index
Definition: types.h:206
const types::material_id invalid_material_id
Definition: types.h:223
#define DEAL_II_DEPRECATED
Definition: config.h:152