deal.II version GIT relicensing-3083-g7b89508ac7 2025-04-18 12:50:00+00:00
\(\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\}}\)
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2010 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Part of the source code is dual licensed under Apache-2.0 WITH
9// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10// governing the source code and code contributions can be found in
11// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12//
13// ------------------------------------------------------------------------
14
15#ifndef dealii_types_h
16#define dealii_types_h
17
18
19#include <deal.II/base/config.h>
20
21#include <cstdint>
22#include <type_traits> // make_signed_t
23
24
26
31namespace types
32{
40 using geometric_orientation = unsigned char;
41
52 using subdomain_id = unsigned int;
53
57 using global_vertex_index = std::uint64_t;
58
67#define DEAL_II_VERTEX_INDEX_MPI_TYPE MPI_UINT64_T
68
72 using fe_index = unsigned short int;
73
91#ifdef DEAL_II_WITH_64BIT_INDICES
92 using global_dof_index = std::uint64_t;
93#else
94 using global_dof_index = unsigned int;
95#endif
96
102#ifdef DEAL_II_WITH_64BIT_INDICES
103 using signed_global_dof_index = long long;
104#else
106#endif
107
116#ifdef DEAL_II_WITH_64BIT_INDICES
117# define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UINT64_T
118#else
119# define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED
120#endif
121
135#ifdef DEAL_II_WITH_64BIT_INDICES
136 using global_cell_index = std::uint64_t;
137#else
138 using global_cell_index = unsigned int;
139#endif
140
148
161 using boundary_id = unsigned int;
162
173 using manifold_id = unsigned int;
174
184 using material_id = unsigned int;
185
192 using geometric_entity_type DEAL_II_DEPRECATED_EARLY = std::uint8_t;
193} // namespace types
194
198using TrilinosScalar = double;
199
200
201namespace TrilinosWrappers
202{
203 namespace types
204 {
208 using int64_type = long long int;
209
210#ifdef DEAL_II_WITH_64BIT_INDICES
214 using int_type = int64_type;
215#else
219 using int_type = int;
220#endif
221 } // namespace types
222} // namespace TrilinosWrappers
223
224
225
226namespace numbers
227{
238 constexpr unsigned int invalid_unsigned_int = static_cast<unsigned int>(-1);
239
251 static_cast<types::global_dof_index>(-1);
252
261
270 static_cast<types::global_dof_index>(-1);
271
283 static_cast<types::coarse_cell_id>(-1);
284
295 static_cast<types::material_id>(-1);
296
310 static_cast<types::boundary_id>(-1);
311
330 static_cast<types::boundary_id>(-1);
331
343 static_cast<types::manifold_id>(-1);
344
353 static_cast<types::geometric_orientation>(0b000);
354
366 static_cast<types::geometric_orientation>(0b001);
367
382 static_cast<types::subdomain_id>(-1);
383
403 static_cast<types::subdomain_id>(-2);
404} // namespace numbers
405
407
408#endif
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:35
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:36
long long int int64_type
Definition types.h:208
constexpr types::global_dof_index invalid_dof_index
Definition types.h:269
constexpr types::global_dof_index invalid_size_type
Definition types.h:250
constexpr unsigned int invalid_unsigned_int
Definition types.h:238
constexpr types::boundary_id internal_face_boundary_id
Definition types.h:329
constexpr types::boundary_id invalid_boundary_id
Definition types.h:309
constexpr types::manifold_id flat_manifold_id
Definition types.h:342
constexpr types::subdomain_id artificial_subdomain_id
Definition types.h:402
constexpr types::geometric_orientation reverse_line_orientation
Definition types.h:365
constexpr types::material_id invalid_material_id
Definition types.h:294
constexpr types::subdomain_id invalid_subdomain_id
Definition types.h:381
constexpr types::coarse_cell_id invalid_coarse_cell_id
Definition types.h:282
constexpr types::geometric_orientation default_geometric_orientation
Definition types.h:352
constexpr types::fe_index invalid_fe_index
Definition types.h:260
Definition types.h:32
std::uint64_t global_vertex_index
Definition types.h:57
std::uint8_t geometric_entity_type
Definition types.h:192
unsigned short int fe_index
Definition types.h:72
unsigned char geometric_orientation
Definition types.h:40
unsigned int global_cell_index
Definition types.h:138
double TrilinosScalar
Definition types.h:198