11 #include <type_traits>
20 namespace distribution
26 template<
typename TRand,
typename T,
typename TSfinae =
void>
30 template<
typename TRand,
typename T,
typename TSfinae =
void>
34 template<
typename TRand,
typename T,
typename TSfinae =
void>
40 template<
typename T,
typename TRand>
43 static_assert(std::is_floating_point_v<T>,
"The value type T has to be a floating point type!");
51 template<
typename T,
typename TRand>
54 static_assert(std::is_floating_point_v<T>,
"The value type T has to be a floating point type!");
62 template<
typename T,
typename TRand>
66 std::is_integral_v<T> && std::is_unsigned_v<T>,
67 "The value type T has to be a unsigned integral type!");
81 template<
typename TRand,
typename TSfinae =
void>
89 template<
typename TRand>
92 std::uint32_t
const& seed = 0,
93 std::uint32_t
const& subsequence = 0,
94 std::uint32_t
const&
offset = 0)
#define ALPAKA_FN_HOST_ACC
#define ALPAKA_NO_HOST_ACC_WARNING
Disable nvcc warning: 'calling a host function from host device function.' Usage: ALPAKA_NO_HOST_ACC_...
typename detail::ImplementationBaseType< TInterface, TDerived >::type ImplementationBase
Returns the type that implements the given interface in the inheritance hierarchy.
ALPAKA_NO_HOST_ACC_WARNING ALPAKA_FN_HOST_ACC auto createNormalReal(TRand const &rand)
ALPAKA_NO_HOST_ACC_WARNING ALPAKA_FN_HOST_ACC auto createUniformUint(TRand const &rand)
ALPAKA_NO_HOST_ACC_WARNING ALPAKA_FN_HOST_ACC auto createUniformReal(TRand const &rand)
ALPAKA_NO_HOST_ACC_WARNING ALPAKA_FN_HOST_ACC auto createDefault(TRand const &rand, std::uint32_t const &seed=0, std::uint32_t const &subsequence=0, std::uint32_t const &offset=0)
The random number float normal distribution get trait.
The random number default generator engine get trait.