Thu Oct 7 12:55:40 1999 Brian Gough * discrete.c (gsl_ran_discrete_free): removed unreachable code "return 0"; Fri Aug 6 16:02:08 1999 Brian Gough * sphere.c (gsl_ran_dir_nd): number of dimensions is now unsigned (size_t) * logarithmic.c (gsl_ran_logarithmic_pdf): removed warning about passing arg 2 of `pow' as floating rather than integer due to prototype Sun Aug 1 20:29:43 1999 Brian Gough * discrete.c: converted to GSL_ERROR macros for error handling Tue Jul 27 14:14:38 1999 Brian Gough * sphere.c (gsl_ran_dir_3d): use the Knop method only -- it is the best. (gsl_ran_dir_2d_trig_method): split out the trig method as an alternative for those platforms where it is faster * bigauss.c: split out the bivariate gaussian into its own source file 1999-06-30 Mark Galassi * discrete.c: (thanks to Frederick W. Wheeler ) changed the type stack_t to gsl_stack_t to avoid a conflict on HPUX. Sun Feb 28 20:41:18 1999 Brian Gough * gsl-randist.c (main): change cfree() to free(), which is standard. * discrete.c (gsl_ran_discrete_preproc): removed warning, pTotal is now initialized to zero. 1999-01-31 James Theiler * gauss.c added a new function gsl_ran_ugaussian_tail() which provides random numbers out on the tail of a gaussian. I also added (but then #ifdef'd out) a second implementation of ordinary gaussian numbers. This second implementation passes the tests okay, but it is a touch slower on my home Pentium. * gsl_randist.h added prototypes * test.c added tests for new gaussian tail function; also altered testMoment's ugaussian range (-1,1) value from .68 to a more accurate value. * ../doc/random.texi further updated 1999-01-30 James Theiler * discrete.c added implementation of Walker's algorithm for rapidly choosing a random integer k where the k's are distributed by a user-supplied array of probabilities P[k]. This includes functions gsl_ran_discrete(), gsl_ran_discrete_preproc(), gsl_ran_discrete_free(), and gsl_ran_discrete_pdf(). * gsl_randist.h added definition of structure gsl_ran_discrete_t, also prototypes of new functions defined in discrete.c * test.c added tests for gsl_ran_discrete(), also * test.c made some essentially cosmetic changes: 1/ redefined FUNC and FUNC2 macros so now output looks like "test gsl_ran_poisson" instead of "gsl_ran_test_poisson" 2/ changed names of toplevel tests, eg test_moments->testMoments, test_pdf->testPDF, etc, to distinguish them from all the individual functions test_poisson, test_binomial, etc. hope that's ok. * ../doc/random.texi updated to reflect the new discrete functions, as well as the new implementations of the sphere.c routines. 1999-01-28 James Theiler * sphere.c modified gsl_ran_dir_3d, to speed it up about 2x also modified gsl_ran_dir_2d, providing alternative algorithms (#ifdef'd appropriately). which is faster is machine dependent. also gsl_ran_dir_nd for n-dimensional direction, using gaussian random variables, normalized to the unit sphere also added ref's to Knuth and others describing the algorithms * gsl_randist.h added gsl_ran_dir_nd() prototype * gsl-randist.c added dir-nd option Tue Dec 15 23:08:57 1998 Brian Gough * updated all the functions depending on gsl_sf to use the new special function interface, based on gsl_sf_result Tue Nov 17 17:02:54 1998 Brian Gough * added #include to all top-level source files 1998-11-06 * test.c: ensured that M_PI is available by #include Wed Sep 16 14:44:08 1998 Brian Gough * rayleigh.c: added rayleigh tail distribution Sat Sep 12 13:03:19 1998 Brian Gough * rayleigh.c: added rayleigh distribution Mon Aug 31 James Theiler * Makefile.am: added ../utils/libutils.a to some LDADD's Mon Aug 17 14:31:55 1998 Brian Gough * gsl_randist.h: renamed discrete probability distribution parameters to use consistent k,n notation (k = sample, n = total, e.g. p(k) = function(k,n) ) Wed Aug 12 14:02:31 1998 Brian Gough * lognormal.c: added zeta and sigma (location and scale parameters) * logarithmic.c (gsl_ran_logarithmic): added logarithmic distribution Mon Aug 10 14:41:15 1998 Brian Gough * gsl-randist.c: added random direction functions * gamma.c: added the scale paramter for the gamma distribution Thu Aug 6 12:19:59 1998 Brian Gough * gauss.c (gsl_ran_bivariate_gaussian): added bivariate with correlations. * hyperg.c: renamed variables, fixed bug Wed Aug 5 11:21:45 1998 Brian Gough * gsl-dist.c: renamed gsl-dist.c to gsl-randist.c, for consistency Tue Aug 4 12:29:17 1998 Brian Gough * gsl-dist.c: a program for generating samples from the distributions * levy.c (gsl_ran_levy): take care of special case, a=1 * logistic.c: allow scale parameter, mu * weibull.c: allow scale parameter, mu * pareto.c: allow scale parameter, mu * exppow.c: handle the case a<1 using a transformation of the gamma distribution. * gamma.c (gsl_ran_gamma_int): removed the check for GSL_LOGINIFINITY since underflow can't occur for 32-bit random numbers in double precision. Mon Aug 3 13:09:39 1998 Brian Gough * test.c: added tests for shuffle and choose * pascal.c: added the Pascal distribution * hyperg.c: added the hypergeometric distribution Fri Jul 31 12:52:12 1998 Brian Gough * gsl_randist.h: renamed gsl_ran_two_sided_exponential to gsl_ran_laplace 1998-07-26 Mark Galassi * Makefile.am (INCLUDES): added -I$(top_srcdir), since gsl_math.h is needed, and that is in the top level source directory. This is necessary for using a separate build directory. Tue Jul 14 12:39:30 1998 Brian Gough * nbinomial.c: added Negative Binomial distribution * bernoulli.c: added Bernoulli distribution * poisson.c (gsl_ran_poisson): fixed a serious bug in the unrolled recursion which led to an incorrect result being returned for the large t case. This shows the importance of tests that cover all possible branches!!! * erlang.c (gsl_ran_erlang_pdf): renamed mu to a for consistency Thu Jul 2 15:47:05 1998 Brian Gough * added some extra distributions, lognormal.c gaussian.c logistic.c pareto.c geometric.c erlang.c chisq.c weibull.c, although they aren't finished yet Wed Jul 1 11:56:06 1998 Brian Gough * replace do { u = gsl_rng_uniform(r) } while (u == 0) by a direct call to gsl_rng_uniform_pos. Sun Jun 28 14:21:13 1998 Brian Gough * converted everything to work with rng style generators Sun Apr 19 19:06:59 1998 Brian Gough * made the 'gsl-dist' programs just output a single column of their random numbers (previously some of the programs printed both the uniform variate and the transformed number) * got rid of the 'bench-' programs. We will have a full testing suite soon. * renamed the installed programs from 'dist' to 'gsl-dist' so that they don't overwrite anything, e.g. it's possible the user might have other programs called 'gauss' or 'gamma' installed in /usr/local Sat Mar 21 16:09:16 1998 Brian Gough * laplace.c (gsl_ran_laplace): added a Laplace distribution (two-sided exponential) * lorentz.c (gsl_ran_lorentzian): added a Lorentz distribution 1998-01-30 Mark Galassi * Makefile.am (lib_LIBRARIES): now it creates libgslrandist.a so that we have gaussian and poisson distributions.