Blame NEWS

Packit 67cb25
* What is new in gsl-2.5:
Packit 67cb25
Packit 67cb25
** doc bug fix in binomial distribution figure (Damien Desfontaines)
Packit 67cb25
Packit 67cb25
** added Wishart distribution (Timothée Flutre)
Packit 67cb25
Packit 67cb25
** added new module for digital filtering (gsl_filter); current filters include:
Packit 67cb25
     Gaussian filter
Packit 67cb25
     median filter
Packit 67cb25
     recursive median filter
Packit 67cb25
     impulse detection filter
Packit 67cb25
Packit 67cb25
** added new module for moving window statistics (gsl_movstat)
Packit 67cb25
Packit 67cb25
** added statistics functions:
Packit 67cb25
     gsl_stats_median()
Packit 67cb25
     gsl_stats_select()
Packit 67cb25
     gsl_stats_mad()
Packit 67cb25
     gsl_stats_mad0()
Packit 67cb25
     gsl_stats_Sn_from_sorted_data()
Packit 67cb25
     gsl_stats_Qn_from_sorted_data()
Packit 67cb25
     gsl_stats_gastwirth_from_sorted_data()
Packit 67cb25
     gsl_stats_trmean_from_sorted_data()
Packit 67cb25
Packit 67cb25
** added Romberg integration (gsl_integration_romberg)
Packit 67cb25
Packit 67cb25
** bug fix in deprecated functions gsl_multifit_wlinear_svd and
Packit 67cb25
   gsl_multifit_wlinear_usvd (reported by Vlad Koli)
Packit 67cb25
Packit 67cb25
** documention corrected to state that gsl_sf_legendre functions do
Packit 67cb25
   not include Condon-Shortley phase by default
Packit 67cb25
Packit 67cb25
** bug fix in exponential fitting example when using larger number
Packit 67cb25
   of points (reported by Anna Russo)
Packit 67cb25
Packit 67cb25
** changed internal workspace inside gsl_spmatrix to a union to
Packit 67cb25
   avoid casting (suggested by Manuel Schmitz)
Packit 67cb25
Packit 67cb25
** bug fixes in ode-initval2 for very rare solver crashing cases:
Packit 67cb25
   #52230 in msadams (reported by Michael Kaufman) and
Packit 67cb25
   #52336 in msbdf (reported by Andrew Benson). As a fix,
Packit 67cb25
   the maximum scaling of controlled step length was decreased
Packit 67cb25
   from 5.0 to 4.9.
Packit 67cb25
Packit 67cb25
** add histogram2d figure to manual (was missing in 2.4)
Packit 67cb25
Packit 67cb25
** bug fix in gsl_spmatrix_add for duplicate input arguments
Packit 67cb25
   (reported by Alfredo Correa)
Packit 67cb25
Packit 67cb25
** add support for negative arguments nu in gsl_sf_bessel_Jnu and
Packit 67cb25
   gsl_sf_bessel_Ynu (Konrad Griessinger)
Packit 67cb25
Packit 67cb25
** better texinfo documentation for gsl_sf_hyperg functions
Packit 67cb25
Packit 67cb25
** fix vector and matrix fread/fwrite testing on windows systems
Packit 67cb25
   when tmpfile() fails
Packit 67cb25
Packit 67cb25
** fix for rstat/test.c on PPC64 (reported by Adam Majer)
Packit 67cb25
Packit 67cb25
* What was new in gsl-2.4:
Packit 67cb25
Packit 67cb25
** migrated documentation to Sphinx software, which has built-in
Packit 67cb25
   support for latex equations and figures in HTML output
Packit 67cb25
Packit 67cb25
** add const to declaration of appropriate gsl_rstat routines
Packit 67cb25
Packit 67cb25
** bug fix for #45730: change gsl_sf_sin/cos to libm sin/cos
Packit 67cb25
Packit 67cb25
** fix Cholesky documentation regarding upper triangle on output
Packit 67cb25
Packit 67cb25
** added routines to compute integrals with fixed-point quadrature,
Packit 67cb25
   based on IQPACK (Konrad Griessinger)
Packit 67cb25
Packit 67cb25
** added routines for Hermite polynomials, gsl_sf_hermite_*
Packit 67cb25
   (Konrad Griessinger)
Packit 67cb25
Packit 67cb25
** added new nonlinear least squares example for fitting
Packit 67cb25
   a Gaussian to data
Packit 67cb25
Packit 67cb25
** deprecated routines:
Packit 67cb25
     gsl_sf_coupling_6j_INCORRECT
Packit 67cb25
     gsl_sf_coupling_6j_INCORRECT_e
Packit 67cb25
Packit 67cb25
** deprecated routine 'gsl_linalg_hessenberg' (replaced
Packit 67cb25
   by gsl_linalg_hessenberg_decomp)
Packit 67cb25
Packit 67cb25
** removed routines which were deprecated in v2.1:
Packit 67cb25
     gsl_bspline_deriv_alloc
Packit 67cb25
     gsl_bspline_deriv_free
Packit 67cb25
Packit 67cb25
** changed COD expression to Q R Z^T instead of Q R Z to
Packit 67cb25
   be consistent with standard texts
Packit 67cb25
Packit 67cb25
** added check for nz == 0 in gsl_spmatrix_get
Packit 67cb25
   (reported by Manuel Schmitz)
Packit 67cb25
Packit 67cb25
** permit zero-dimension blocks, vectors, matrics, subvectors,
Packit 67cb25
   submatrices, and views of the above (bug #49988)
Packit 67cb25
Packit 67cb25
** added routine gsl_linalg_COD_lssolve2 for regularized
Packit 67cb25
   least squares problems
Packit 67cb25
Packit 67cb25
* What was new in gsl-2.3:
Packit 67cb25
Packit 67cb25
** bug fix in documentation for gsl_linalg_LU_refine
Packit 67cb25
   (bug #49728, Joey De Pauw)
Packit 67cb25
Packit 67cb25
** added gsl_multifit_linear_tsvd and gsl_multifit_wlinear_tsvd
Packit 67cb25
   to give user more control over cutoff for truncated SVD
Packit 67cb25
Packit 67cb25
** added routines for Generalized Cross Validation for
Packit 67cb25
   regularized linear least squares
Packit 67cb25
Packit 67cb25
** improved rstat example program and added documentation for
Packit 67cb25
   gsl_rstat_sd_mean (Jonathan Leto)
Packit 67cb25
Packit 67cb25
** added function gsl_multifit_linear_rank
Packit 67cb25
Packit 67cb25
** bug fix in nonlinear least squares when using data weights with
Packit 67cb25
   finite-difference Jacobian
Packit 67cb25
Packit 67cb25
** add 2D subspace method for large systems (multilarge_nlinear)
Packit 67cb25
Packit 67cb25
** bug fix in gsl_ran_beta for small parameters
Packit 67cb25
   (bug #47646, Yu Liu)
Packit 67cb25
Packit 67cb25
** bug fix in gsl_complex_tan for negative imaginary arguments
Packit 67cb25
   (bug #47347, Yu Liu)
Packit 67cb25
Packit 67cb25
** doc bug fix: value of golden ratio
Packit 67cb25
Packit 67cb25
** fixed scaling issue in 2D subspace nonlinear least squares
Packit 67cb25
   method
Packit 67cb25
Packit 67cb25
** optimize dogleg methods to calculate Gauss-Newton point
Packit 67cb25
   only when needed
Packit 67cb25
Packit 67cb25
* What was new in gsl-2.2.1:
Packit 67cb25
Packit 67cb25
** reverted gsl_linalg_cholesky_decomp to its previous behavior
Packit 67cb25
   so it is backward compatible; new cholesky routine is
Packit 67cb25
   gsl_linalg_cholesky_decomp1
Packit 67cb25
Packit 67cb25
* What was new in gsl-2.2:
Packit 67cb25
Packit 67cb25
** updated gsl_linalg_cholesky_invert to use Level-2 BLAS
Packit 67cb25
   and added function gsl_linalg_pcholesky_invert
Packit 67cb25
Packit 67cb25
** added functions gsl_linalg_tri_*_invert for inverting
Packit 67cb25
   triangular matrices
Packit 67cb25
Packit 67cb25
** fix GSL_EIGEN_SORT_VAL_{ASC,DESC} for nonsymmetric
Packit 67cb25
   eigensystems (Victor Zverovich)
Packit 67cb25
Packit 67cb25
** added complete orthogonal decomposition routines
Packit 67cb25
   (gsl_linalg_COD)
Packit 67cb25
Packit 67cb25
** bug fix where median calculation wasn't reset in
Packit 67cb25
   gsl_rstat_reset(); added gsl_rstat_quantile_reset() function
Packit 67cb25
   (reported by Pedro Donato)
Packit 67cb25
Packit 67cb25
** added multivariate Gaussian random distribution
Packit 67cb25
   gsl_ran_multivariate_gaussian (Timothée Flutre)
Packit 67cb25
Packit 67cb25
** added functions to estimate the 1-norm reciprocal condition
Packit 67cb25
   number for various matrix factorizations:
Packit 67cb25
     * gsl_linalg_cholesky_rcond
Packit 67cb25
     * gsl_linalg_QRPT_rcond
Packit 67cb25
Packit 67cb25
** added functions gsl_linalg_QRPT_{lssolve,lssolve2} to
Packit 67cb25
   compute least squares solutions with the QRPT decomposition
Packit 67cb25
Packit 67cb25
** added function gsl_permute_matrix()
Packit 67cb25
Packit 67cb25
** added modified Cholesky factorization (gsl_linalg_mcholesky)
Packit 67cb25
   to handle symmetric indefinite matrices
Packit 67cb25
Packit 67cb25
** added pivoted Cholesky factorization (gsl_linalg_pcholesky)
Packit 67cb25
   for ill-conditioned matrices
Packit 67cb25
Packit 67cb25
** rewrote (real) Cholesky decomposition to use
Packit 67cb25
   a Level-2 blas algorithm instead of Level-1. Flop
Packit 67cb25
   count is about the same but the code is much simpler
Packit 67cb25
   and easier to follow
Packit 67cb25
Packit 67cb25
** completely rewritten nonlinear least squares module,
Packit 67cb25
   including support for large problems; the user may
Packit 67cb25
   now control the linear solver used, the trust region
Packit 67cb25
   updating strategy, and the scaling method. In addition,
Packit 67cb25
   support has been added for the geodesic acceleration
Packit 67cb25
   step (Transtrum 2011) which can speed up convergence
Packit 67cb25
   on a wide class of problems.
Packit 67cb25
Packit 67cb25
** added gsl_rstat_rms() for root mean square
Packit 67cb25
Packit 67cb25
** optimized lmniel nonlinear least squares solver
Packit 67cb25
   (bug #46369)
Packit 67cb25
Packit 67cb25
** improved precision in Bessel K0/K1 near x = 2
Packit 67cb25
   (Pavel Holoborodko, bug #47401)
Packit 67cb25
Packit 67cb25
** added support for compressed row storage sparse
Packit 67cb25
   matrices (Alexis Tantet)
Packit 67cb25
Packit 67cb25
** bug fix in convergence check of hypergeometric 2F1
Packit 67cb25
   function (bug #45926)
Packit 67cb25
Packit 67cb25
** added gsl_multilarge_linear_lcurve() to compute
Packit 67cb25
   the L-curve for large linear systems
Packit 67cb25
Packit 67cb25
** updated multilarge normal equations method to use
Packit 67cb25
   new Cholesky scaling for better numerical stability
Packit 67cb25
Packit 67cb25
** added scaling to Cholesky routines to reduce the
Packit 67cb25
   condition number prior to factorization
Packit 67cb25
Packit 67cb25
* What was new in gsl-2.1:
Packit 67cb25
Packit 67cb25
** added test suite for example programs
Packit 67cb25
Packit 67cb25
** bug fix when compiling with #undef GSL_DISABLE_DEPRECATED
Packit 67cb25
Packit 67cb25
** bug fix in setting libtool age versioning
Packit 67cb25
Packit 67cb25
** bug fix in gsl_multifit_wlinear()
Packit 67cb25
Packit 67cb25
** added gsl_multifit_linear_rcond() to compute reciprocal
Packit 67cb25
   condition number of least squares matrix
Packit 67cb25
Packit 67cb25
** added gsl_multilarge module for large linear least squares
Packit 67cb25
   systems
Packit 67cb25
Packit 67cb25
* What was new in gsl-2.0:
Packit 67cb25
Packit 67cb25
** fixed bug #43258 for hypergeometric functions (Raymond Rogers)
Packit 67cb25
Packit 67cb25
** added L-curve analysis routines for linear Tikhonov regression
Packit 67cb25
Packit 67cb25
** add running statistics module
Packit 67cb25
Packit 67cb25
** added bilinear and bicubic interpolation (David Zaslavsky)
Packit 67cb25
Packit 67cb25
** added function gsl_multifit_robust_residuals to compute robust
Packit 67cb25
   fit residuals
Packit 67cb25
Packit 67cb25
** added Steffen monotonic interpolation method (Jean-François Caron)
Packit 67cb25
Packit 67cb25
** added new nonlinear least squares solver 'lmniel' suitable for
Packit 67cb25
   systems with large numbers of data
Packit 67cb25
Packit 67cb25
** nonlinear least squares solver now tracks the number of function
Packit 67cb25
   and Jacobian evaluations, see example program for details
Packit 67cb25
Packit 67cb25
** the 'fdf' field of gsl_multifit_function_fdf is now deprecated
Packit 67cb25
   and does not need to be specified for nonlinear least squares
Packit 67cb25
   problems
Packit 67cb25
Packit 67cb25
** added extensive test suite to nonlinear least squares module,
Packit 67cb25
   resulting in a few minor bug fixes; the routine
Packit 67cb25
   gsl_multifit_fdfsolver_driver has been rewritten (with API change)
Packit 67cb25
   to handle the various error codes of the lmsder iterate
Packit 67cb25
   routine, resulting in a high level caller which is highly robust
Packit 67cb25
   for a wide class of problems
Packit 67cb25
Packit 67cb25
** added support for sparse matrices, including a GMRES
Packit 67cb25
   iterative linear solver
Packit 67cb25
Packit 67cb25
** added routines gsl_linalg_givens and gsl_linalg_givens_gv
Packit 67cb25
   for Givens rotations
Packit 67cb25
Packit 67cb25
** added Tikhonov (ridge) regularization to least squares module
Packit 67cb25
   (linear and nonlinear)
Packit 67cb25
Packit 67cb25
** removed unused argument 'n' from gsl_sf_ellint_D
Packit 67cb25
Packit 67cb25
** merged bspline_deriv_workspace into bspline_workspace to simplify
Packit 67cb25
   bspline API; the functions
Packit 67cb25
     gsl_bspline_deriv_alloc
Packit 67cb25
     gsl_bspline_deriv_free
Packit 67cb25
   are now deprecated and will be removed in a future release.
Packit 67cb25
Packit 67cb25
** merged ALF extension into GSL for associated Legendre functions;
Packit 67cb25
   api has changed; consequently the functions:
Packit 67cb25
     gsl_sf_legendre_Plm_array
Packit 67cb25
     gsl_sf_legendre_Plm_deriv_array
Packit 67cb25
     gsl_sf_legendre_sphPlm_array
Packit 67cb25
     gsl_sf_legendre_sphPlm_deriv_array
Packit 67cb25
     gsl_sf_legendre_array_size
Packit 67cb25
   are now deprecated and will be removed in a future release.
Packit 67cb25
Packit 67cb25
** added function gsl_multifit_robust_weights to allow user to
Packit 67cb25
   access the various weighting functions
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.16:
Packit 67cb25
Packit 67cb25
** fixed error in gsl_rng_fwrite where uninitialized padding
Packit 67cb25
   bytes were being written (bug #39104)
Packit 67cb25
Packit 67cb25
** fixed error in gsl_block_alloc where padding bytes were not
Packit 67cb25
   properly initialized (bugs #39101,#39102,#39103)
Packit 67cb25
Packit 67cb25
** fixed error in ntuple/test.c where padding bytes were not
Packit 67cb25
   properly initialized (bug #39105)
Packit 67cb25
Packit 67cb25
** fixed triangle selection bug in gsl_sf_coupling_6j_e and
Packit 67cb25
   gsl_sf_coupling_9j_e (bugs #39466 and #29606) (HÃ¥kan Johansson and
Packit 67cb25
   Alexey Illarionov)
Packit 67cb25
Packit 67cb25
** added higher level wrapper routine gsl_multifit_fdfsolver_driver
Packit 67cb25
Packit 67cb25
** converted gsl_multifit_linear_residuals to use dgemv to improve
Packit 67cb25
   efficiency (bug #39153)
Packit 67cb25
Packit 67cb25
** added functions gsl_stats_spearman and gsl_sort_vector2 to compute
Packit 67cb25
   Spearman rank correlation
Packit 67cb25
Packit 67cb25
** added function gsl_poly_dd_hermite_init for Hermite interpolation
Packit 67cb25
Packit 67cb25
** Added support for robust linear least squares
Packit 67cb25
Packit 67cb25
** Added function gsl_linalg_SV_leverage for computing statistical
Packit 67cb25
   leverages from SVD decomposition
Packit 67cb25
Packit 67cb25
** Added support for approximating the Jacobian of nonlinear least
Packit 67cb25
   squares fits using forward finite differences
Packit 67cb25
Packit 67cb25
** Extended gsl_sf_coupling_3j to allow larger range and to handle
Packit 67cb25
   the special case (ja jb jc; 0 0 0)=0 when ja+jb+jc is odd
Packit 67cb25
Packit 67cb25
** Fixed gsl_sf_mathieu_se_array to return zero when the order is zero
Packit 67cb25
   [bug #33679].
Packit 67cb25
Packit 67cb25
** Fixed overflow in gsl_sf_lncosh for large negative x (x<-354).
Packit 67cb25
Packit 67cb25
** Improved gsl_ran_negative_binomial_pdf to avoid underflow/overflow
Packit 67cb25
   for large arguments.
Packit 67cb25
Packit 67cb25
** Multisets now allow k strictly greater than n.
Packit 67cb25
Packit 67cb25
** Fixed gsl_matrix_complex_fwrite/fread failure for noncontiguous
Packit 67cb25
   matrices (Matthias Sitte).
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.15:
Packit 67cb25
Packit 67cb25
** Added Tuomo Keskitalo's new ode branch ode-initval2 with a
Packit 67cb25
   gsl_odeiv2 prefix. This provides proper support for implicit
Packit 67cb25
   solvers.  It is intended to be the new default for differential
Packit 67cb25
   equations.  The existing gsl_odeiv routines will be retained for
Packit 67cb25
   binary compatibility but their interface will be deprecated.
Packit 67cb25
Packit 67cb25
** Added new gsl_integrate_cquad routines for robust integration of
Packit 67cb25
   difficult functions using the doubly-adaptive CQUAD algorithm
Packit 67cb25
   (Pedro Gonnet).
Packit 67cb25
Packit 67cb25
** Added error checking to CBLAS functions (José Luis García Pallero)
Packit 67cb25
Packit 67cb25
** Added a new function gsl_integration_glfixed_point to return
Packit 67cb25
   ordered Gauss-Legendre points and weights contained within a
Packit 67cb25
   gsl_integration_glfixed_table [bug #32237].
Packit 67cb25
Packit 67cb25
** Added a new function gsl_interp_type_min_size to return the size of
Packit 67cb25
   an interpolation type.
Packit 67cb25
Packit 67cb25
** Added a function gsl_pow_uint(x,n) to compute x^n for unsigned
Packit 67cb25
   exponents (needed when n exceeds the range of signed integers).
Packit 67cb25
Packit 67cb25
** Added new routine gsl_linalg_complex_cholesky_invert to handle the
Packit 67cb25
   matrix inversion for complex Cholesky decompositions (Huan Wu).
Packit 67cb25
Packit 67cb25
** Added the functions gsl_vector_equal(x,y) and gsl_matrix_equal(x,y)
Packit 67cb25
   for testing equality of two vectors or matrices.
Packit 67cb25
Packit 67cb25
** Added function gsl_eigen_nonsymmv_params to control the balancing
Packit 67cb25
   transformation for eigenvector calculations. Balancing is now
Packit 67cb25
   turned off by default for gsl_eigen_nonsymmv.
Packit 67cb25
Packit 67cb25
** It is now possible to choose an alternative cblas library via
Packit 67cb25
   pkg-config using the GSL_CBLAS_LIB environment variable or
Packit 67cb25
   the pkg-config --define-variable option.
Packit 67cb25
Packit 67cb25
** The jacobi method gsl_eigen_jacobi now uses the norm of the
Packit 67cb25
   off-diagonal elements for its convergence criterion, as in
Packit 67cb25
   algorithm 8.4.3 of Golub and van Loan.
Packit 67cb25
Packit 67cb25
** The newton multiroot solvers now return an error when a singular
Packit 67cb25
   jacobian is detected.
Packit 67cb25
Packit 67cb25
** The interpolation functions now return NaN and when x is out of range,
Packit 67cb25
   instead of extrapolating.
Packit 67cb25
Packit 67cb25
** The gsl_multimin_fdfsolver multidimensional minimisers now return
Packit 67cb25
   GSL_ENOPROG immediately if the generated trial point does not
Packit 67cb25
   differ from the initial point (to machine precision), avoiding
Packit 67cb25
   unnecessary further iterations.
Packit 67cb25
Packit 67cb25
** Extended the range of gsl_sf_bessel_lnKnu_e by rescaling
Packit 67cb25
   intermediate results to avoid internal overflows [bug #31528].
Packit 67cb25
Packit 67cb25
** Improved the result of gsl_sf_atanint_e for large arguments by
Packit 67cb25
   adding the first order 1/x correction term. [bug #29562]
Packit 67cb25
Packit 67cb25
** Fixed the gsl_rng_ranlxs generators to enforce a maximum seed value
Packit 67cb25
   of 2^31-1.  Larger seed values corrupted the random number state
Packit 67cb25
   and caused out of range values to be returned.
Packit 67cb25
Packit 67cb25
** Fixed gsl_ran_chisq_pdf(x,nu) to return correct result of 1/2
Packit 67cb25
   instead of 0 when x=0 and nu=2, and +inf when x=0 and nu<2.
Packit 67cb25
Packit 67cb25
** Fixed gsl_pow_int(x,n) to avoid an infinite loop when n=INT_MIN due
Packit 67cb25
   to wrapping of signed integers.
Packit 67cb25
Packit 67cb25
** Fixed gsl_sf_hyperg_2F1(a,b,c,x) to avoid returning NaN for
Packit 67cb25
   arguments |a|>10. [bug #24812]
Packit 67cb25
Packit 67cb25
** Avoid spurious underflow return code in gsl_sf_beta_inc_e when
Packit 67cb25
   intermediate underflow does not affect the result. [bug #30933]
Packit 67cb25
Packit 67cb25
** Avoid segfault in Chebyshev series derivatives gsl_cheb_calc_deriv
Packit 67cb25
   for n=1. [bug #29139]
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.14:
Packit 67cb25
Packit 67cb25
** Upgraded to latest libtool, autoconf and automake (libtool-2.2.6b,
Packit 67cb25
   autoconf-2.65, automake-1.11.1).  Fixes security hole in 'make
Packit 67cb25
   dist' (see Automake CVE-2009-4029).
Packit 67cb25
Packit 67cb25
** Added support for "multisets", which are similar to permutations
Packit 67cb25
   and combinations.  A multiset is an array of k integers in the
Packit 67cb25
   range 0 to n-1 where each value may occur more than once. Multisets
Packit 67cb25
   can be used to iterate over the indices of a k-th order symmetric
Packit 67cb25
   tensor in n-space. (Rhys Ulerich)
Packit 67cb25
Packit 67cb25
** Added gsl_integrate_glfixed routines for performing fixed order
Packit 67cb25
   Gauss-Legendre integration 
Packit 67cb25
   (Pavel Holoborodko, Konstantin Holoborodko, Rhys Ulerich)
Packit 67cb25
Packit 67cb25
** In the LMDER multi-dimensional fitting routines, the return code
Packit 67cb25
   GSL_ENOPROG is now used instead of GSL_CONTINUE for the case where
Packit 67cb25
   10 or more attempts to find a suitable trial step have been made
Packit 67cb25
   without success. [bug #25383]
Packit 67cb25
Packit 67cb25
** The confluent hypergeometric function gsl_sf_hyperg_U (a,b,x) has
Packit 67cb25
   been extended to support x < 0 for cases not involving
Packit 67cb25
   singularities in 1F1(a,b,x). [bug #27859]
Packit 67cb25
Packit 67cb25
** The F-distribution gsl_ran_fdist_pdf now avoids unnecessary
Packit 67cb25
   underflow and overflow and handles cases where n > 248. [bug
Packit 67cb25
   #28500]
Packit 67cb25
Packit 67cb25
** The SVD routines now use a scaled version of the implicit QR method
Packit 67cb25
   and compute the shift more reliably for values at the limit of
Packit 67cb25
   double precision, avoiding potential NaNs. [bug #28767]
Packit 67cb25
Packit 67cb25
** A compile time error is emitted if the configuration stage prevents
Packit 67cb25
   the functions gsl_isnan and gsl_finite from being defined.
Packit 67cb25
Packit 67cb25
** Added missing dereference in GSL_VECTOR_COMPLEX when not using
Packit 67cb25
   GSL_RANGE_CHECK [bug #28017]
Packit 67cb25
Packit 67cb25
** Improved the range of gsl_sf_hyperg1F1(a,b,x) when a<0,b>0. [bug
Packit 67cb25
   #28718]
Packit 67cb25
Packit 67cb25
** Added macros GSL_MAJOR_VERSION and GSL_MINOR_VERSION in
Packit 67cb25
   <gsl/gsl_version.h>
Packit 67cb25
Packit 67cb25
** Improved gsl_eigen_symmv and gsl_eigen_symm to avoid a potential
Packit 67cb25
   infinite loop when the tridiagonalised matrix contains very small
Packit 67cb25
   values. [bug #28096]
Packit 67cb25
Packit 67cb25
** Added functions gsl_multifit_linear_usvd and
Packit 67cb25
   gsl_multifit_wlinear_usvd for multilinear fitting without
Packit 67cb25
   column-scaling of the fit matrix.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.13:
Packit 67cb25
Packit 67cb25
** Upgraded to latest autoconf and automake (autoconf-2.64,
Packit 67cb25
   automake-1.11)
Packit 67cb25
Packit 67cb25
** Fixed the rk4 and bspline allocators to avoid invalid free()
Packit 67cb25
   calls under out of memory conditions. [bug #27194, #27236]
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_multimin_fminimizer_nmsimplex2 where the center
Packit 67cb25
   and size of the simplex were not updated on contract-by-best steps,
Packit 67cb25
   causing failures in convergence. [bug #27180]
Packit 67cb25
Packit 67cb25
** Added new functions to set MISER and VEGAS Monte Carlo integration
Packit 67cb25
   parameters, and to examine VEGAS chi-squared value and intermediate
Packit 67cb25
   results.
Packit 67cb25
Packit 67cb25
** Added the function gsl_bspline_greville_abscissa to compute
Packit 67cb25
   Greville abscissae for B-splines.
Packit 67cb25
Packit 67cb25
** The cumulative distribution functions gsl_cdf_gumbel1_{P,Q} should
Packit 67cb25
   now handle a larger range of parameters without underflow and
Packit 67cb25
   overflow.
Packit 67cb25
Packit 67cb25
** The header file gsl_const_cgs.h no longer defines values for
Packit 67cb25
   electromagnetic units.  Applications should use gsl_const_cgsm.h
Packit 67cb25
   instead to obtain the values in the CGS-Magnetic system.  The
Packit 67cb25
   previous values for these units given in gsl_const_cgs.h were
Packit 67cb25
   ill-defined as the type of CGS electromagnetic system was
Packit 67cb25
   unspecified (the values were a mixture of CGS units with the Ampere
Packit 67cb25
   of the MSKA system).  The affected constants are
Packit 67cb25
   GSL_CONST_CGS_BOHR_MAGNETON, GSL_CONST_CGS_ELECTRON_CHARGE,
Packit 67cb25
   GSL_CONST_CGS_ELECTRON_MAGNETIC_MOMENT, GSL_CONST_CGS_FARADAY,
Packit 67cb25
   GSL_CONST_CGS_GAUSS, GSL_CONST_CGS_NUCLEAR_MAGNETON,
Packit 67cb25
   GSL_CONST_CGS_PROTON_MAGNETIC_MOMENT, and GSL_CONST_CGS_ROENTGEN.
Packit 67cb25
Packit 67cb25
** The Pochhammer functions gsl_sf_poch(a,x) and gsl_sf_lnpoch(a,x) now
Packit 67cb25
   handle the special cases where a and a+x are zero or negative
Packit 67cb25
   integers.
Packit 67cb25
Packit 67cb25
** The confluent hypergeometric function gsl_sf_hyperg_U (a,b,x) now
Packit 67cb25
   handles some cases where x=0. The case where 1+a-b is a negative
Packit 67cb25
   integer no longer returns an error [bug #22859] and the incorrect
Packit 67cb25
   termination of the series in certain cases is fixed [bug #26706].
Packit 67cb25
Packit 67cb25
** Added a new function gsl_poly_eval_derivs to evaluate a polynomial
Packit 67cb25
   and its derivatives simultaneously.
Packit 67cb25
Packit 67cb25
** Added a new univariate minimisation algorithm
Packit 67cb25
   gsl_min_fminimizer_quad_golden which is a variant of Brent's
Packit 67cb25
   algorithm with safeguarded step-length adjustment.
Packit 67cb25
Packit 67cb25
** Added a new Nelder-Mead minimiser gsl_multimin_fminimizer_nmsimplex2rand
Packit 67cb25
   which uses a randomly oriented simplex rather than one fixed on
Packit 67cb25
   the coordinate axes [bug #25077]
Packit 67cb25
Packit 67cb25
** The texinfo file now uses the dircategory "Software libraries" from
Packit 67cb25
   the Free Software Directory, as recommended in the Texinfo manual.
Packit 67cb25
Packit 67cb25
** The function gsl_ran_exponential now includes zero in its output
Packit 67cb25
   range. [bug #25039]
Packit 67cb25
Packit 67cb25
** All functions for freeing allocated memory now accept a NULL
Packit 67cb25
   pointer, following the standard C convention for free(). [bug
Packit 67cb25
   #25319]
Packit 67cb25
Packit 67cb25
** The function gsl_sum_levin_u_accel now handles the special case
Packit 67cb25
   c_0 + 0 + 0 + 0 + .... that occurs when summing power series
Packit 67cb25
   c_n*x^n with x=0. [bug #26807]
Packit 67cb25
Packit 67cb25
** The functions gsl_linalg_LU_solve, gsl_linalg_LU_svx,
Packit 67cb25
   gsl_linalg_LU_refine, gsl_linalg_LU_invert and their complex
Packit 67cb25
   equivalents now return an error for singular matrices.
Packit 67cb25
Packit 67cb25
** The multifit LMDER hybrid solvers now check the return code of the
Packit 67cb25
   user-supplied function in the gsl_multifit_fdfsolver_set
Packit 67cb25
   method. [bug #26871]
Packit 67cb25
Packit 67cb25
** Improved the implementation of gsl_ran_discrete_preproc to avoid
Packit 67cb25
   internal errors due to inconsistencies from excess precision on
Packit 67cb25
   some platforms. [bug #26502]
Packit 67cb25
Packit 67cb25
** Corrected gsl_sf_hyperg_2F1(a,b,c,x) to not give a domain error in
Packit 67cb25
   the case where c is a negative integer and the series terminates
Packit 67cb25
   with a finite result.
Packit 67cb25
Packit 67cb25
** The C99 inline keyword is now supported, in addition to the
Packit 67cb25
   previously supported GNU-style inline.
Packit 67cb25
Packit 67cb25
** Modified gsl_poly_complex_solve_cubic and gsl_poly_solve_cubic to
Packit 67cb25
   avoid returning NaNs in cases where excess precision causes a
Packit 67cb25
   change in the number of roots. 
Packit 67cb25
Packit 67cb25
** Fixed incorrect length check in gsl_blas_drotm. [bug #26503]
Packit 67cb25
Packit 67cb25
** Fixed gsl_odeiv_step_gear2 to restore y on step failure
Packit 67cb25
Packit 67cb25
** gsl_odeiv_evolve_apply now restores the correct value of t on step
Packit 67cb25
   failures [bug #26255].
Packit 67cb25
Packit 67cb25
** Using make install prefix=DIR now puts correct paths in package
Packit 67cb25
   config files gsl-config and gsl.pc
Packit 67cb25
Packit 67cb25
** Modified gsl_monte_vegas to work around pow() function inaccuracies
Packit 67cb25
   on MinGW [bug #25413].
Packit 67cb25
Packit 67cb25
** Increased the number of terms in gsl_sf_mathieu_a and
Packit 67cb25
   gsl_sf_mathieu_b to improve convergence in difficult regions [bug
Packit 67cb25
   #25075]
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.12:
Packit 67cb25
Packit 67cb25
** Upgraded to latest libtool, autoconf and automake (libtool-2.2.6,
Packit 67cb25
   autoconf-2.63, automake-1.10.2)
Packit 67cb25
Packit 67cb25
** Improved the convergence of gsl_sf_gamma_inc_P for x/a ~=~ 1 and
Packit 67cb25
   large x,a.  Fixes problems with large arguments in cdf functions
Packit 67cb25
   such as gsl_cdf_chisq_Pinv(x,nu) [bug 24704].
Packit 67cb25
Packit 67cb25
** Fixed gsl_ran_gamma_knuth to handle the case of a >= UINT_MAX [bug
Packit 67cb25
   #24897]
Packit 67cb25
Packit 67cb25
** Added gsl_bspline_eval_deriv to compute bspline derivatives
Packit 67cb25
   (Rhys Ulerich)
Packit 67cb25
Packit 67cb25
** Added a faster simplex mininimser gsl_multimin_fminimizer_nmsimplex2
Packit 67cb25
   which is O(N) instead of O(N^2) [bug #24418]
Packit 67cb25
Packit 67cb25
** Improved the original chi-squared formula in gsl_monte_vegas to
Packit 67cb25
   avoid catastrophic cancellation [bug #24510].  The previous formula
Packit 67cb25
   could return incorrect or negative values for relative errors <
Packit 67cb25
   1e-8, which could occur when integrating very smooth functions.
Packit 67cb25
Packit 67cb25
** Added new auxiliary functions gsl_cheb_order, gsl_cheb_size,
Packit 67cb25
   gsl_cheb_coeffs for Chebyshev series [bug #21830]
Packit 67cb25
Packit 67cb25
** Updated license of the reference manual to GNU FDL version 1.3.
Packit 67cb25
Packit 67cb25
** Fixed a bug where the gsl_isinf function would return +1 for -Inf
Packit 67cb25
   on systems where isinf(-Inf) returns the non-standard value +1.
Packit 67cb25
   [bug #24489]
Packit 67cb25
Packit 67cb25
** Added missing functions gsl_vector_complex_{isnonneg,add,sub,mul,
Packit 67cb25
   div,scale,add_constant} and gsl_matrix_complex_float_isnonneg [bug
Packit 67cb25
   #22478]
Packit 67cb25
Packit 67cb25
** Cross compilation should now work for x86 hosts.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_interp_accel_find() where values lying on the
Packit 67cb25
   upper boundary between interpolation points could return the index
Packit 67cb25
   from the lower side. [bug #24211]
Packit 67cb25
Packit 67cb25
** Fixed gsl_linalg_solve_cyc_tridiag so that its output respects the
Packit 67cb25
   solution vector's stride. Previously the x_stride value was ignored
Packit 67cb25
   causing the output to be incorrect for non-unit stride. [bug #24162]
Packit 67cb25
Packit 67cb25
** Corrected a bug in the series calculation of gsl_sf_ellint_Kcomp
Packit 67cb25
   for k close to 1. [bug #24146]
Packit 67cb25
Packit 67cb25
** Extended gsl_linalg_QRPT_update to handle rectangular matrices.
Packit 67cb25
   Corrected definition of the update formula in the manual for
Packit 67cb25
   both gsl_linalg_QR_update and gsl_linalg_QRPT_update.
Packit 67cb25
Packit 67cb25
** Added routine gsl_linalg_cholesky_invert
Packit 67cb25
Packit 67cb25
** Fixed a bug the simplex algorithm which caused the second highest
Packit 67cb25
   point to be incorrectly equal to the first when the first value was
Packit 67cb25
   the highest, which could cause suboptimal convergence. [bug #23192]
Packit 67cb25
Packit 67cb25
** Fixed a problem with convergence for inverse gamma and chisq
Packit 67cb25
   distribitions, gsl_cdf_gamma_{P,Q}inv and gsl_cdf_chisq_{P,Q}inv.
Packit 67cb25
   [bug #23101]
Packit 67cb25
Packit 67cb25
** Improved the handling of constant regions in Vegas by eliminating
Packit 67cb25
   spurious excess precision when computing box variances.
Packit 67cb25
Packit 67cb25
** Fixed a potential division by zero in gsl_monte_miser when the
Packit 67cb25
   left/right weight factors decrease below 1.
Packit 67cb25
Packit 67cb25
** Fixed incorrect dimensions check in gsl_matrix_sub{row,column}
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.11:
Packit 67cb25
Packit 67cb25
** The GSL repository and bug database are now hosted at Savannah
Packit 67cb25
   http://savannah.gnu.org/projects/gsl/
Packit 67cb25
Packit 67cb25
** Upgraded to latest libtool, autoconf and automake (libtool-2.2,
Packit 67cb25
   autoconf-2.61, automake-1.10.1)
Packit 67cb25
Packit 67cb25
** Fixed underflow in ODE adaptive step size controller that could
Packit 67cb25
   cause step size to decrease to zero (bug #21933).
Packit 67cb25
Packit 67cb25
** Improved the handling of the asymptotic regime in gsl_sf_bessel_jl.
Packit 67cb25
Packit 67cb25
** Improved the handling of large arguments in cumulative distribution
Packit 67cb25
   functions using the incomplete beta function, such as gsl_cdf_fdist_P.
Packit 67cb25
Packit 67cb25
** Fixed overflow bug in gsl_cdf_hypergeometric_{P,Q} for large
Packit 67cb25
   arguments (bug #22293).
Packit 67cb25
Packit 67cb25
** gsl_ran_gaussian_ziggurat now handles generators with different
Packit 67cb25
   ranges explicitly, to minimise the number of function calls
Packit 67cb25
   required (bug #21820).  Also fixes bug #22446 (rng limit in
Packit 67cb25
   gsl_ran_chisq()).
Packit 67cb25
Packit 67cb25
** Added missing error terms in gsl_sf_exp_mult_e10_e to prevent
Packit 67cb25
   the error being underestimated (bug #22041).  
Packit 67cb25
Packit 67cb25
** Updated some constants to the CODATA 2006 values.
Packit 67cb25
Packit 67cb25
** The hypergeometric function gsl_sf_hyperg_2F1 now handles the case
Packit 67cb25
   where x==1.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the brent minimiser which prevented optimal convergence.
Packit 67cb25
Packit 67cb25
** Added functions for evaluating complex polynomials
Packit 67cb25
Packit 67cb25
** The convergence condition for gsl_multiroots_test_delta now accepts
Packit 67cb25
   dxi == 0.
Packit 67cb25
Packit 67cb25
** Improved functions gsl_ldexp and gsl_frexp to handle the full range
Packit 67cb25
   of double precision numbers in all cases.
Packit 67cb25
Packit 67cb25
** Added new quasi random generators gsl_qrng_halton and
Packit 67cb25
   gsl_qrng_reversehalton which support dimensions up to 1229.
Packit 67cb25
Packit 67cb25
** Added function gsl_multifit_linear_residuals for computing the
Packit 67cb25
   residuals of the fit
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.10:
Packit 67cb25
Packit 67cb25
** License updated to GNU GPL version 3.
Packit 67cb25
Packit 67cb25
** Added support for generalized eigensystems
Packit 67cb25
Packit 67cb25
** Added function gsl_stats_correlation to compute Pearson correlation
Packit 67cb25
of two datasets
Packit 67cb25
Packit 67cb25
** Added the new function gsl_sf_expint(n,x) for computing the n-th
Packit 67cb25
order exponential integral.
Packit 67cb25
Packit 67cb25
** Added functions gsl_vector_isnonneg and gsl_matrix_isnonneg.
Packit 67cb25
Packit 67cb25
** Added functions gsl_matrix_subrow and gsl_matrix_subcolumn
Packit 67cb25
Packit 67cb25
** Extended Cholesky routines to complex matrices
Packit 67cb25
Packit 67cb25
** Added support in gsl_ieee_set_mode for controlling SSE exceptions
Packit 67cb25
and rounding through the MXCSR control word on x86 processors.
Packit 67cb25
Packit 67cb25
** The autoconf macro AM_PATH_GSL has been renamed to AX_PATH_GSL, to
Packit 67cb25
avoid conflicts with the autoconf namespace.
Packit 67cb25
Packit 67cb25
** Improved handling of underflow in gsl_eigen_symm.
Packit 67cb25
Packit 67cb25
** The function gsl_multiroot_fdjacobian now returns the error code
Packit 67cb25
GSL_ESING if any of the columns of the computed jacobian matrix are
Packit 67cb25
zero.  This may occur if the step size of the derivative is too small.
Packit 67cb25
Packit 67cb25
** Extended the function gsl_sf_beta_inc(a,b,x) to handle cases where
Packit 67cb25
a<0 or b<0.
Packit 67cb25
Packit 67cb25
** Fixed the round-off error estimate in gsl_deriv_{central,backwards,
Packit 67cb25
forward} to correctly account for numerical error in the step-size h.
Packit 67cb25
Packit 67cb25
** Fixed gsl_cdf_beta_Pinv, gsl_cdf_gamma_Pinv, gsl_cdf_beta_Pinv to
Packit 67cb25
avoid returning spurious values for large parameters when the
Packit 67cb25
iteration did not converge.  If the iteration cannot converge, GSL_NAN
Packit 67cb25
is returned.
Packit 67cb25
Packit 67cb25
** gsl_ran_dirichlet now handles smaller values of alpha[] without
Packit 67cb25
underflow, avoiding a NaN in the returned value.
Packit 67cb25
Packit 67cb25
** The SVD routines now avoid underflow in the Schur decomposition for
Packit 67cb25
matrices with extremely small values 
Packit 67cb25
Packit 67cb25
** gsl_complex_pow now returns 0^0=1 (instead of zero) to match the usual
Packit 67cb25
pow function, and handles z^(1,0) and z^(-1,0) as special cases.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the set function for multifit lmder solver so that
Packit 67cb25
previous values are cleared correctly.
Packit 67cb25
Packit 67cb25
** Improved the function gsl_log1p to prevent possible loss of
Packit 67cb25
accuracy caused by optimisations.
Packit 67cb25
Packit 67cb25
** Improved the convergence test in the Lambert functions to take
Packit 67cb25
account of finite precision and avoid possible failure to converge.
Packit 67cb25
Packit 67cb25
** The configure script no longer redefines finite() to isfinite() as
Packit 67cb25
a workaround for missing finite(), as this caused problems on Solaris.
Packit 67cb25
If finite() is not present gsl_finite() will be used instead.
Packit 67cb25
Packit 67cb25
** Improved the accuracy of the generalised laguerre polynomials for
Packit 67cb25
large n when alpha=0.
Packit 67cb25
Packit 67cb25
** The functions gsl_{isnan,isinf,finite} will now always use the
Packit 67cb25
system versions of isnan, isinf and finite if they are available.
Packit 67cb25
Previously the portable GSL implementations were used whenever the
Packit 67cb25
platform supported IEEE comparisons.  The portable gsl_isinf function
Packit 67cb25
now returns -1 instead of +1 for -Inf, in line with recent versions of
Packit 67cb25
the GNU C Library.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.9:
Packit 67cb25
Packit 67cb25
** Fixed the elliptic integrals F,E,P,D so that they have the correct
Packit 67cb25
behavior for phi > pi/2 and phi < 0.  The angular argument is now
Packit 67cb25
valid for all phi.  Also added the complete elliptic integral
Packit 67cb25
gsl_sf_ellint_Pcomp.
Packit 67cb25
Packit 67cb25
** Added a new BFGS minimisation method gsl_multimin_fdfminimizer_vector_bfgs2
Packit 67cb25
based on the algorithm given by R.Fletcher in "Practical Methods of
Packit 67cb25
Optimisation" (Second edition).  This requires substantially fewer
Packit 67cb25
function and gradient evaluations, and supercedes the existing BFGS
Packit 67cb25
minimiser.
Packit 67cb25
Packit 67cb25
** The beta functions gsl_sf_beta_e(a,b) and gsl_sf_lnbeta_e(a,b) now
Packit 67cb25
handle negative arguments a,b.  Added new function gsl_sf_lnbeta_sgn_e
Packit 67cb25
for computing magnitude and sign of negative beta values, analagous to
Packit 67cb25
gsl_sf_lngamma_sgn_e.
Packit 67cb25
Packit 67cb25
** gsl_cheb_eval_mode now uses the same error estimate as
Packit 67cb25
gsl_cheb_eval_err.
Packit 67cb25
Packit 67cb25
** Improved gsl_sf_legendre_sphPlm_e to avoid underflow with large
Packit 67cb25
arguments.
Packit 67cb25
Packit 67cb25
** Added updated Knuth generator, gsl_rng_knuthran2002, from 9th
Packit 67cb25
printing of "The Art of Computer Programming".  Fixes various
Packit 67cb25
weaknesses in the earlier version gsl_rng_knuthran.  See
Packit 67cb25
http://www-cs-faculty.stanford.edu/~knuth/news02.htm
Packit 67cb25
Packit 67cb25
** The functions gsl_multifit_fsolver_set, gsl_multifit_fdfsolver_set
Packit 67cb25
and gsl_multiroot_fsolver_set, gsl_multiroot_fdfsolver_set now have a
Packit 67cb25
const qualifier for the input vector x, reflecting their actual usage.
Packit 67cb25
Packit 67cb25
** gsl_sf_expint_E2(x) now returns the correct value 1 for x==0,
Packit 67cb25
instead of NaN.
Packit 67cb25
Packit 67cb25
** The gsl_ran_gamma function now uses the Marsaglia-Tsang fast gamma
Packit 67cb25
method of gsl_ran_gamma_mt by default.
Packit 67cb25
Packit 67cb25
** The matrix and vector min/max functions now always propagate any
Packit 67cb25
NaNs in their input.
Packit 67cb25
Packit 67cb25
** Prevented NaN occuring for extreme parameters in
Packit 67cb25
gsl_cdf_fdist_{P,Q}inv and gsl_cdf_beta_{P,Q}inv
Packit 67cb25
Packit 67cb25
** Corrected error estimates for the angular reduction functions
Packit 67cb25
gsl_sf_angle_restrict_symm_err and gsl_sf_angle_restrict_pos_err.
Packit 67cb25
Fixed gsl_sf_angle_restrict_pos to avoid possibility of returning
Packit 67cb25
small negative values.  Errors are now reported for out of range
Packit 67cb25
negative arguments as well as positive.  These functions now return
Packit 67cb25
NaN when there would be significant loss of precision.
Packit 67cb25
Packit 67cb25
** Corrected an error in the higher digits of M_PI_4 (this was beyond
Packit 67cb25
the limit of double precision, so double precision results are not
Packit 67cb25
affected).
Packit 67cb25
Packit 67cb25
** gsl_root_test_delta now always returns success if two iterates are
Packit 67cb25
the same, x1==x0.
Packit 67cb25
Packit 67cb25
** A Japanese translation of the reference manual is now available
Packit 67cb25
from the GSL webpage at http://www.gnu.org/software/gsl/ thanks to
Packit 67cb25
Daisuke TOMINAGA.
Packit 67cb25
Packit 67cb25
** Added new functions for basis splines, see the "Basis Splines"
Packit 67cb25
chapter in the GSL Reference Manual for details.
Packit 67cb25
Packit 67cb25
** Added new functions for testing the sign of vectors and matrices,
Packit 67cb25
gsl_vector_ispos, gsl_vector_isneg, gsl_matrix_ispos and
Packit 67cb25
gsl_matrix_isneg.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_sf_lnpoch_e and gsl_sf_lnpoch_sgn_e which caused
Packit 67cb25
the incorrect value 1.0 instead of 0.0 to be returned for x==0.
Packit 67cb25
Packit 67cb25
** Fixed cancellation error in gsl_sf_laguerre_n for n > 1e7 so that
Packit 67cb25
larger arguments can be calculated without loss of precision.
Packit 67cb25
Packit 67cb25
** Improved gsl_sf_zeta_e to return exactly zero for negative even
Packit 67cb25
integers, avoiding less accurate trigonometric reduction.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_sf_zetam1_int_e where 0 was returned instead of
Packit 67cb25
-1 for negative even integer arguments.
Packit 67cb25
Packit 67cb25
** When the differential equation solver gsl_odeiv_apply encounters a
Packit 67cb25
singularity it returns the step-size which caused the error code from
Packit 67cb25
the user-defined function, as opposed to leaving the step-size
Packit 67cb25
unchanged.
Packit 67cb25
Packit 67cb25
** Added support for nonsymmetric eigensystems
Packit 67cb25
Packit 67cb25
** Added Mathieu functions
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.8:
Packit 67cb25
Packit 67cb25
** Added an error check to trap multifit calls with fewer observations
Packit 67cb25
than parameters.  Previously calling the multifit routines with n
Packit 67cb25
would cause invalid memory access.
Packit 67cb25
Packit 67cb25
** Added the Debye unit to physical constants.
Packit 67cb25
Packit 67cb25
** Added cumulative distribution functions for the discrete
Packit 67cb25
distributions, including binomial, poisson, geometric, negative
Packit 67cb25
binomial, pascal and hypergeometric.
Packit 67cb25
Packit 67cb25
** Added the functions gsl_cdf_beta_{Pinv,Qinv} and
Packit 67cb25
gsl_cdf_fdist_{Pinv,Qinv} for computing the inverse of the cumulative
Packit 67cb25
beta and F distributions.
Packit 67cb25
Packit 67cb25
** Added the multilinear fit estimator function gsl_multifit_linear_est
Packit 67cb25
for computing model values and their errors.
Packit 67cb25
Packit 67cb25
** Avoid division by zero in gsl_multimin_fdfminimizer_vector_bfgs
Packit 67cb25
if the step-size becomes too small.
Packit 67cb25
Packit 67cb25
** Users on DEC Alpha systems will need to specify their desired IEEE
Packit 67cb25
arithmetic options via CFLAGS when building the library, as these are
Packit 67cb25
no longer added automatically.
Packit 67cb25
Packit 67cb25
** Added new random variate generators gsl_ran_gaussian_ziggurat
Packit 67cb25
and gsl_ran_gamma_mt for the Gaussian and Gamma distributions based on
Packit 67cb25
the Marsaglia-Tsang ziggurat and fast gamma methods.
Packit 67cb25
Packit 67cb25
** Improved the speed of the exponential power distribution
Packit 67cb25
gsl_ran_exppow.
Packit 67cb25
Packit 67cb25
** Improved the speed of the Gaussian ratio method by adding quadratic
Packit 67cb25
bounds in gsl_ran_gaussian_ratio_method.
Packit 67cb25
Packit 67cb25
** Added an extra term to the taylor series of the synchrotron
Packit 67cb25
functions gsl_sf_synchrotron_1 and gsl_sf_synchrotron_2 for small x to
Packit 67cb25
ensure smooth matching with the chebyshev expansion.
Packit 67cb25
Packit 67cb25
** The binomial pdf gsl_ran_binomial_pdf now handles the cases p=0
Packit 67cb25
and p=1 and is more accurate for the case of small p with k=0.
Packit 67cb25
Packit 67cb25
** Fixed the spherical bessel function gsl_sf_bessel_jl_e) to limit
Packit 67cb25
the use of gsl_sf_bessel_Jnu_asympx_e to the range x>100*l*l to
Packit 67cb25
satisfy he requirement x>>l*l in the asymptotic expansion.
Packit 67cb25
Packit 67cb25
** The scaled bessel function gsl_sf_bessel_In_scaled now handles
Packit 67cb25
larger arguments x > 1e7 correctly for n < 150 using the uniform
Packit 67cb25
asymptotic expansion instead of the continued fraction expansion.
Packit 67cb25
Packit 67cb25
** The functions gsl_stats_min/max now return NaN if the data contains
Packit 67cb25
NaN. Similarly, the functions gsl_stats_min/max_index return the index
Packit 67cb25
of the first occurring NaN in the data when it contains a NaN.
Packit 67cb25
Packit 67cb25
** Fixed an invalid memory access that caused incorrect results for
Packit 67cb25
the special case in periodic cubic spline interpolation of 3 points.
Packit 67cb25
Packit 67cb25
** Added Debye functions for n=5 and n=6
Packit 67cb25
Packit 67cb25
** Added the missing functions gsl_spline_name() and
Packit 67cb25
gsl_spline_min_size()
Packit 67cb25
Packit 67cb25
** The function gsl_rng_uniform_int(r,n) now returns an error for n=0,
Packit 67cb25
which can occur when passing an unsigned integer value of 2^32.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.7:
Packit 67cb25
Packit 67cb25
** Switched gsl_randist_binomial to use the faster binomial random
Packit 67cb25
variate TPE algorithm by default.  The previous binomial variate
Packit 67cb25
algorithm is available as gsl_randist_binomial_knuth.  This will
Packit 67cb25
result in a different sequence of binomial variates in programs using
Packit 67cb25
this function.
Packit 67cb25
Packit 67cb25
** Improved the algorithm for gsl_sf_elljac_e to avoid cancellation
Packit 67cb25
errors near quarter periods.
Packit 67cb25
Packit 67cb25
** Fixed the branch selection in gsl_sf_gamma_inc_Q_e to avoid
Packit 67cb25
inaccurate results for large a,x where x~=~a.
Packit 67cb25
Packit 67cb25
** The multilinear fitting functions now have forms which accept a
Packit 67cb25
user-specified tolerance for the SVD cutoff and return the
Packit 67cb25
corresponding effective rank of the design matrix.
Packit 67cb25
Packit 67cb25
** The quadratic solvers in poly/ now handle linear equations
Packit 67cb25
gracefully (i.e. quadratrics with a leading coefficient of zero).
Packit 67cb25
Packit 67cb25
** The output of "make check" now only shows test failures by default,
Packit 67cb25
to reduce the amount of output.  Set the environment variable
Packit 67cb25
GSL_TEST_VERBOSE=1 to display all the output.  To assist debugging,
Packit 67cb25
the test number of each failure is shown in square brackets at the
Packit 67cb25
line-end [NNNN].
Packit 67cb25
Packit 67cb25
** Fixed bugs in gsl_linalg_SV_decomp_jacobi which caused
Packit 67cb25
incorrect results for some input matrices.
Packit 67cb25
Packit 67cb25
** Bessel, coulomb, dilogarithm and legendre_H3d functions now use
Packit 67cb25
hypot internally to avoid overflow when computing terms like
Packit 67cb25
sqrt(1+x*x).
Packit 67cb25
Packit 67cb25
** The 'Usage' chapter of the reference manual now explains how to
Packit 67cb25
handle deprecated functions using the GSL_DISABLE_DEPRECATED macro.
Packit 67cb25
Packit 67cb25
** The conflicting enum definitions for 'forward' and 'backward' in
Packit 67cb25
gsl_ftt.h and gsl_wavelet.h are deprecated.  User code should switch
Packit 67cb25
to the new definitions gsl_fft_forward, gsl_fft_backward,
Packit 67cb25
gsl_wavelet_forward and gsl_wavelet_backward. Selectively define
Packit 67cb25
GSL_DISABLE_DEPRECATED before including the headers to use the new
Packit 67cb25
definitions on either or both modules.
Packit 67cb25
Packit 67cb25
** Fixed an error in the the brent minimisation algorithm.  Iterations
Packit 67cb25
should now follow Brent's original description correctly.
Packit 67cb25
Packit 67cb25
** The bound coulomb function gsl_sf_hydrogenicR_e no longer reports
Packit 67cb25
an underflow for exact zeroes of the wavefunction.
Packit 67cb25
Packit 67cb25
** gsl_linalg_SV_decomp_jacobi now reports an error for the
Packit 67cb25
unimplemented case M
Packit 67cb25
Packit 67cb25
** Fixed conformance test for the SYRK and HERK blas functions
Packit 67cb25
gsl_blas_{s,d,c,z}syrk and gsl_blas_{c,z}herk for non-square matrices.
Packit 67cb25
Packit 67cb25
** Configure now checks for presence of ieeefp.h if needed.
Packit 67cb25
Packit 67cb25
** Differential equation solvers now propagate error codes returned
Packit 67cb25
from user-defined functions to the top-level in all cases.
Packit 67cb25
Packit 67cb25
** Sort functions now avoid an infinite loop if Nans are present in
Packit 67cb25
the input vector.  The order of nans in the output is undefined,
Packit 67cb25
although other elements will be sorted correctly.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.6:
Packit 67cb25
Packit 67cb25
** Added a new wavelet directory, with 1-dimensional and 2-dimensional
Packit 67cb25
discrete wavelet transforms.
Packit 67cb25
Packit 67cb25
** Added support for LQ and P^T LQ decompositions.  To find the QR
Packit 67cb25
decomposition of large systems (M>>N) use the LQ decomposition,
Packit 67cb25
solving the transpose of the original system.  This allows more
Packit 67cb25
efficient memory access, and is useful for solving large least-squares
Packit 67cb25
problems.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the SYRK and HERK blas functions gsl_blas_{s,d,c,z}syrk 
Packit 67cb25
and gsl_blas_{c,z}herk which caused invalid memory access for non-square 
Packit 67cb25
matrices.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_swap_vectors which caused it to return incorrect
Packit 67cb25
results when swapping vectors with different strides.
Packit 67cb25
Packit 67cb25
** Corrected the error estimate for gsl_cheb_eval_n_err to use
Packit 67cb25
evaluation order instead of the approximation order.
Packit 67cb25
Packit 67cb25
** Improved the reliability of the gsl_sf_gamma_inc family of
Packit 67cb25
functions.
Packit 67cb25
Packit 67cb25
** Equal abscissae are now handled gracefully in the cspline and
Packit 67cb25
periodic cspline interpolations.
Packit 67cb25
Packit 67cb25
** Removed potential cancellation error in calculation of uniform
Packit 67cb25
histogram ranges.
Packit 67cb25
Packit 67cb25
** Improved numerical stability of integration for akima and cspline
Packit 67cb25
interpolation.
Packit 67cb25
Packit 67cb25
** Differential equation solvers now handle error codes returned from
Packit 67cb25
user-defined functions.
Packit 67cb25
Packit 67cb25
** Improved error estimates in ode-initval solvers, and provide exact
Packit 67cb25
derivatives on output.  Added new semi-implicit ode-initval solver,
Packit 67cb25
gsl_odeiv_step_rk2simp.
Packit 67cb25
Packit 67cb25
** Added missing function definition for gsl_sf_psi_1.
Packit 67cb25
Packit 67cb25
** Fixed the function gsl_sf_expint_Ei_scaled to call
Packit 67cb25
gsl_sf_expint_Ei_scaled_e instead of gsl_sf_expint_Ei_e.
Packit 67cb25
Packit 67cb25
** Added cumulative distribution function for exponential power
Packit 67cb25
distribution.
Packit 67cb25
Packit 67cb25
** The functions gsl_cdf_beta_P and gsl_cdf_beta_Q now return
Packit 67cb25
consistent results of 0 or 1 for out of range values, x<0 and x>1,
Packit 67cb25
rather than 0 for left and right tails simultaneously.
Packit 67cb25
Packit 67cb25
** The Jacobi eigensolvers gsl_eigen_jacobi and gsl_eigen_jacobi_invert 
Packit 67cb25
have new implementations from Golub and Van Loan.
Packit 67cb25
Packit 67cb25
** The standard output and standard error streams are now flushed by
Packit 67cb25
the default error handler before the program aborts, in order to
Packit 67cb25
ensure that error messages are properly displayed on some platforms.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.5:
Packit 67cb25
Packit 67cb25
** Multifit routines now handle iterations where |f| is already
Packit 67cb25
minimised to zero, without division by zero.
Packit 67cb25
Packit 67cb25
** Fixed the singular value tolerance test in the multifit covariance
Packit 67cb25
calculation from < to <= to match the original MINPACK code.
Packit 67cb25
Packit 67cb25
** The macro HAVE_INLINE is now tested with #ifdef instead of #if as
Packit 67cb25
in versions prior to 1.4, to match the documentation, and the macro
Packit 67cb25
GSL_RANGE_CHECK_OFF now works correctly.  An alternative macro
Packit 67cb25
GSL_RANGE_CHECK={0,1} can be used to control range-checking.
Packit 67cb25
Packit 67cb25
** Fixed a potential array overflow in gsl_ran_landau.
Packit 67cb25
Packit 67cb25
** Fixed a small discrepancy in the tolerance calculation of the
Packit 67cb25
one-dimensional brent minimiser.
Packit 67cb25
Packit 67cb25
** Numerical derivatives should now be calculated using the
Packit 67cb25
gsl_deriv_forward, gsl_deriv_central and gsl_deriv_backward functions,
Packit 67cb25
which accept a step-size argument in addition to the position x.  The
Packit 67cb25
original gsl_diff functions (without the step-size) are deprecated.
Packit 67cb25
Packit 67cb25
** Corrected documentation for gsl_ran_hypergeometric_pdf()
Packit 67cb25
Packit 67cb25
** The tridiagonal matrix solvers gsl_linalg_solve_symm_tridiag,
Packit 67cb25
gsl_linalg_solve_tridiag, gsl_linalg_solve_symm_cyc_tridiag,
Packit 67cb25
gsl_linalg_solve_cyc_tridiag now use the GSL_ERROR macro to report
Packit 67cb25
errors, instead of simply returning an error code.  The arguments to
Packit 67cb25
these functions must now use exact lengths with no additional
Packit 67cb25
elements.  For cyclic systems all vectors must be of length N, for
Packit 67cb25
tridiagonal systems the offdiagonal elements must be of length N-1.
Packit 67cb25
Packit 67cb25
** The singular value decomposition routines gsl_linalg_SV_decomp and
Packit 67cb25
gsl_linalg_SV_decomp_mod now handle the SVD of a column vector (N=1,
Packit 67cb25
arbitrary M), which can occur in linear fitting.
Packit 67cb25
Packit 67cb25
** Restored missing header files gsl_const_mks.h and gsl_const_cgs.h.
Packit 67cb25
The incorrect values of the electrical units for gsl_const_cgs
Packit 67cb25
(VACUUM_PERMEABILITY and VACUUM_PERMITTIVITY) have been removed.
Packit 67cb25
Packit 67cb25
** Fixed gsl_linalg_SV_decomp() to avoid an infinite loop when
Packit 67cb25
computing the SVD of matrices containing Inf and Nan.
Packit 67cb25
Packit 67cb25
** Fixed gsl_linalg_balance_columns() to avoid an infinite loop when
Packit 67cb25
rescaling matrices containing Inf and NaN.
Packit 67cb25
Packit 67cb25
** Fixed header file <gsl/gsl_sf_log.h> to include declarations for 
Packit 67cb25
error codes in inline versions of gsl_sf_log functions
Packit 67cb25
Packit 67cb25
** Fixed header file <gsl/gsl_const.h> to include new MKSA and CGSM
Packit 67cb25
header files.
Packit 67cb25
Packit 67cb25
** Added Stefan-Boltzmann constant and Thomson cross section to
Packit 67cb25
physical constants
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.4:
Packit 67cb25
Packit 67cb25
** Added cumulative distribution functions and their inverses for the
Packit 67cb25
continuous random distributions including: gaussian, lognormal, gamma,
Packit 67cb25
beta, cauchy, laplace, chisq, exponential, gumbel, weibull,
Packit 67cb25
F-distribution, t-distribution, logistic, pareto and rayleigh.
Packit 67cb25
Packit 67cb25
** Added faster binomial random variates using the TPE rejection
Packit 67cb25
algorithm, in the function gsl_randist_binomial_tpe.
Packit 67cb25
Packit 67cb25
** Added new functions gsl_rng_fwrite and gsl_rnd_fread for storing
Packit 67cb25
the state of random number generators in a file.
Packit 67cb25
Packit 67cb25
** Added a new function gsl_combination_memcpy()
Packit 67cb25
Packit 67cb25
** Corrected values of electrical constants in CGS units.  To take
Packit 67cb25
account of different electrical systems of units the values are now
Packit 67cb25
prefixed by GSL_CONST_MKSA (for the SI Metre, Kilogram, Second, Ampere
Packit 67cb25
system) or GSL_CONST_CGSM (for the Centimetre, Gram, Second, Magnetic
Packit 67cb25
system with the Gauss as the fundamental unit of magnetic field
Packit 67cb25
strength).  The previous GSL_CONST_MKS and GSL_CONST_CGS prefixes have
Packit 67cb25
been removed, as have the permeability and permittivity constants in
Packit 67cb25
the CGS system since this uses different defining equations.
Packit 67cb25
Packit 67cb25
** Fixed bugs in the random number generators gsl_rng_fishman18,
Packit 67cb25
gsl_rng_fishman2x, and gsl_rng_knuthran2 which caused them to return
Packit 67cb25
incorrect results.  Minor corrections were made to the parameters in
Packit 67cb25
the other Knuth generators borosh13, coveyou, fishman20, lecuyer21,
Packit 67cb25
and waterman14.
Packit 67cb25
Packit 67cb25
** Fixed a missing transpose bug in the gsl_linalg_QR_QRsolve
Packit 67cb25
and gsl_linalg_QRPT_QRsolve routines which were computing the
Packit 67cb25
solution to Q^T R x = b instead of Q R x = b.
Packit 67cb25
Packit 67cb25
** Fixed gsl_sf_gammainv to return zero instead of a domain
Packit 67cb25
error for arguments corresponding to singularities in gamma.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the simplex minimization algorithm which
Packit 67cb25
caused it to fail to find the second highest point correctly
Packit 67cb25
when searching the set of simplex points.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the conjugate gradient minimizers conjugate_pr,
Packit 67cb25
conjugate_fr and vector_bgfs which caused the search
Packit 67cb25
directions to be updated incorrectly.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_sf_psi_1_int(1) which caused it to
Packit 67cb25
return the incorrect sign for psi(1,1).
Packit 67cb25
Packit 67cb25
** Fixed the simulated annealing routine gsl_siman_solve to use the
Packit 67cb25
parameter iters_fixed_T for the number of iterations at fixed
Packit 67cb25
temperature instead of n_tries.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_combination_valid which caused it to return the
Packit 67cb25
incorrect status.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_permutation_canonical_to_linear which caused the
Packit 67cb25
output to always be zero, and the input permutation to be incorrectly
Packit 67cb25
replaced by the output.
Packit 67cb25
Packit 67cb25
** Fixed a bug is gsl_ran_discrete which could cause uninitialised
Packit 67cb25
data to be returned for some distributions.
Packit 67cb25
Packit 67cb25
** Fixed the dependencies for gsl_chebyshev.h to include gsl_math.h.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_complex_arccsc_real which caused it to return 
Packit 67cb25
the incorrect sign for the imaginary part when -1
Packit 67cb25
Packit 67cb25
** Fixed a bug in the QAWC Cauchy integration routine which could
Packit 67cb25
allow the singularity to fall on an interval boundary, leading to
Packit 67cb25
division by zero.
Packit 67cb25
Packit 67cb25
** Improved gsl_sf_gamma_inc_P(a,x) to avoid a domain error for x<
Packit 67cb25
when a>10.
Packit 67cb25
Packit 67cb25
** Improved the accuracy of gsl_sf_coupling_3j for large arguments.
Packit 67cb25
Packit 67cb25
** Improved the performance of gsl_sf_choose(m,n) by separating the
Packit 67cb25
calculations for small and large arguments.
Packit 67cb25
Packit 67cb25
** On platforms without IEEE comparisons gsl_{isnan,isinf,finite} will
Packit 67cb25
fall back to the system versions of isnan, isinf and finite if
Packit 67cb25
available.
Packit 67cb25
Packit 67cb25
** gsl_linalg_householder_hv now uses BLAS routines internally
Packit 67cb25
Packit 67cb25
** The script configure.in is now compatible with autoconf-2.50 and
Packit 67cb25
later.
Packit 67cb25
Packit 67cb25
** Reduced the memory usage of the multifit algorithms from MxM to MxN
Packit 67cb25
for large M by performing the QR decomposition of the Jacobian
Packit 67cb25
in-place.
Packit 67cb25
Packit 67cb25
** IEEE modes now use the C99 fenv.h functions when platform spectific
Packit 67cb25
functions are not available.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.3:
Packit 67cb25
Packit 67cb25
** Changed interface for gsl_sf_coupling_6j...(...). The old functions
Packit 67cb25
actually calculated 6j for a permutation of the arguments (that
Packit 67cb25
related to Racah W). This was incorrect and not consistent with
Packit 67cb25
the documentation. The new versions calculate < {a,b,c}, {d,e,f} >,
Packit 67cb25
as stated in the documentation. The old versions are still available
Packit 67cb25
as gsl_sf_coupling_6j_INCORRECT...(...), though they are deprecated
Packit 67cb25
and will be removed at some point in the future.
Packit 67cb25
Packit 67cb25
** Added new functions for computing Em(x)=exp(-x)*Ei(x), the modified
Packit 67cb25
(scaled) form of the exponential integral, gsl_sf_expint_E1_scaled,
Packit 67cb25
gsl_sf_expint_E2_scaled, gsl_sf_expint_Ei_scaled.
Packit 67cb25
   
Packit 67cb25
** Fixed compilation problems with gcc -ansi and other ANSI compilers.
Packit 67cb25
Packit 67cb25
** Fixed uninitialized memory access in the Niederreiter quasi-random
Packit 67cb25
number generator.
Packit 67cb25
Packit 67cb25
** Fixed the eigenvalue routines to prevent an infinite loop for Inf
Packit 67cb25
or NaN entries in matrix.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the multifit and multiroots allocation routines
Packit 67cb25
which cause them to fail to report some out of memory conditions.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the seeding for the random number generator
Packit 67cb25
gsl_rng_taus2 which affected a small number of seeds.
Packit 67cb25
Packit 67cb25
** Modified the complex householder transforms to avoid division by
Packit 67cb25
zero, which could cause NaNs to be returned by the gsl_eigen_hermv
Packit 67cb25
eigenvalue decomposition.
Packit 67cb25
Packit 67cb25
** The Nelder-Mead simplex algorithm for multidimensional 
Packit 67cb25
minimisation has been added.
Packit 67cb25
Packit 67cb25
** The random number distributions now include the Dirichlet and
Packit 67cb25
Multinomial distributions.
Packit 67cb25
Packit 67cb25
** Added a new function gsl_fcmp for approximate comparison of
Packit 67cb25
floating point numbers using Knuth's algorithm.
Packit 67cb25
Packit 67cb25
** Added new functions gsl_ldexp and gsl_frexp as portable
Packit 67cb25
alternatives to ldexp() and frexp().
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_linalg_bidiag_unpack_B which was returning
Packit 67cb25
incorrect results for the superdiagonal.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the acceptance condition for simulated annealing
Packit 67cb25
Packit 67cb25
** Ordinary differential equations can now be solved using a different
Packit 67cb25
absolute error for each component with gsl_odeiv_control_scaled_new().
Packit 67cb25
Packit 67cb25
** Upgraded to libtool-1.4.3
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.2:
Packit 67cb25
Packit 67cb25
** Added new functions for combining permutations, converting between
Packit 67cb25
cyclic and linear representations, and counting cycles and inversions.
Packit 67cb25
Packit 67cb25
** New multiroot functions now allow access to the current values of f
Packit 67cb25
and dx.
Packit 67cb25
Packit 67cb25
** The default error handler now outputs a explanatory message before
Packit 67cb25
aborting.
Packit 67cb25
Packit 67cb25
** Extended gsl_linalg_SV_decomp to handle exact zeroes in the
Packit 67cb25
singular values, and added tests for 3x3 matrices.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_linalg_SV_decomp which caused singular values to
Packit 67cb25
be sorted incorrectly.
Packit 67cb25
Packit 67cb25
** Fixed a bug in gsl_linalg_solv_symm_cyc_tridiag which caused it to
Packit 67cb25
produce incorrect results.
Packit 67cb25
Packit 67cb25
** Added nonsymmetric tridiagonal solvers gsl_linalg_solve_tridiag and
Packit 67cb25
gsl_linalg_solve_cyc_tridiag.
Packit 67cb25
Packit 67cb25
** The declarations used to export static objects can now be
Packit 67cb25
controlled through a macro GSL_VAR and the header file
Packit 67cb25
<gsl/gsl_types.h>.
Packit 67cb25
Packit 67cb25
** The simulated annealing routine gsl_siman_solve now keeps track of
Packit 67cb25
the best solution so far.
Packit 67cb25
Packit 67cb25
** The values of the physical constants have been updated to the
Packit 67cb25
CODATA 1998 recommendations.
Packit 67cb25
Packit 67cb25
** Added new physical constants, newton, dyne, joule, erg and 
Packit 67cb25
power-of-ten prefixes, Mega, Giga, Tera, etc.
Packit 67cb25
Packit 67cb25
** The error estimate for the elliptic function gsl_sf_ellint_Kcomp_e
Packit 67cb25
has been improved to take account of numerical cancellation for small
Packit 67cb25
arguments.
Packit 67cb25
Packit 67cb25
** The domain of gsl_sf_psi_1piy has been extended to negative y.
Packit 67cb25
Packit 67cb25
** Fixed memory leak in the Chebyshev module.
Packit 67cb25
Packit 67cb25
** The seeding procedure of mt19937 has been updated to the latest
Packit 67cb25
version from Makoto Matsumoto and Takuji Nishimura (Jan 2002). The
Packit 67cb25
original seeding procedure is available through the generator
Packit 67cb25
gsl_rng_mt19937_1999.
Packit 67cb25
Packit 67cb25
** A new random number generator gsl_rng_taus2 has been added to
Packit 67cb25
correct flaws in the seeding procedure of gsl_rng_taus, as described
Packit 67cb25
in an erratum to the original paper of P. L'Ecuyer.
Packit 67cb25
Packit 67cb25
** Added missing declaration for the generator gsl_rng_mt_19937_1998.
Packit 67cb25
Packit 67cb25
** Added missing quasi-random number generator function gsl_qrng_init.
Packit 67cb25
Packit 67cb25
** Removed unnecessary endpoint subtraction in chebyshev-based
Packit 67cb25
QUADPACK routines to avoid possible loss of precision.
Packit 67cb25
Packit 67cb25
** Fixed bug in gsl_interp_cspline_periodic which caused a
Packit 67cb25
discontinuity in the derivative near the boundary.
Packit 67cb25
Packit 67cb25
** The function gsl_min_fminimizer_minimum has been renamed to
Packit 67cb25
gsl_min_fminimizer_x_minimum for consistency (the old function name is
Packit 67cb25
still available but is deprecated).  Additional functions have been
Packit 67cb25
added for accessing the function values at the minimum and endpoints
Packit 67cb25
of the bounding interval.
Packit 67cb25
Packit 67cb25
** The KNOWN-PROBLEMS file of "make check" failures has been replaced
Packit 67cb25
by a BUGS file, since we now require "make check" to work correctly
Packit 67cb25
for stable releases.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.1.1:
Packit 67cb25
Packit 67cb25
** Fixes to histogram2d stat functions
Packit 67cb25
Packit 67cb25
** Added missing prototypes for complex LU determinant functions
Packit 67cb25
Packit 67cb25
** Improved error handling in multifit routines
Packit 67cb25
Packit 67cb25
** Added check to avoid division by zero for rank-deficient matrix in
Packit 67cb25
multifit iteration
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.1:
Packit 67cb25
Packit 67cb25
** The permutation module now includes a copy function
Packit 67cb25
gsl_permutation_memcpy
Packit 67cb25
Packit 67cb25
** The implementation of gsl_sf_gamma_inc has been improved and now
Packit 67cb25
avoids problems caused by internal singularities which occurred in the
Packit 67cb25
series expansion for some combinations of parameters.
Packit 67cb25
Packit 67cb25
** IEEE comparisons of infinities and NaNs are tested during the
Packit 67cb25
configure stage and the functions gsl_isnan, gsl_isinf and gsl_finite
Packit 67cb25
are only compiled on platforms which support the necessary tests.
Packit 67cb25
Packit 67cb25
** The histogram routines now include a sum function,
Packit 67cb25
gsl_histogram_sum for computing the total bin sum, and additional
Packit 67cb25
statistics functions for 2d histograms.
Packit 67cb25
Packit 67cb25
** Internal error checking of user-defined functions has been improved
Packit 67cb25
in the multiroots functions.
Packit 67cb25
Packit 67cb25
** Constants now include the Bohr Radius and Vacuum Permittivity.
Packit 67cb25
Packit 67cb25
** Range checking is now turned off when building the library, but is
Packit 67cb25
still on by default when compiling user applications.
Packit 67cb25
Packit 67cb25
** A combinations directory has been added for generating combinations (n,k).
Packit 67cb25
Packit 67cb25
** The gamma function now returns exact values for integer arguments.
Packit 67cb25
Packit 67cb25
** Fixed bugs in gsl_sf_hyperg_1F1_int and gsl_sf_hyperg_1F1.
Packit 67cb25
Packit 67cb25
** Fixed internal error handling in gsl_sf_laguerre_n to allow
Packit 67cb25
recovery from overflow.
Packit 67cb25
Packit 67cb25
** Several routines for handling divided difference polynomials have
Packit 67cb25
been added to the poly/ directory.
Packit 67cb25
Packit 67cb25
** The interpolation routines now include polynomial interpolation,
Packit 67cb25
based on divided-differences.
Packit 67cb25
Packit 67cb25
** Added new random number generators from Knuth's Seminumerical
Packit 67cb25
Algorithms, 3rd Edition: borosh13, coveyou, fishman18, fishman20,
Packit 67cb25
fishman2x, knuthran, knuthran2, lecuyer21, waterman14.
Packit 67cb25
Packit 67cb25
** Changed divisor in random number generator gfsr4 from 2^32-1 to
Packit 67cb25
2^32 to prevent exact value of 1.0 from being returned, as specified
Packit 67cb25
in the documentation.
Packit 67cb25
Packit 67cb25
* What was new in gsl-1.0:
Packit 67cb25
Packit 67cb25
** First general release.
Packit 67cb25
Packit 67cb25
** Increased the maximum number of iterations in gsl_poly_complex_solve()
Packit 67cb25
from 30 to 60.
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.9.4:
Packit 67cb25
Packit 67cb25
** Reorganized the multmin functions to use the same interface as the
Packit 67cb25
other iterative solvers.
Packit 67cb25
Packit 67cb25
** Added histogram _alloc functions for consistency, in addition to the
Packit 67cb25
existing _calloc functions.
Packit 67cb25
Packit 67cb25
** Renamed all the gsl_multimin functions to be consistent with the
Packit 67cb25
rest of the library.  An underscore has been removed from _minimizer
Packit 67cb25
in all the function names.
Packit 67cb25
Packit 67cb25
** Renamed the function gsl_sf_coulomb_CL_list to gsl_sf_coulomb_CL_array
Packit 67cb25
Packit 67cb25
** A bug in the multimin functions where the function parameters
Packit 67cb25
(params) were omitted has been fixed.
Packit 67cb25
Packit 67cb25
** A bug in the nonlinear minimization routines has been fixed, which
Packit 67cb25
could prevent the algorithms from converging.  Additional tests from
Packit 67cb25
the NIST reference datasets have been added and these now agree with
Packit 67cb25
MINPACK.
Packit 67cb25
Packit 67cb25
** All the physical constants and conversion factors are now defined as
Packit 67cb25
real numbers to avoid potential problems with integer arithmetic.
Packit 67cb25
Packit 67cb25
** The ODE evolution routines now allow for negative step sizes, and
Packit 67cb25
integrating backwards as well as forwards.
Packit 67cb25
Packit 67cb25
** The implicit Burlisch-Stoer ODE algorithm 'bsimp' now detects
Packit 67cb25
singularities and forces a reduction in step size, preventing runaway
Packit 67cb25
instabilities.
Packit 67cb25
Packit 67cb25
** Fixed a bug in the ODE evolution function gsl_odeiv_evolve_apply
Packit 67cb25
which could cause an erroneous value to be returned if the step size
Packit 67cb25
is reduced on the last step.
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.9.3:
Packit 67cb25
Packit 67cb25
** Routines for complex LU decomposition are now available, allowing
Packit 67cb25
the solution of systems of equations with complex coefficients.
Packit 67cb25
Packit 67cb25
** Matrix views of vectors now correctly require a unit stride for the
Packit 67cb25
original vector.
Packit 67cb25
Packit 67cb25
** Permutations can now be applied to complex arrays and vectors.
Packit 67cb25
Packit 67cb25
** gsl_sf_pow_int now handles the case x = 0, n < 0
Packit 67cb25
Packit 67cb25
** The static versions of inline functions can now be hidden by
Packit 67cb25
defining the preprocessor macro HIDE_INLINE_STATIC.  This is needed
Packit 67cb25
for some compilers.
Packit 67cb25
Packit 67cb25
** The original seeding procedure of mt19937 is available through the
Packit 67cb25
generator gsl_rng_mt19937_1998.  The seeding procedure was flawed, but
Packit 67cb25
is available for compatibility.
Packit 67cb25
Packit 67cb25
** Added missing functions gsl_complex_div_real and
Packit 67cb25
gsl_complex_div_imag.
Packit 67cb25
Packit 67cb25
** Missing functions for constant vector and matrix views have now been
Packit 67cb25
added.
Packit 67cb25
Packit 67cb25
** Statistical calculations for histograms are now available, and the
Packit 67cb25
gsl-histogram command also displays the histogram mean and standard
Packit 67cb25
deviation.
Packit 67cb25
Packit 67cb25
** The behavior of GSL_IEEE_MODE for denormalized exceptions has been
Packit 67cb25
fixed on Openbsd and Netbsd.
Packit 67cb25
Packit 67cb25
** A pkg-config file gsl.pc is included in the distribution
Packit 67cb25
Packit 67cb25
** The reference manual can now be printed in @smallbook format without
Packit 67cb25
overflow.
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.9.2:
Packit 67cb25
Packit 67cb25
** Vector and matrix views are now compliant with the ANSI standard.
Packit 67cb25
Packit 67cb25
** Added Lambert functions gsl_sf_lambert_W0, gsl_sf_lambert_Wm1.
Packit 67cb25
Packit 67cb25
** The reference manual now uses the GNU Free Documentation License.
Packit 67cb25
Packit 67cb25
** Fixed a couple of bugs in the SVD routines.
Packit 67cb25
Packit 67cb25
** Macros for Infinity and Nan now work correctly with Microsoft Visual
Packit 67cb25
C++, and a bug in the config.h file for the finite() function has been
Packit 67cb25
fixed.
Packit 67cb25
Packit 67cb25
** Redundant entries in the test suite for the complex math functions
Packit 67cb25
have been removed, making the distribution size smaller.
Packit 67cb25
Packit 67cb25
** Installed programs gsl-randist and gsl-histogram now use shared
Packit 67cb25
libraries.
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.9.1:
Packit 67cb25
Packit 67cb25
** The single precision ffts now uses float throughout, rather than
Packit 67cb25
mixing float and double.
Packit 67cb25
Packit 67cb25
** The random number distributions now include the Landau distribution.
Packit 67cb25
Packit 67cb25
** The fft function interface has been reorganized, with workspaces
Packit 67cb25
separate from wavetables to eliminate unnecessary recomputation of
Packit 67cb25
trigonometric factors.
Packit 67cb25
Packit 67cb25
** The gsl_interval type has been eliminated and replaced by two double
Packit 67cb25
arguments for simplicity.
Packit 67cb25
Packit 67cb25
** The order of the arguments to the minimization routines is no more
Packit 67cb25
logical, with function values assocatied with x-values.
Packit 67cb25
Packit 67cb25
** Modified initialization of vector and matrix views to work with the
Packit 67cb25
SunPro compiler.
Packit 67cb25
Packit 67cb25
** Renamed gsl_Efunc_t to gsl_siman_Efunc_t, in accordance with
Packit 67cb25
namespace conventions.
Packit 67cb25
Packit 67cb25
** Improved accuracy and fixed bugs in gsl_sf_hyperg_1F1,
Packit 67cb25
gsl_sf_bessel_I0_scaled, gsl_sf_erfc, gsl_sf_log_erfc,
Packit 67cb25
gsl_sf_legendre_Q0 and gsl_sf_legendre_Q1, and gsl_sf_zeta.
Packit 67cb25
Packit 67cb25
** Improved IEEE compliance of special functions, overflows now return
Packit 67cb25
Inf and domain errors return NaN.
Packit 67cb25
Packit 67cb25
** Improved checking for underflows in special functions when using
Packit 67cb25
extended precision registers
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.9:
Packit 67cb25
Packit 67cb25
** There is a new system of vector and matrix views.  Any code using
Packit 67cb25
vector and matrix views will need to be updated.  
Packit 67cb25
Packit 67cb25
** The order of arguments of the view functions involving strides have
Packit 67cb25
been changed to be consistent with the rest of the library.
Packit 67cb25
Packit 67cb25
** The ode solvers have been reorganized.
Packit 67cb25
Packit 67cb25
** There are new eigensystem routines for real symmetric and complex
Packit 67cb25
hermitian matrices.
Packit 67cb25
Packit 67cb25
** The linear algebra directory now includes functions for computing
Packit 67cb25
symmetric tridiagonal decompositions and bidiagonal decompositions.
Packit 67cb25
Packit 67cb25
** The svd routines now include the Golub-Reinsch and Modified
Packit 67cb25
Golub-Reinsch algorithms in addition to the Jacobi algorithm.
Packit 67cb25
Packit 67cb25
** The interpolation directory has been reorganized and a higher-level
Packit 67cb25
"spline" interface has been added which simplifies the handling of
Packit 67cb25
interpolation arguments.
Packit 67cb25
Packit 67cb25
** IEEE support is now available on OpenBSD.
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.8:
Packit 67cb25
Packit 67cb25
** The build process now uses the latest libtool and automake.
Packit 67cb25
Packit 67cb25
** The library should now compile with Microsoft Visual C++.
Packit 67cb25
Packit 67cb25
** Portable versions of the isinf, isnan and finite functions are
Packit 67cb25
available as gsl_isinf(x), gsl_isnan(x) and gsl_finite(x).
Packit 67cb25
Packit 67cb25
** The definitions of GSL_POSINF, GSL_NEGINF and GSL_NAN no longer
Packit 67cb25
cause divisions by zero during compilation.
Packit 67cb25
Packit 67cb25
** The gsl_interp_obj has been renamed to gsl_interp.
Packit 67cb25
Packit 67cb25
** The poly_eval and pow_int functions have been moved from the
Packit 67cb25
specfunc directory to the poly and sys directories.
Packit 67cb25
Packit 67cb25
** The Chebyshev functions are now available as an independent module
Packit 67cb25
in their own directory.
Packit 67cb25
Packit 67cb25
** The error handling conventions have been unified across the
Packit 67cb25
library.  This simplifies the use of the special functions.
Packit 67cb25
Packit 67cb25
** A full CBLAS implementation is now included for systems where ATLAS
Packit 67cb25
has not been installed. The CBLAS library can also be used
Packit 67cb25
independently of GSL.  The organisation of the BLAS directories has been
Packit 67cb25
simplified.
Packit 67cb25
Packit 67cb25
** IEEE support for HPUX-11, NetBSD, Apple Darwin and OS/2 are now
Packit 67cb25
included.
Packit 67cb25
Packit 67cb25
** The library now includes implementations of log1p, expm1, hypot,
Packit 67cb25
acosh, asinh, atanh for platforms which do not provide them.
Packit 67cb25
Packit 67cb25
** The convention for alloc and set functions has changed so that they
Packit 67cb25
are orthogonal. After allocating an object it is now necessary to
Packit 67cb25
initialize it.
Packit 67cb25
Packit 67cb25
** There is a new module for estimating numerical derivatives of functions
Packit 67cb25
Packit 67cb25
** There is a new module for handling data with ntuples
Packit 67cb25
Packit 67cb25
** The histogram lookup functions are now optimized for the case of
Packit 67cb25
uniform bins, and include an inline binary search for speed.
Packit 67cb25
Packit 67cb25
** The Chebyschev coefficients for the QAWO algorithm are now
Packit 67cb25
precomputed in a table for efficiency, rather than being computed on
Packit 67cb25
the fly.
Packit 67cb25
Packit 67cb25
** There are several new sorting functions for selecting the k-th
Packit 67cb25
smallest or largest elements of a dataset.
Packit 67cb25
Packit 67cb25
** Iterator functions are now available for permutations,
Packit 67cb25
gsl_permutation_next and gsl_permutation_prev.
Packit 67cb25
Packit 67cb25
** The function gsl_complex_xy has been renamed gsl_complex_rect
Packit 67cb25
Packit 67cb25
** The API for simulated annealing has been changed to support search
Packit 67cb25
spaces in which the points cannot be represented as contiguous-memory
Packit 67cb25
data structures.  gsl_siman_solve() now takes three extra arguments: a
Packit 67cb25
copy constructor, a copy function and a destructor, allowing
Packit 67cb25
gsl_siman_solve() to do its work with linked data structures.  If all
Packit 67cb25
three of these function pointers are NULL, then the traditioanl
Packit 67cb25
approach of using malloc(), memcpy(), and free() with the element size
Packit 67cb25
is used.
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.7:
Packit 67cb25
Packit 67cb25
** Linux/PowerPC should now be well supported.
Packit 67cb25
Packit 67cb25
** Header files for common physical constants have been added.
Packit 67cb25
Packit 67cb25
** Functions linear and nonlinear regression in one or more dimensions
Packit 67cb25
are now available.
Packit 67cb25
Packit 67cb25
** Vector and matrix views now have access to the address of the
Packit 67cb25
underlying block for compatibility with VSIPL (www.vsipl.org).
Packit 67cb25
Packit 67cb25
** There is a new library for generating low-discrepancy quasi-random
Packit 67cb25
sequences.
Packit 67cb25
Packit 67cb25
** The seeding procedure of the default random number generator
Packit 67cb25
MT19937 has been updated to match the 10/99 release of the original
Packit 67cb25
code.  This fixes a weakness which occurred for seeds which were
Packit 67cb25
powers of 2.
Packit 67cb25
Packit 67cb25
** The blas library libgslblasnative has been renamed libgslblas to avoid
Packit 67cb25
confusion with system blas library
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.6:
Packit 67cb25
Packit 67cb25
** The library is now installed as a single shared or static libgsl
Packit 67cb25
file using libtool.
Packit 67cb25
Packit 67cb25
** The gsl-config script now works.  There is also a gsl.m4 file which
Packit 67cb25
people can use in their configure scripts.
Packit 67cb25
Packit 67cb25
** All header files are now in installed as pkginclude headers in a
Packit 67cb25
gsl/ subdirectory.
Packit 67cb25
Packit 67cb25
** The header files now use extern "C" to allow them to be included in
Packit 67cb25
C++ programs
Packit 67cb25
Packit 67cb25
** For consistency the following functions have been renamed,
Packit 67cb25
Packit 67cb25
    gsl_vector_copy (dest, src) is now  gsl_vector_memcpy (dest, src)
Packit 67cb25
    gsl_rng_cpy (dest, src)     is now  gsl_rng_memcpy (dest, src)
Packit 67cb25
    gsl_matrix_copy_row (v,m,i) is now  gsl_matrix_get_row (v,m,i)
Packit 67cb25
    gsl_matrix_copy_col (v,m,j) is now  gsl_matrix_get_col (v,m,j)
Packit 67cb25
    gsl_vector_swap             is now  gsl_vector_swap_elements
Packit 67cb25
    gsl_vector_swap_cols        is now  gsl_vector_swap_columns
Packit 67cb25
    gsl_vector_swap_row_col     is now  gsl_vector_swap_row_column
Packit 67cb25
Packit 67cb25
and the vector/matrix view allocation functions have been simplified.
Packit 67cb25
Packit 67cb25
** A new sort directory has been added for sorting objects and vectors.
Packit 67cb25
Packit 67cb25
** A permutation directory has been added for manipulating permutations
Packit 67cb25
Packit 67cb25
** Statistics functions now support a stride argument for generality, and
Packit 67cb25
also support weighted samples and a covariance function.
Packit 67cb25
Packit 67cb25
** The names of the statistics functions have been reorganized for
Packit 67cb25
improved clarity. Consult manual for details.
Packit 67cb25
Packit 67cb25
** The environment variable GSL_IEEE_MODE now uses "," as a separator
Packit 67cb25
instead of ";"
Packit 67cb25
Packit 67cb25
** The autogen.sh script, mostly for use by developers who use the CVS
Packit 67cb25
repository, now does not run configure.
Packit 67cb25
Packit 67cb25
** The histogram directory now has additional functions for copying
Packit 67cb25
and comparing histograms, performing arithmetic on histograms and
Packit 67cb25
finding maximum and minimum values. Corresponding functions have been
Packit 67cb25
added for vectors and matrices.
Packit 67cb25
Packit 67cb25
** The linear algebra directory supports additional methods, including
Packit 67cb25
rectangular QR, rectangular QRPT and Cholesky decomposition.
Packit 67cb25
Packit 67cb25
** Complex arithmetic (+,-,*,/) and complex elementary functions
Packit 67cb25
(sqrt, log, exp, sin, cos, tan, arcsin, arccos, arctan, sinh, cosh,
Packit 67cb25
tanh, arcsinh, arccosh, arctanh) are now supported.
Packit 67cb25
Packit 67cb25
** Multidimensional minimization methods are now available.
Packit 67cb25
Packit 67cb25
** The special functions directory now includes a routine for
Packit 67cb25
computing the value of the incomplete beta function.
Packit 67cb25
Packit 67cb25
* Was new in gsl-0.5:
Packit 67cb25
Packit 67cb25
** There is now a KNOWN-PROBLEMS file which lists compilation problems
Packit 67cb25
and test failures which are known to the developers.
Packit 67cb25
Packit 67cb25
** Many improvements have been made to the special functions directory.
Packit 67cb25
Packit 67cb25
** The extrapolations from the Levin u-transform are now more reliable.
Packit 67cb25
Packit 67cb25
** Linear algebra and Eigensystem routines are now available.
Packit 67cb25
Packit 67cb25
** ODE solvers are now available.
Packit 67cb25
Packit 67cb25
** Multidimensional root finding algorithms are available.
Packit 67cb25
Packit 67cb25
** Minimization now keeps track of function values.
Packit 67cb25
Packit 67cb25
** Matrices and vectors now use a BLAS compatible format, and have a
Packit 67cb25
separate memory handling layer (gsl_block).
Packit 67cb25
Packit 67cb25
** Roots of general polynomials can now be found using gsl_poly_complex_solve
Packit 67cb25
Packit 67cb25
** IEEE modes support on Sparclinux, Tru64, AIX and IRIX
Packit 67cb25
Packit 67cb25
** We have added the second generation RANLUX generators RANLXS and RANLXD
Packit 67cb25
Packit 67cb25
** Minimization algorithms are available (one-dimensional)
Packit 67cb25
Packit 67cb25
** Documentation now works out of the box with the standard Texinfo.
Packit 67cb25
Packit 67cb25
** Full reimplementation of the QUADPACK integration library
Packit 67cb25
Packit 67cb25
** Introduced THANKS file.
Packit 67cb25
We appreciate all patches from people on the net, even those which are
Packit 67cb25
too small to warrant adding the author to the AUTHORS file.  The
Packit 67cb25
THANKS file should include everyone who sent in patches.  They should
Packit 67cb25
also be mentioned in the ChangeLog entry.
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.4.1:
Packit 67cb25
Packit 67cb25
** Two changes not making their way into the documentation
Packit 67cb25
A couple of things are not getting into the docs, so here are the
Packit 67cb25
errata:
Packit 67cb25
*** The FFT routines now take a stride parameter.  Passing 1 for the
Packit 67cb25
stride will make them behave as documented.
Packit 67cb25
*** The complex numbers are now an opaque type, and no assumptions can
Packit 67cb25
be made about the format in which they are stored (they are not stored
Packit 67cb25
as a simple structure anymore, since that is not portable).  The type
Packit 67cb25
is now gsl_complex (or gsl_complex_long_double or gsl_complex_float),
Packit 67cb25
and the macros to access them are
Packit 67cb25
    GSL_REAL(z)
Packit 67cb25
    GSL_IMAG(z)
Packit 67cb25
    GSL_COMPLEX_P_REAL(zp)
Packit 67cb25
    GSL_COMPLEX_P_IMAG(zp)
Packit 67cb25
    GSL_COMPLEX_EQ(z1,z2)
Packit 67cb25
    GSL_SET_COMPLEX(zp,x,y)
Packit 67cb25
    GSL_SET_REAL(zp,x)
Packit 67cb25
    GSL_SET_IMAG(zp,y)
Packit 67cb25
Packit 67cb25
This change in the complex number API makes it important that you
Packit 67cb25
start working with 0.4.1 or later.
Packit 67cb25
Packit 67cb25
** 0.4.1 is being released in occasion of the Red Hat 6.0 release.
Packit 67cb25
The specfunc module is still in an alpha state; if you run "make
Packit 67cb25
check" in the specfunc directory you will see that some tests still
Packit 67cb25
fail.
Packit 67cb25
Packit 67cb25
** Most Alpha specific problems have been fixed. In particular the
Packit 67cb25
random number generators rand48 and ranf now work on the Alpha
Packit 67cb25
Packit 67cb25
** Additional random number distributions: 
Packit 67cb25
   Rayleigh distribution
Packit 67cb25
   n-dimensional spherical distribution 
Packit 67cb25
     (ie, points at random on an n-dimensional sphere)
Packit 67cb25
   Gaussian tail distribution 
Packit 67cb25
     (ie, choosing values from a gaussian distribution subject to a 
Packit 67cb25
      constraint that they be larger than some fixed value, eg 5 sigmas)
Packit 67cb25
   Walker's algorithm for arbitrary discrete distributions
Packit 67cb25
Packit 67cb25
* What was new in gsl-0.4:
Packit 67cb25
Packit 67cb25
** A single libgsl.a file is built in the top level directory and
Packit 67cb25
installed, instead of separate .a files for each subdirectory.
Packit 67cb25
Packit 67cb25
** The parts of the complex struct gsl_complex, .real and .imag, are
Packit 67cb25
not supported anymore. The macros GSL_REAL(z) and GSL_IMAG(z) do the
Packit 67cb25
same job. All complex numbers are considered as packed arrays of
Packit 67cb25
floating point numbers, for portability since the layout of structs or
Packit 67cb25
arrays of structs is not guaranteed.
Packit 67cb25
Packit 67cb25
** The interface for matrices and vectors has changed. Vectors now
Packit 67cb25
support strides, and can be used to access rows and columns of a
Packit 67cb25
matrix. Many more types are available (float, double, long double,
Packit 67cb25
int, long, short, char, signed and unsigned, plus complex floats,
Packit 67cb25
doubles and long doubles) due to improvements in our preprocessor
Packit 67cb25
template system.
Packit 67cb25
Packit 67cb25
** The random number generators have a completely new thread-safe
Packit 67cb25
interface and have moved from the random directory to the rng
Packit 67cb25
directory. Any program using random numbers will have to be
Packit 67cb25
updated. You can also choose generators and seeds using the
Packit 67cb25
environment variables GSL_RNG_TYPE and GSL_RNG_SEED.
Packit 67cb25
Packit 67cb25
** Some additional random number distributions have been added in the
Packit 67cb25
randist directory. The available distributiosn are: bernoulli, beta,
Packit 67cb25
binomial, cauchy, chisq, erlang, exponential, fdist, flat, gamma,
Packit 67cb25
gauss, geometric, levy, logistic, lognormal, nbinomial, pareto,
Packit 67cb25
poisson, sphere, tdist, twosidedexp, weibull.
Packit 67cb25
Packit 67cb25
** The FFT interface has be extended to support strides, but the
Packit 67cb25
implementation hasn't been finished for all the cases yet, The FFT
Packit 67cb25
allocation functions now return a pointer to a newly allocated
Packit 67cb25
wavetable struct, instead of taking the pointer to an existing struct
Packit 67cb25
as an argument.
Packit 67cb25
Packit 67cb25
   e.g. status = gsl_fft_wavetable_alloc(n, w)
Packit 67cb25
   is now    w = gsl_fft_wavetable_alloc(n) in accordance with usual practice
Packit 67cb25
Packit 67cb25
** The statistics directory now works with all the builtin
Packit 67cb25
types. It has a new function for computing the lag1-autocorrelation and
Packit 67cb25
an extra set of numerical accuracy tests from NIST as part of 'make
Packit 67cb25
check'.
Packit 67cb25
Packit 67cb25
** The simulated annealing routines no longer set the random number
Packit 67cb25
seed with the time of day.  You'll need to reseed the generator
Packit 67cb25
yourself if you want subsequent runs to use different random numbers.
Packit 67cb25
Packit 67cb25
** Work is in progress on a reimplementation of QUADPACK in the
Packit 67cb25
`integration' subdirectory, but it is not finished yet.
Packit 67cb25
Packit 67cb25
** Work is in progress on reimplementations of the VEGAS and
Packit 67cb25
MISER Monte Carlo algorithms in the monte' subdirectory.  They work
Packit 67cb25
just fine, but the code is still evolving.
Packit 67cb25
Packit 67cb25
** Work has started on a portable blas system in the `blas'
Packit 67cb25
subdirectory.
Packit 67cb25
Packit 67cb25
** You can now set the IEEE arithmetic mode for your programs from the
Packit 67cb25
environment variable GSL_IEEE_MODE by calling the function
Packit 67cb25
gsl_ieee_env_setup(). Currently this only works with the Linux kernel,
Packit 67cb25
HP-UX, SunOS4 and Solaris.
Packit 67cb25
Packit 67cb25
** There are some simple spline interpolation functions in the `interp'
Packit 67cb25
subdir.
Packit 67cb25
Packit 67cb25
** The NEWS file now uses outline mode, like the Emacs NEWS file
Packit 67cb25
Packit 67cb25

Packit 67cb25
* This covers changes made *after* the gsl-0.2 snapshot
Packit 67cb25
Packit 67cb25
** Added several new modules: histogram, integration, matrix, specfunc
Packit 67cb25
and vectors.
Packit 67cb25
Packit 67cb25
** Changed libgsl_statisctics.a to libgslstatistics.a and
Packit 67cb25
libgsl_siman.a to libgslsiman.a, since most of the packages don't have
Packit 67cb25
the underscore.  Users will have to remove the old files, unless they
Packit 67cb25
do a "make uninstall" on the previous release before they install this
Packit 67cb25
new one.
Packit 67cb25
Packit 67cb25
** Changes to the random number suite
Packit 67cb25
Incorporated the gauss, poisson and exponential distributions in
Packit 67cb25
the standard libgslrandom.a
Packit 67cb25

Packit 67cb25
Packit 67cb25
Local variables:
Packit 67cb25
mode: outline
Packit 67cb25
paragraph-separate: "[ 	?]*$"
Packit 67cb25
end: