Blame randist/TODO

Packit 67cb25
# -*- org -*-
Packit 67cb25
#+CATEGORY: randist
Packit 67cb25
Packit 67cb25
*   ACM Computing Surveys (CSUR)  
Packit 67cb25
   Volume 39 ,  Issue 4  (2007)                                                                     
Packit 67cb25
Packit 67cb25
   Gaussian random number generators                                                                
Packit 67cb25
   David B. Thomas, Wayne Luk, Philip H.W. Leong, John D. Villasenor                                
Packit 67cb25
   Article No. 11                                                                                   
Packit 67cb25
                                                                                                    
Packit 67cb25
Packit 67cb25
* add Erlang dist back in?
Packit 67cb25
Packit 67cb25
* DONE, for mu. 
Packit 67cb25
  
Packit 67cb25
  Note that we need to get rid of mu when it is not the mean.
Packit 67cb25
Packit 67cb25
  From: Brian Gough <bjg@network-theory.co.uk>
Packit 67cb25
  To: briggsk@info.bt.co.uk
Packit 67cb25
  Cc: gsl-discuss@sourceware.cygnus.com
Packit 67cb25
  Subject: Re: Pareto Distribution
Packit 67cb25
  Date: Sun, 9 Jul 2000 20:05:03 +0100 (BST)
Packit 67cb25
Packit 67cb25
  Yes, we should adopt the conventions from a standard reference book --
Packit 67cb25
  the existing functions are drawn from a variety of sources, mostly
Packit 67cb25
  Devroye's book on Random Variates (which is public domain, but not
Packit 67cb25
  available electronically unfortunately).  Maybe the three volumes of
Packit 67cb25
  Johnson & Kotz on Univariate Distributions would do, for
Packit 67cb25
  example. Patches are welcome from anyone who wants sort this out.
Packit 67cb25
Packit 67cb25
  Keith Briggs writes:
Packit 67cb25
   > Another thing to think about: some of the other distributions
Packit 67cb25
   > have a argument `mu' to the C function which is a parameter
Packit 67cb25
   > which is not the mean.   This is non-standard and confusing.
Packit 67cb25
   > (Also, in the Pareto function, `a' is normally called beta,
Packit 67cb25
   > `b' is normally called alpha.)
Packit 67cb25
   > 
Packit 67cb25
   > Keith
Packit 67cb25
   > 
Packit 67cb25
   > +-------------------------------------------------------------------+
Packit 67cb25
   > | Dr. Keith M. Briggs, Complexity Research Group, BT Research Labs. |
Packit 67cb25
   > | Adastral Park admin2 pp5, Martlesham Heath, IP5 3RE, Suffolk,  UK |
Packit 67cb25
   > | Tel. 01473 641 911  Fax. 01473 647 410.  Home tel:  01473 625 972 |
Packit 67cb25
   > | www.bt.com | personal homepage:  www.labs.bt.com/people/briggsk2/ |
Packit 67cb25
   > +-------------------------------------------------------------------+
Packit 67cb25
Packit 67cb25
Packit 67cb25
* The exponential power distribution method could be speeded up by
Packit 67cb25
using a rational function approximation for the rejection scaling
Packit 67cb25
parameter.
Packit 67cb25
Packit 67cb25
* Do something about the possibility of the user providing invalid
Packit 67cb25
parameters (e.g. negative variance etc). Not sure what to do though,
Packit 67cb25
since returning an error code is not possible. Maybe just return zero.
Packit 67cb25
  We should return NAN in this case, and for the CDFs.
Packit 67cb25
Packit 67cb25
* Add the triangular distribution.
Packit 67cb25
Packit 67cb25
* Look at Marsaglia & Tsang, "The Monte Python Method for generating
Packit 67cb25
random variables", ACM TOMS Vol 24, No 3, p341 
Packit 67cb25
Packit 67cb25
and the paper on the Ziggurat Method: Journal of Statistical Software,
Packit 67cb25
Volume 05 Issue 08. George Marsaglia and Wai Wan Tsang. "The ziggurat
Packit 67cb25
method for generating random variables"
Packit 67cb25
   
Packit 67cb25
* Should 0 be included in distributions such as the exponential
Packit 67cb25
distribution? If we want a consistent behaviour, is it included in
Packit 67cb25
others?  Note that 1-gsl_rng_uniform() can have a slight loss of
Packit 67cb25
precision when the random float is small.