DDC
0.10.0
Loading...
Searching...
No Matches
ddc.hpp
1
// Copyright (C) The DDC development team, see COPYRIGHT.md file
2
//
3
// SPDX-License-Identifier: MIT
4
5
#
pragma
once
6
7
#
include
<
Kokkos_Core
.
hpp
>
8
9
#
if
defined
(
KOKKOS_ENABLE_CUDA
)
10
#
if
!
defined
(
KOKKOS_ENABLE_CUDA_CONSTEXPR
)
11
static_assert
(
false
,
"DDC requires option -DKokkos_ENABLE_CUDA_CONSTEXPR=ON"
);
12
#
endif
13
14
#
if
!
defined
(
KOKKOS_ENABLE_CUDA_RELOCATABLE_DEVICE_CODE
)
15
static_assert
(
false
,
"DDC requires option -DKokkos_ENABLE_CUDA_RELOCATABLE_DEVICE_CODE=ON"
);
16
#
endif
17
#
endif
18
19
#
if
defined
(
KOKKOS_ENABLE_HIP
)
20
#
if
!
defined
(
KOKKOS_ENABLE_HIP_RELOCATABLE_DEVICE_CODE
)
21
static_assert
(
false
,
"DDC requires option -DKokkos_ENABLE_HIP_RELOCATABLE_DEVICE_CODE=ON"
);
22
#
endif
23
#
endif
24
25
#
if
defined
(
KOKKOS_ENABLE_SYCL
)
26
#
if
!
defined
(
KOKKOS_ENABLE_SYCL_RELOCATABLE_DEVICE_CODE
)
27
static_assert
(
false
,
"DDC requires option -DKokkos_ENABLE_SYCL_RELOCATABLE_DEVICE_CODE=ON"
);
28
#
endif
29
#
endif
30
31
//! @brief The top-level namespace of DDC.
32
//! All DDC symbols are defined either in this namespace or in a nested namespace.
33
namespace
ddc
{
34
}
35
36
// Misc
37
#
include
<
ddc
/
config
.
hpp
>
38
39
#
include
"detail/dual_discretization.hpp"
40
#
include
"detail/kokkos.hpp"
41
#
include
"detail/macros.hpp"
42
#
include
"detail/tagged_vector.hpp"
43
#
include
"detail/type_seq.hpp"
44
#
include
"detail/utils.hpp"
45
46
#
include
"real_type.hpp"
47
#
include
"scope_guard.hpp"
48
49
// Containers
50
#
include
"aligned_allocator.hpp"
51
#
include
"chunk.hpp"
52
#
include
"chunk_common.hpp"
53
#
include
"chunk_span.hpp"
54
#
include
"chunk_traits.hpp"
55
#
include
"kokkos_allocator.hpp"
56
57
// Discretizations
58
#
include
"coordinate.hpp"
59
#
include
"discrete_domain.hpp"
60
#
include
"discrete_element.hpp"
61
#
include
"discrete_space.hpp"
62
#
include
"discrete_vector.hpp"
63
#
include
"non_uniform_point_sampling.hpp"
64
#
include
"periodic_sampling.hpp"
65
#
include
"sparse_discrete_domain.hpp"
66
#
include
"strided_discrete_domain.hpp"
67
#
include
"trivial_space.hpp"
68
#
include
"uniform_point_sampling.hpp"
69
70
// Algorithms
71
#
include
"create_mirror.hpp"
72
#
include
"for_each.hpp"
73
#
include
"parallel_deepcopy.hpp"
74
#
include
"parallel_fill.hpp"
75
#
include
"parallel_for_each.hpp"
76
#
include
"parallel_transform.hpp"
77
#
include
"parallel_transform_reduce.hpp"
78
#
include
"reducer.hpp"
79
#
include
"transform_reduce.hpp"
80
81
// Output
82
#
include
"print.hpp"
ddc
The top-level namespace of DDC.
Definition
aligned_allocator.hpp:11
src
ddc
ddc.hpp
Generated by
1.9.8