This is the mail archive of the gsl-announce@sourceware.cygnus.com mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

GNU Scientific Library 0.5 is released



Dear GSL enthusiasts,

I have just placed a long-awaited new snapshot of GSL (0.5) up for
anonymous ftp access at

    ftp://sourceware.cygnus.com/pub/gsl/

and it should soon also be available at

    ftp://alpha.gnu.org/gnu/

I was way to busy to do more than some trivial release work, and I
thank Brian who did all the work of stabilizing things so that this
snapshot is reasonable.

The home page is at
    http://sourceware.cygnus.com/gsl/

Here is the NEWS file.  As you can notice, this is a *major*
improvement over the previous release (0.4.1).

--- NEWS file ---

* Will be new in gsl-0.5:

** There is now a KNOWN-PROBLEMS file which lists compilation problems
and test failures which are known to the developers.

** Many improvements have been made to the special functions directory.

** The extrapolations from the Levin u-transform are now more reliable.

** Linear algebra and Eigensystem routines are now available.

** ODE solvers are now available.

** Multidimensional root finding algorithms are available.

** Minimization now keeps track of function values.

** Matrices and vectors now use a BLAS compatible format, and have a
separate memory handling layer (gsl_block).

** Roots of general polynomials can now be found using gsl_poly_complex_solve

** IEEE modes support on Sparclinux, Tru64, AIX and IRIX

** We have added the second generation RANLUX generators RANLXS and RANLXD

** Minimization algorithms are available (one-dimensional)

** Documentation now works out of the box with the standard Texinfo.

** Full reimplementation of the QUADPACK integration library

** Introduced THANKS file.
We appreciate all patches from people on the net, even those which are
too small to warrant adding the author to the AUTHORS file.  The
THANKS file should include everyone who sent in patches.  They should
also be mentioned in the ChangeLog entry.

* What was new in gsl-0.4.1:

** Two changes not making their way into the documentation
A couple of things are not getting into the docs, so here are the
errata:
*** The FFT routines now take a stride parameter.  Passing 1 for the
stride will make them behave as documented.
*** The complex numbers are now an opaque type, and no assumptions can
be made about the format in which they are stored (they are not stored
as a simple structure anymore, since that is not portable).  The type
is now gsl_complex (or gsl_complex_long_double or gsl_complex_float),
and the macros to access them are
    GSL_REAL(z)
    GSL_IMAG(z)
    GSL_COMPLEX_P_REAL(zp)
    GSL_COMPLEX_P_IMAG(zp)
    GSL_COMPLEX_EQ(z1,z2)
    GSL_SET_COMPLEX(zp,x,y)
    GSL_SET_REAL(zp,x)
    GSL_SET_IMAG(zp,y)

This change in the complex number API makes it important that you
start working with 0.4.1 or later.

** 0.4.1 is being released in occasion of the Red Hat 6.0 release.
The specfunc module is still in an alpha state; if you run "make
check" in the specfunc directory you will see that some tests still
fail.

** Most Alpha specific problems have been fixed. In particular the
random number generators rand48 and ranf now work on the Alpha

** Additional random number distributions: 
   Rayleigh distribution
   n-dimensional spherical distribution 
     (ie, points at random on an n-dimensional sphere)
   Gaussian tail distribution 
     (ie, choosing values from a gaussian distribution subject to a 
      constraint that they be larger than some fixed value, eg 5 sigmas)
   Walker's algorithm for arbitrary discrete distributions

* What was new in gsl-0.4:

** A single libgsl.a file is built in the top level directory and
installed, instead of separate .a files for each subdirectory.

** The parts of the complex struct gsl_complex, .real and .imag, are
not supported anymore. The macros GSL_REAL(z) and GSL_IMAG(z) do the
same job. All complex numbers are considered as packed arrays of
floating point numbers, for portability since the layout of structs or
arrays of structs is not guaranteed.

** The interface for matrices and vectors has changed. Vectors now
support strides, and can be used to access rows and columns of a
matrix. Many more types are available (float, double, long double,
int, long, sort, char, signed and unsigned, plus complex floats,
doubles and long doubles) due to improvements in our preprocessor
template system.

** The random number generators have a completely new thread-safe
interface and have moved from the random directory to the rng
directory. Any program using random numbers will have to be
updated. You can also choose generators and seeds using the
environment variables GSL_RNG_TYPE and GSL_RNG_SEED.

** Some additional random number distributions have been added in the
randist directory. The available distributiosn are: bernoulli, beta,
binomial, cauchy, chisq, erlang, exponential, fdist, flat, gamma,
gauss, geometric, levy, logistic, lognormal, nbinomial, pareto,
poisson, sphere, tdist, twosidedexp, weibull.

** The FFT interface has be extended to support strides, but the
implementation hasn't been finished for all the cases yet, The FFT
allocation functions now return a pointer to a newly allocated
wavetable struct, instead of taking the pointer to an existing struct
as an argument.

   e.g. status = gsl_fft_wavetable_alloc(n, w)
   is now    w = gsl_fft_wavetable_alloc(n) in accordance with usual practice

** The statistics directory now works with all the builtin
types. It has a new function for computing the lag1-autocorrelation and
an extra set of numerical accuracy tests from NIST as part of 'make
check'.

** The simulated annealing routines no longer set the random number
seed with the time of day.  You'll need to reseed the generator
yourself if you want subsequent runs to use different random numbers.

** Work is in progress on a reimplementation of QUADPACK in the
`integration' subdirectory, but it is not finished yet.

** Work is in progress on reimplementations of the VEGAS and
MISER Monte Carlo algorithms in the monte' subdirectory.  They work
just fine, but the code is still evolving.

** Work has started on a portable blas system in the `blas'
subdirectory.

** You can now set the IEEE arithmetic mode for your programs from the
environment variable GSL_IEEE_MODE by calling the function
gsl_ieee_env_setup(). Currently this only works with the Linux kernel,
HP-UX, SunOS4 and Solaris.

** There are some simple spline interpolation functions in the `interp'
subdir.

** The NEWS file now uses outline mode, like the Emacs NEWS file


* This covers changes made *after* the gsl-0.2 snapshot

** Added several new modules: histogram, integration, matrix, specfunc
and vectors.

** Changed libgsl_statisctics.a to libgslstatistics.a and
libgsl_siman.a to libgslsiman.a, since most of the packages don't have
the underscore.  Users will have to remove the old files, unless they
do a "make uninstall" on the previous release before they install this
new one.

** Changes to the random number suite
Incorporated the gauss, poisson and exponential distributions in
the standard libgslrandom.a


Local variables:
mode: outline
paragraph-separate: "[ 	]*$"
end:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]