55 template<
typename dtype,
typename GeneratorType = std::mt19937>
56 dtype
geometric(GeneratorType& generator,
double inP = 0.5)
60 if (inP < 0 || inP > 1)
65 std::geometric_distribution<dtype> dist(inP);
66 return dist(generator);
82 template<
typename dtype,
typename GeneratorType = std::mt19937>
87 if (inP < 0 || inP > 1)
94 std::geometric_distribution<dtype> dist(inP);
96 std::for_each(returnArray.
begin(),
98 [&generator, &dist](dtype& value) ->
void { value = dist(generator); });
114 template<
typename dtype>
132 template<
typename dtype>
#define THROW_INVALID_ARGUMENT_ERROR(msg)
Definition Error.hpp:37
#define STATIC_ASSERT_INTEGER(dtype)
Definition StaticAsserts.hpp:43
Holds 1D and 2D arrays, the main work horse of the NumCpp library.
Definition NdArrayCore.hpp:139
iterator end() noexcept
Definition NdArrayCore.hpp:1623
iterator begin() noexcept
Definition NdArrayCore.hpp:1315
A Shape Class for NdArrays.
Definition Core/shape.hpp:41
Definition Random/bernoulli.hpp:43
dtype geometric(GeneratorType &generator, double inP=0.5)
Definition geometric.hpp:56
Definition Random/bernoulli.hpp:41
dtype geometric(double inP=0.5)
Definition geometric.hpp:115
std::mt19937_64 generator_
generator function
Definition generator.hpp:35