Added script front-end for primer-design code
[htsworkflow.git] / htswanalysis / MACS / lib / gsl / gsl-1.11 / randist / ChangeLog
1 2008-02-09  Brian Gough  <bjg@network-theory.co.uk>
2
3         * gausszig.c (gsl_ran_gaussian_ziggurat): handle different
4         generator ranges explicitly
5
6 2007-09-20  Brian Gough  <bjg@network-theory.co.uk>
7
8         * multinomial.c (gsl_ran_multinomial_lnpdf):  Handle case where
9         n[k]==0 and p[k]==0 
10
11 2007-08-20  Brian Gough  <bjg@network-theory.co.uk>
12
13         * test.c (integrate): perform the integration of the pdf with the
14         gsl_integration functions for accuracy (needed for dirichlet
15         distribution)
16
17         * dirichlet.c (ran_dirichlet_small): handle underflow for small
18         alpha[] values
19
20 2007-02-20  Brian Gough  <bjg@network-theory.co.uk>
21
22         * gamma.c (gsl_ran_gamma): avoid an unnecessary function call to
23         gsl_ran_gamma_mt, since that maps back to gsl_ran_gamma now
24
25 2007-02-14  Brian Gough  <bjg@network-theory.co.uk>
26
27         * test.c (testPDF): reduce the test sensitivity to avoid failures
28         caused by weaknesses in the underlying rng
29
30 2007-01-26  Brian Gough  <bjg@network-theory.co.uk>
31
32         * gamma.c (gsl_ran_gamma): the Marsaglia Tsang method is now the
33         default
34         (gsl_ran_gamma_knuth): new function name, preserving the original
35         gsl_ran_gamma
36
37 2006-08-30  Brian Gough  <bjg@network-theory.co.uk>
38
39         * discrete.c (gsl_ran_discrete_preproc): use GSL_ENOMEM instead of
40         ENOMEM
41
42 2006-04-18  Brian Gough  <bjg@network-theory.co.uk>
43
44         * gausszig.c (gsl_ran_gaussian_ziggurat): fix prototype const
45
46 2006-03-26  Brian Gough  <bjg@network-theory.co.uk>
47
48         * multinomial.c (gsl_ran_multinomial_lnpdf): use gsl_sf_lnfact
49         instead of gsl_sf_lngamma for an integer argument
50
51 2006-03-17  Brian Gough  <bjg@network-theory.co.uk>
52
53         * binomial_tpe.c (gsl_ran_binomial): cast return values to
54         unsigned
55
56 2006-02-27  Brian Gough  <bjg@network-theory.co.uk>
57
58         * beta.c (gsl_ran_beta_pdf): work with logs avoid
59         underflow/overflow
60
61 2006-02-19  Brian Gough  <bjg@network-theory.co.uk>
62
63         * gauss.c (gsl_ran_gaussian): reject case where x=-1 || y=-1
64         for true symmetry
65         (gsl_ran_gaussian_ratio_method): add Leva bounds
66
67         * exppow.c (gsl_ran_exppow): added faster rejection methods
68
69 2006-02-01  Brian Gough  <bjg@network-theory.co.uk>
70
71         * gausszig.c: added ziggurat gaussian (Jochen Voss)
72
73 2006-01-20  Brian Gough  <bjg@network-theory.co.uk>
74
75         * binomial.c (gsl_ran_binomial_pdf): handle the cases p=0 and p=1
76         (gsl_ran_binomial_pdf): use log1p to calculate more accurately
77         near k=0,p=0
78
79 2005-08-31  Brian Gough  <bjg@network-theory.co.uk>
80
81         * test.c (main): free allocated memory before exit
82
83 2005-08-22  Brian Gough  <bjg@network-theory.co.uk>
84
85         * binomial_tpe.c (gsl_ran_binomial): switch to the TPE algorithm
86         as the default
87
88         * binomial.c (gsl_ran_binomial_knuth): rename the original
89         binomial function to ..._knuth
90
91 2004-05-30  Brian Gough  <bjg@network-theory.co.uk>
92
93         * landau.c (gsl_ran_landau): fix potential array bounds overflow
94         by extending array.
95
96 2004-04-22  Brian Gough  <bjg@network-theory.co.uk>
97
98         * sphere.c (gsl_ran_dir_3d): removed unnecessary check for s==0.0
99
100 2003-07-25  Brian Gough  <bjg@network-theory.co.uk>
101
102         * dirichlet.c: include gsl_sf_gamma.h instead of gsl_sf.h
103
104 2003-07-24  Brian Gough  <bjg@network-theory.co.uk>
105
106         * binomial_tpe.c (gsl_ran_binomial_tpe): convert to double to
107         avoid possible signed/unsigned problems in comparison (ix > n)
108         (Stirling): removed spurious trailing ;
109
110 2003-05-14  Brian Gough  <bjg@network-theory.co.uk>
111
112         * binomial_tpe.c: fast binomial algorithm using TPE method
113
114         * test.c: added the tests for the fast Binomial TPE routine
115
116 2003-02-09  Brian Gough  <bjg@network-theory.co.uk>
117
118         * discrete.c (gsl_ran_discrete_preproc): fixed bug reported by
119         ahoward <ahoward@pollux.usc.edu>
120
121 2003-01-25  Brian Gough  <brian.gough@network-theory.co.uk>
122
123         * chisq.c: corrected comments
124
125 2002-12-10  Brian Gough  <bjg@network-theory.co.uk>
126
127         * multinomial.c (gsl_ran_multinomial): added multinomial
128         distribution
129
130         * dirichlet.c (gsl_ran_dirichlet_lnpdf): added logpdf function for
131         accuracy
132
133 Tue Aug 27 19:08:33 2002  Brian Gough  <bjg@network-theory.co.uk>
134
135         * dirichlet.c: added dirichlet distribution
136
137 Sat Aug 18 22:21:07 2001  Brian Gough  <bjg@network-theory.co.uk>
138
139         * gsl-randist.c: moved to top-level directory
140
141 Wed Jul 18 12:57:55 2001  Brian Gough  <bjg@network-theory.co.uk>
142
143         * landau.c: added Landau distribution from Dave Morrison
144
145 Sat Jun 23 12:30:38 2001  Brian Gough  <bjg@network-theory.co.uk>
146
147         * gausstail.c (gsl_ran_gaussian_tail): allow negative values for
148         the tail cutoff parameter.
149
150 Mon May 21 12:17:07 2001  Brian Gough  <bjg@network-theory.co.uk>
151
152         * shuffle.c (gsl_ran_choose): removed void * return value
153         (gsl_ran_sample): removed void * return value
154
155 Tue Apr 24 17:10:47 2001  Brian Gough  <bjg@network-theory.co.uk>
156
157         * bernoulli.c (gsl_ran_bernoulli_pdf): removed unnecessary
158         reference to gsl_sf.h
159
160 Mon Apr 23 10:25:44 2001  Brian Gough  <bjg@network-theory.co.uk>
161
162         * changed calls to old specfunc _impl functions to use new error
163         handling conventions
164
165 Tue Apr 17 19:57:59 2001  Brian Gough  <bjg@network-theory.co.uk>
166
167         * weibull.c (gsl_ran_weibull): changed parameter mu to a, since it
168         is not the mean
169         (gsl_ran_weibull_pdf): changed parameter mu to a, since it
170         is not the mean
171
172         * logistic.c (gsl_ran_logistic): changed parameter mu to a, since it
173         is not the mean
174         (gsl_ran_logistic_pdf): changed parameter mu to a, since it
175         is not the mean
176
177         * laplace.c (gsl_ran_laplace): changed parameter mu to a, since it
178         is not the mean
179         (gsl_ran_laplace_pdf): changed parameter mu to a, since it
180         is not the mean
181
182         * exppow.c (gsl_ran_exppow): changed parameter mu to a, since it
183         is not the mean
184         (gsl_ran_exppow_pdf): changed parameter mu to a, since it
185         is not the mean
186
187         * cauchy.c (gsl_ran_cauchy): changed parameter mu to a, since it
188         is not the mean
189         (gsl_ran_cauchy_pdf): changed parameter mu to a, since it
190         is not the mean
191
192 Tue Feb 20 11:14:00 2001  Brian Gough  <bjg@network-theory.co.uk>
193
194         * levy.c: added the skew symmetric routine from Keith Briggs,
195         changed the definition of the original function to match and not
196         use mu as a scale parameter.
197
198 2000-10-17  Brian Gough  <bjg@inweb.aethos.co.uk>
199
200         * shuffle.c (gsl_ran_shuffle): replaced calls of the form
201         N*gsl_rng_uniform(r) with the integer form gsl_rng_uniform(r, N)
202
203 Thu Sep 21 18:41:53 2000  Brian Gough  <bjg@network-theory.co.uk>
204
205         * pareto.c (gsl_ran_pareto): made arguments and documentation
206         consistent
207
208 Wed May 10 14:55:43 2000  Brian Gough  <bjg@network-theory.co.uk>
209
210         * gsl-randist.c (main): fixed bug for lognormal (it was calling
211         exppow)  Tadhg O'Meara <tadhg@net-cs.ucd.ie>
212
213         * gsl-randist.c (main): print out all the dimensions for dir-nd,
214         not just the first
215
216 Tue Apr 25 20:45:14 2000  Brian Gough  <bjg@network-theory.co.uk>
217
218         * shuffle.c (gsl_ran_sample): lifted the restriction that sampling
219         with replacement could only be done less than n times for n objects.
220
221 Tue Mar 14 21:31:46 2000  Brian Gough  <bjg@network-theory.co.uk>
222
223         * logistic.c (gsl_ran_logistic_pdf): prevent overflow in
224         computation of pdf for x < 0
225
226 Thu Oct  7 12:55:40 1999  Brian Gough  <bjg@network-theory.co.uk>
227
228         * discrete.c (gsl_ran_discrete_free): removed unreachable code
229         "return 0";
230
231 Fri Aug  6 16:02:08 1999  Brian Gough  <bjg@network-theory.co.uk>
232
233         * sphere.c (gsl_ran_dir_nd): number of dimensions is now unsigned
234         (size_t)
235
236         * logarithmic.c (gsl_ran_logarithmic_pdf): removed warning about
237         passing arg 2 of `pow' as floating rather than integer due to
238         prototype
239
240 Sun Aug  1 20:29:43 1999  Brian Gough  <bjg@network-theory.co.uk>
241
242         * discrete.c: converted to GSL_ERROR macros for error handling
243
244 Tue Jul 27 14:14:38 1999  Brian Gough  <bjg@network-theory.co.uk>
245
246         * sphere.c (gsl_ran_dir_3d): use the Knop method only -- it is the
247         best.
248         (gsl_ran_dir_2d_trig_method): split out the trig method as an
249         alternative for those platforms where it is faster
250
251         * bigauss.c: split out the bivariate gaussian into its own source
252         file
253
254 1999-06-30  Mark Galassi  <rosalia@lanl.gov>
255
256         * discrete.c: (thanks to Frederick W. Wheeler
257         <wheeler@cipr.rpi.edu>) changed the type stack_t to gsl_stack_t to
258         avoid a conflict on HPUX.
259
260 Sun Feb 28 20:41:18 1999  Brian Gough  <bjg@netsci.freeserve.co.uk>
261
262         * gsl-randist.c (main): change cfree() to free(), which is
263         standard.
264
265         * discrete.c (gsl_ran_discrete_preproc): removed warning, pTotal
266         is now initialized to zero.
267
268 1999-01-31  James Theiler <jt@lanl.gov>
269         * gauss.c added a new function gsl_ran_ugaussian_tail() which
270         provides random numbers out on the tail of a gaussian.  I also
271         added (but then #ifdef'd out) a second implementation of ordinary
272         gaussian numbers.  This second implementation passes the tests
273         okay, but it is a touch slower on my home Pentium.
274         * gsl_randist.h added prototypes
275         * test.c added tests for new gaussian tail function; also altered
276         testMoment's ugaussian range (-1,1) value from .68 to a more
277         accurate value.
278         * ../doc/random.texi further updated 
279         
280 1999-01-30  James Theiler <jt@lanl.gov>
281         * discrete.c added implementation of Walker's algorithm for
282         rapidly choosing a random integer k where the k's are distributed
283         by a user-supplied array of probabilities P[k].  This includes
284         functions gsl_ran_discrete(), gsl_ran_discrete_preproc(), 
285         gsl_ran_discrete_free(), and gsl_ran_discrete_pdf().
286         * gsl_randist.h added definition of structure gsl_ran_discrete_t,
287         also prototypes of new functions defined in discrete.c
288         * test.c added tests for gsl_ran_discrete(), also
289         * test.c made some essentially cosmetic changes:
290         1/ redefined FUNC and FUNC2 macros so now output looks like 
291         "test gsl_ran_poisson" instead of "gsl_ran_test_poisson"
292         2/ changed names of toplevel tests, eg test_moments->testMoments, 
293         test_pdf->testPDF, etc, to distinguish them from all the individual 
294         functions test_poisson, test_binomial, etc.
295         hope that's ok.
296         * ../doc/random.texi updated to reflect the new discrete functions,
297         as well as the new implementations of the sphere.c routines.
298
299 1999-01-28  James Theiler <jt@lanl.gov>
300         * sphere.c modified gsl_ran_dir_3d, to speed it up about 2x
301         also modified gsl_ran_dir_2d, providing alternative algorithms 
302         (#ifdef'd appropriately).  which is faster is machine dependent.
303         also gsl_ran_dir_nd for n-dimensional direction, using
304         gaussian random variables, normalized to the unit sphere
305         also added ref's to Knuth and others describing the algorithms  
306         * gsl_randist.h added gsl_ran_dir_nd() prototype
307         * gsl-randist.c added dir-nd option
308
309 Tue Dec 15 23:08:57 1998  Brian Gough  <bjg@vvv.lanl.gov>
310
311         * updated all the functions depending on gsl_sf to use the new
312         special function interface, based on gsl_sf_result
313
314 Tue Nov 17 17:02:54 1998  Brian Gough  <bjg@vvv.lanl.gov>
315
316         * added #include <config.h> to all top-level source files
317
318 1998-11-06    <bjg@ancho.lanl.gov>
319
320         * test.c: ensured that M_PI is available by #include <gsl_math.h>
321
322 Wed Sep 16 14:44:08 1998  Brian Gough  <bjg@vvv.lanl.gov>
323
324         * rayleigh.c: added rayleigh tail distribution
325
326 Sat Sep 12 13:03:19 1998  Brian Gough  <bjg@vvv.lanl.gov>
327
328         * rayleigh.c: added rayleigh distribution
329
330 Mon Aug 31                James Theiler <jt@lanl.gov>
331
332         * Makefile.am: added ../utils/libutils.a to some LDADD's
333
334 Mon Aug 17 14:31:55 1998  Brian Gough  <bjg@vvv.lanl.gov>
335
336         * gsl_randist.h: renamed discrete probability distribution
337         parameters to use consistent k,n notation (k = sample, n = total,
338         e.g. p(k) = function(k,n) )
339
340 Wed Aug 12 14:02:31 1998  Brian Gough  <bjg@vvv.lanl.gov>
341
342         * lognormal.c: added zeta and sigma (location and scale parameters)
343
344         * logarithmic.c (gsl_ran_logarithmic): added logarithmic distribution
345
346 Mon Aug 10 14:41:15 1998  Brian Gough  <bjg@vvv.lanl.gov>
347
348         * gsl-randist.c: added random direction functions
349
350         * gamma.c: added the scale paramter for  the gamma distribution
351
352 Thu Aug  6 12:19:59 1998  Brian Gough  <bjg@vvv.lanl.gov>
353
354         * gauss.c (gsl_ran_bivariate_gaussian): added bivariate with
355         correlations.
356
357         * hyperg.c: renamed variables, fixed bug
358
359 Wed Aug  5 11:21:45 1998  Brian Gough  <bjg@vvv.lanl.gov>
360
361         * gsl-dist.c: renamed gsl-dist.c to gsl-randist.c, for
362         consistency
363
364 Tue Aug  4 12:29:17 1998  Brian Gough  <bjg@vvv.lanl.gov>
365
366         * gsl-dist.c: a program for generating samples from the 
367         distributions
368
369         * levy.c (gsl_ran_levy): take care of special case, a=1
370
371         * logistic.c: allow scale parameter, mu
372
373         * weibull.c: allow scale parameter, mu
374
375         * pareto.c: allow scale parameter, mu
376
377         * exppow.c: handle the case a<1 using a transformation of the
378         gamma distribution.
379
380         * gamma.c (gsl_ran_gamma_int): removed the check for
381         GSL_LOGINIFINITY since underflow can't occur for 32-bit random
382         numbers in double precision.
383
384 Mon Aug  3 13:09:39 1998  Brian Gough  <bjg@vvv.lanl.gov>
385
386         * test.c: added tests for shuffle and choose
387
388         * pascal.c: added the Pascal distribution
389
390         * hyperg.c: added the hypergeometric distribution
391
392 Fri Jul 31 12:52:12 1998  Brian Gough  <bjg@vvv.lanl.gov>
393
394         * gsl_randist.h: renamed gsl_ran_two_sided_exponential to
395         gsl_ran_laplace
396
397 1998-07-26  Mark Galassi  <rosalia@cygnus.com>
398
399         * Makefile.am (INCLUDES): added -I$(top_srcdir), since gsl_math.h
400         is needed, and that is in the top level source directory.  This is
401         necessary for using a separate build directory.
402
403 Tue Jul 14 12:39:30 1998  Brian Gough  <bjg@vvv.lanl.gov>
404
405         * nbinomial.c: added Negative Binomial distribution
406
407         * bernoulli.c: added Bernoulli distribution
408
409         * poisson.c (gsl_ran_poisson): fixed a serious bug in the unrolled
410         recursion which led to an incorrect result being returned for the
411         large t case. This shows the importance of tests that cover all
412         possible branches!!!
413
414         * erlang.c (gsl_ran_erlang_pdf): renamed mu to a for consistency
415
416 Thu Jul  2 15:47:05 1998  Brian Gough  <bjg@vvv.lanl.gov>
417
418         * added some extra distributions, lognormal.c gaussian.c
419         logistic.c pareto.c geometric.c erlang.c chisq.c weibull.c,
420         although they aren't finished yet
421
422 Wed Jul  1 11:56:06 1998  Brian Gough  <bjg@vvv.lanl.gov>
423
424         * replace do { u = gsl_rng_uniform(r) } while (u == 0) by a direct
425         call to gsl_rng_uniform_pos.
426
427 Sun Jun 28 14:21:13 1998  Brian Gough  <bjg@vvv.lanl.gov>
428
429         * converted everything to work with rng style generators
430
431 Sun Apr 19 19:06:59 1998  Brian Gough  <bjg@vvv.lanl.gov>
432
433         * made the 'gsl-dist' programs just output a single column of
434         their random numbers (previously some of the programs printed both
435         the uniform variate and the transformed number)
436
437         * got rid of the 'bench-' programs. We will have a full testing
438         suite soon.
439
440         * renamed the installed programs from 'dist' to 'gsl-dist' so that
441         they don't overwrite anything, e.g. it's possible the user might
442         have other programs called 'gauss' or 'gamma' installed in
443         /usr/local
444
445 Sat Mar 21 16:09:16 1998  Brian Gough  <bjg@vvv.lanl.gov>
446
447         * laplace.c (gsl_ran_laplace): added a Laplace distribution
448         (two-sided exponential)
449         
450         * lorentz.c (gsl_ran_lorentzian): added a Lorentz distribution
451         
452 1998-01-30  Mark Galassi  <rosalia@cygnus.com>
453
454         * Makefile.am (lib_LIBRARIES): now it creates libgslrandist.a so
455         that we have gaussian and poisson distributions.
456