yat  0.21pre
Public Types | Public Member Functions | Protected Attributes | List of all members
theplu::yat::random::Geometric Class Reference

Geomtric Distribution. More...

#include <yat/random/random.h>

Inheritance diagram for theplu::yat::random::Geometric:
theplu::yat::random::Discrete

Public Types

typedef unsigned long int result_type
 

Public Member Functions

 Geometric (double p)
 Constructor. More...
 
unsigned long operator() (void) const
 
unsigned long operator() (double p) const
 
void seed (unsigned long s) const
 Set the seed to s. More...
 
unsigned long seed_from_devurandom (void)
 Set the seed using the /dev/urandom device. More...
 

Protected Attributes

RNGrng_
 GSL random gererator.
 

Detailed Description

Geomtric Distribution.

The number of independent trials with probability p until the first success.

Probability function $ p(k) = p (1-p)^(k-1) $

Since
New in yat 0.14

Member Typedef Documentation

◆ result_type

typedef unsigned long int theplu::yat::random::Discrete::result_type
inherited

type returned by operator()

Since
New in yat 0.10

Constructor & Destructor Documentation

◆ Geometric()

theplu::yat::random::Geometric::Geometric ( double  p)

Constructor.

Parameters
pis probability for success in one trial

Member Function Documentation

◆ operator()() [1/2]

unsigned long theplu::yat::random::Geometric::operator() ( void  ) const
virtual
Returns
A random number.

Implements theplu::yat::random::Discrete.

◆ operator()() [2/2]

unsigned long theplu::yat::random::Geometric::operator() ( double  p) const
Returns
a number from Geomtric distribution with success rate p
Note
this operator ignores parameters set in Constructor

◆ seed()

void theplu::yat::random::Discrete::seed ( unsigned long  s) const
inherited

Set the seed to s.

Set the seed to s in the underlying rng. If s is zero, a default value from the rng's original implementation is used (cf. GSL documentation).

Deprecated:
Provided for backward compatibility with the 0.7 API. Use RNG::instance()->seed(s) instead.

◆ seed_from_devurandom()

unsigned long theplu::yat::random::Discrete::seed_from_devurandom ( void  )
inherited

Set the seed using the /dev/urandom device.

Returns
The seed acquired from /dev/urandom.
Deprecated:
Provided for backward compatibility with the 0.7 API. Use RNG::instance()->seed_from_devurandom() instead.

The documentation for this class was generated from the following file:

Generated on Wed Jan 25 2023 03:34:29 for yat by  doxygen 1.8.14