Page MenuHomeSolus

Update GSL to 2.6

Authored by aleksvor on Fri, Sep 4, 4:06 PM.




  • add BLAS calls for the following functions:
    • gsl_vector_memcpy
    • gsl_vector_scale
    • gsl_matrix_memcpy
    • gsl_matrix_transpose_memcpy
    • gsl_matrix_tricpy
    • gsl_matrix_transpose_tricpy
  • deprecated functions gsl_linalg_complex_householder_hm and gsl_linalg_complex_householder_mh.
  • multilarge TSQR algorithm has been converted to use the new Level 3 QR decomposition.
  • nonlinear least squares Cholesky solver now uses the new Level 3 BLAS method; the old modified Cholesky solver is still available under gsl_multifit_nlinear_solver_mcholesky and gsl_multilarge_nlinear_solver_mcholesky.
  • implemented Level 3 BLAS versions of several linear algebra routines:
    • Triangular matrix inversion
    • Cholesky decomposition and inversion (real and complex)
    • LU decomposition and inversion (real and complex)
    • QR decomposition (courtesy of Julien Langou)
    • Generalized symmetric/hermitian eigensystem reduction to standard form
  • removed deprecated function gsl_linalg_hessenberg().
  • renamed gsl_interp2d_eval_e_extrap() to gsl_interp2d_eval_extrap_e() to match documentation.
  • renamed some of the gsl_sf_hermite functions to be more consistent with rest of the library, and deprecated old function names.
  • updated gsl_sf_hermite_func() to use a newer algorithm due to B. Bunck which is more stable for large x; also added gsl_sf_hermite_func_fast() which uses the faster Cauchy integral algorithm in the same paper by Bunck.
  • add gsl_vector_axpby().
  • add un-pivoted LDLT decomposition and its banded variant (gsl_linalg_ldlt_* and gsl_linalg_ldlt_band_*).
  • add binary search tree module (gsl_bst); based on GNU libavl.
  • remove -u flag to gsl-histogram.
  • updated spmatrix module
    • added routines and data structures for all types (float,uint,char,...)
    • added gsl_spmatrix_scale_columns() and gsl_spmatrix_scale_rows()
    • added gsl_spmatrix_add_to_dense()
    • more efficient reallocation of COO/triplet matrices (no longer rebuilds binary tree)
    • added gsl_spmatrix_min_index()
  • add routines for banded Cholesky decomposition (gsl_linalg_cholesky_band_*).
  • documented gsl_linalg_LQ routines and added gsl_linalg_LQ_lssolve().
Test Plan
  1. Rebuilt packages:
    • pspp (updated to 1.4.0)
    • enblend-enfuse (needs fixes not related to GSL update, see update stack)
    • guvcview
    • luminance-hdr
    • krita
    • inkscape
    • qgis
  2. Tested PSPP 1.4.0 against this version.

Diff Detail

R1072 gsl
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

aleksvor created this revision.Fri, Sep 4, 4:06 PM
aleksvor requested review of this revision.Fri, Sep 4, 4:06 PM
JoshStrobl accepted this revision.Tue, Sep 8, 5:54 AM
JoshStrobl added a subscriber: JoshStrobl.

LGTM, thanks!

This revision is now accepted and ready to land.Tue, Sep 8, 5:54 AM
This revision was automatically updated to reflect the committed changes.