Reference documentation for deal.II version Git f81eda9982 2020-03-28 21:30:57 -0400
\(\newcommand{\vcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\vcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
types.h
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2009 - 2018 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 <cstddef>
23 #include <cstdint>
24 
25 
26 DEAL_II_NAMESPACE_OPEN
27 
32 namespace types
33 {
44  using subdomain_id = unsigned int;
45 
49  using global_vertex_index = uint64_t;
50 
55 #define DEAL_II_VERTEX_INDEX_MPI_TYPE MPI_UINT64_T
56 
74 #ifdef DEAL_II_WITH_64BIT_INDICES
75  using global_dof_index = uint64_t;
76 #else
77  using global_dof_index = unsigned int;
78 #endif
79 
84 #ifdef DEAL_II_WITH_64BIT_INDICES
85 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UINT64_T
86 #else
87 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED
88 #endif
89 
103 #ifdef DEAL_II_WITH_64BIT_INDICES
104  using global_cell_index = uint64_t;
105 #else
106  using global_cell_index = unsigned int;
107 #endif
108 
114 
128  using boundary_id = unsigned int;
129 
140  using manifold_id = unsigned int;
141 
151  using material_id = unsigned int;
152 } // namespace types
153 
157 using TrilinosScalar = double;
158 
159 
161 {
162  namespace types
163  {
164 #ifdef DEAL_II_WITH_64BIT_INDICES
165 
168  using int_type = long long int;
169 #else
170 
173  using int_type = int;
174 #endif
175  } // namespace types
176 } // namespace TrilinosWrappers
177 
178 
179 // this part of the namespace numbers got moved to the bottom types.h file,
180 // because otherwise we get a circular inclusion of config.h, types.h, and
181 // numbers.h
182 namespace numbers
183 {
190  static const unsigned int invalid_unsigned_int =
191  static_cast<unsigned int>(-1);
192 
200  static_cast<types::global_dof_index>(-1);
201 
206  static_cast<types::global_dof_index>(-1);
207 
213  static_cast<types::coarse_cell_id>(-1);
214 
221  static_cast<types::material_id>(-1);
222 
232  static_cast<types::boundary_id>(-1);
233 
248  static_cast<types::boundary_id>(-1);
249 
260  DEAL_II_DEPRECATED
262  static_cast<types::manifold_id>(-1);
263 
271  static_cast<types::manifold_id>(-1);
272 
283  static_cast<types::subdomain_id>(-1);
284 
300  static_cast<types::subdomain_id>(-2);
301 } // namespace numbers
302 
303 DEAL_II_NAMESPACE_CLOSE
304 
305 #endif
const types::global_dof_index invalid_size_type
Definition: types.h:199
const types::manifold_id flat_manifold_id
Definition: types.h:270
static const unsigned int invalid_unsigned_int
Definition: types.h:190
unsigned int manifold_id
Definition: types.h:140
const types::coarse_cell_id invalid_coarse_cell_id
Definition: types.h:212
const types::subdomain_id invalid_subdomain_id
Definition: types.h:282
unsigned int global_cell_index
Definition: types.h:106
unsigned int material_id
Definition: types.h:151
unsigned int subdomain_id
Definition: types.h:44
Definition: types.h:32
const types::boundary_id invalid_boundary_id
Definition: types.h:231
uint64_t global_vertex_index
Definition: types.h:49
unsigned int global_dof_index
Definition: types.h:77
const types::subdomain_id artificial_subdomain_id
Definition: types.h:299
const types::manifold_id invalid_manifold_id
Definition: types.h:261
const types::boundary_id internal_face_boundary_id
Definition: types.h:247
const types::global_dof_index invalid_dof_index
Definition: types.h:205
const types::material_id invalid_material_id
Definition: types.h:220
global_cell_index coarse_cell_id
Definition: types.h:113
unsigned int boundary_id
Definition: types.h:128