Struct rand_distr::Geometric
source · [−]pub struct Geometric { /* private fields */ }
Expand description
The geometric distribution Geometric(p)
bounded to [0, u64::MAX]
.
This is the probability distribution of the number of failures before the
first success in a series of Bernoulli trials. It has the density function
f(k) = (1 - p)^k p
for k >= 0
, where p
is the probability of success
on each trial.
This is the discrete analogue of the exponential distribution.
Note that StandardGeometric
is an optimised
implementation for p = 0.5
.
Example
use rand_distr::{Geometric, Distribution};
let geo = Geometric::new(0.25).unwrap();
let v = geo.sample(&mut rand::thread_rng());
println!("{} is from a Geometric(0.25) distribution", v);
Implementations
Trait Implementations
Generate a random value of T
, using rng
as the source of randomness.
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>ⓘ where
R: Rng,
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>ⓘ where
R: Rng,
Create an iterator that generates random values of T
, using rng
as
the source of randomness. Read more
Auto Trait Implementations
impl RefUnwindSafe for Geometric
impl UnwindSafe for Geometric
Blanket Implementations
Mutably borrows from an owned value. Read more