1 #ifndef UTILS_TRUNCATED_ZIPFIAN_H
2 #define UTILS_TRUNCATED_ZIPFIAN_H
39 template<
typename RNG>
A truncated zipfian distribution over [0, N - 1], where all items with probability smaller than a thr...
Definition: TruncatedZipfian.h:21
uint32_t operator()(RNG &rng)
Definition: TruncatedZipfian.h:41
constexpr double GetTotalTruncatedProbability() const
Definition: TruncatedZipfian.h:57
uint32_t result_type
Definition: TruncatedZipfian.h:23
double GetProbability(uint32_t x) const
Definition: TruncatedZipfian.cpp:55
double m_s
Definition: TruncatedZipfian.h:64
uint32_t m_N
Definition: TruncatedZipfian.h:62
TruncatedZipfian()
Default constructs truncated zipfian in an invalid state.
Definition: TruncatedZipfian.h:28
constexpr uint32_t GetMinTruncatedItem() const
Definition: TruncatedZipfian.h:50
double m_total_prob_trunc
Definition: TruncatedZipfian.h:66
double m_H
Definition: TruncatedZipfian.h:65
uint32_t m_min_in_unif
Definition: TruncatedZipfian.h:63
std::uniform_int_distribution< uint32_t > m_unif_rem
Definition: TruncatedZipfian.h:69
Walker m_walker
Definition: TruncatedZipfian.h:68
A discrete distribution over non-negative integer set [n] for some n over a given probability distrib...
Definition: Walker.h:19