Menu

Tree [f31094] master /
 History

HTTPS access


File Date Author Commit
 Include 2018-09-13 Pierre Schnizer Pierre Schnizer [98ed1e] Macros moved to pygsl_features.h
 doc 2017-10-07 Pierre Schnizer Pierre Schnizer [4874a5] splitting gsl and pygsl build in different sect...
 examples 2018-09-20 Pierre Schnizer Pierre Schnizer [c59ac0] Compatible python3 prints
 gsl_dist 2018-09-20 Pierre Schnizer Pierre Schnizer [1b181e] Added test for sparse matrix.
 pygsl 2018-05-02 Pierre Schnizer Pierre Schnizer [c1967c] Inplace operation support for dsyr
 src 2018-09-20 Pierre Schnizer Pierre Schnizer [639bfb] methodhadjust_reset not available in gsl versio...
 swig_src 2017-10-06 Pierre Schnizer Pierre Schnizer [8779b6] Catchup with files generated using swig
 testing 2018-09-13 Pierre Schnizer Pierre Schnizer [e53e3f] How could I not notice that ...
 tests 2018-09-20 Pierre Schnizer Pierre Schnizer [f31094] Added tests for vector and matrix pygsl (c) con...
 tools 2010-02-17 Pierre Schnizer Pierre Schnizer [595c45] Use the gsl_location_tool to find the headers a...
 typemaps 2018-04-13 Pierre Schnizer Pierre Schnizer [4c418e] Update of saving and displaying gsl error info ...
 COPYING 2005-07-01 Sebastien Maret <> [becb1e] Added GPL
 CREDITS 2004-04-29 Pierre Schnizer Pierre Schnizer [b2c4e5]
 ChangeLog 2018-04-13 Pierre Schnizer Pierre Schnizer [c51543] Support for sparse matrices
 MANIFEST.in 2017-10-07 Pierre Schnizer Pierre Schnizer [153cee] Excluded gsl_site.py: reflects the local instal...
 README 2017-09-12 Pierre Schnizer Pierre Schnizer [7bcaa7] removed @ in email
 TODO 2008-10-26 Pierre Schnizer Pierre Schnizer [9082e7] Updated to the last changes
 debug_display.py 2018-04-16 Pierre Schnizer Pierre Schnizer [8a6239] Error handling. Added some tests to check that ...
 gsl_numobj.py 2015-09-27 Pierre Schnizer Pierre Schnizer [fca240] corrected sapce for python3
 gsl_packages.py 2018-09-20 Pierre Schnizer Pierre Schnizer [6ad694] Removed very old version checks. Now done with ...
 setup.cfg 2017-10-06 Pierre Schnizer Pierre Schnizer [de29e8] int and long can be of the same size. Then the ...
 setup.py 2018-09-01 Pierre Schnizer Pierre Schnizer [f3989d] Automatic config seems working for python2.x an...

Read Me

               PyGSL: Python interface for GNU Scientific Library

Status of GSL-Library:

   The gsl-library is since version 1.0 stable and for general use. Read more
   about it at the [1]GSL homepage.

Status of this interface:

   We are collecting implementations of parts of gsl. So the interface is not
   complete. We are looking forward to contributions of new submodules, while
   maintaining the available code.

Requirements:

   To build the interface, you will need

     • [2]gsl-1.13 or better,
     • [3]python2.6 or better and
     • [4]NumPy, and
     • a ANSI C compiler (i.e. gcc).

Retrieving the Interface:

   You can download pygsl at [5]http://pygsl.sourceforge.net

Installing GSL interface:

   Uninstall the old version of pygsl

   gsl-config must be on your path

   gzip -d -c pygsl-x.y.z.tar.gz|tar xvf-
   cd pygsl-x.y.z
   #do this with your preferred python version
   #to set the gsl location explicitly use setup.py --gsl-prefix=/path/to/gsl
   #If your are using cvs, remove your build directory.
   python setup.py config
   python setup.py build
   # Running only
   python setup.py
   # can result in an error. So if you see an error running setup.py please
   run python setup.py build
   # change to a id, that is allowed to do installation
   python setup.py install

   Ready....

Using pygsl

   Do NOT test the interface in the distribution root directory! -- please
   install it first and then change to the tests directory and execute python
   run_test.py If you want to execute it in the distribution root directory,
   please run python setup.py build_ext -i first! It will put the required
   binary files into the pygsl directory.

   Just write in python
   import pygsl.sf
   print "%g+/-%g"%pygsl.sf.erf(1)

   or
   import pygsl.rng
   rng=pygsl.rng.rng()
   print rng.gaussian(1.0)

   You may set the environment variable LD_LIBRARY_PATH to find the gsl
   shared object.

Uninstall GSL interface:

   rm -r "python install path"/lib/python"version"/site-packages/pygsl

Supported Platforms:

     • Linux with python2.* and gsl-1.x
     • Mac OS X with python2.* and gsl-1.x
     • Win32 with python2.* and gsl-1.x

   but is supposed to compile and run on any posix platform

   Currently it is being tested:

     • python3.5 numpy1.9.2 and gsl-2.1 (on mac os x, fink)

   The version 2.1.1 was tested with

     • python2.6, numpy1.4 and gsl-1.13 (on linux redhat)
     • python2.7 numpy1.8 and gsl-1.16 (on mac os x, fink)
     • python3.4 numpy1.8 and gsl-1.16 (on linux debian stable)

Testing:

   The directory test will contain several testsuites, based on python
   unittest. Change to this directory to run the tests.

What is implemented (versus gsl2.1):

        • Blas
        • BSplines
        • Chebyshev
        • Combination
        • Const
        • Diff
        • Eigen
        • Fit
        • Ieee
        • Integrate
        • Interpolation
        • Interpolation2D
        • Linalg
        • Math
        • Minimize
        • Multifit
        • Multifit_nlin
        • Multimin
        • Multiroots
        • Odeiv
        • Permutation
        • Poly
        • Qrng
        • Rng
        • Roots
        • Siman
        • Sf
        • Spline
        • Statistics

What is not implemented yet (versus gsl1.10):

     • GSL Capabilites not yet wrapped by PyGSL

          • Sorting
          • N-tuples

     • GSL Capabilites partly implemented

          • Discrete Hankel Transforms

   See also the [6]TODO file in the distribution.

   For the exact function volume for a module, please type:

   import pygsl.sf
   dir(pygsl.sf)

   You can do this with the other modules, too. The naming scheme is the same
   as in gsl.

Documentation:

   There will be a small reference, but the function reference can be found
   in the doc strings and at the gsl-reference. See also the "examples"
   directory.

Support:

   Please send mails to [7]the pygsl mailinglist.

Developement:

   You can browse our [8]git repository.

   Type this to check out the actual version:
   git clone ssh://schnizer@git.code.sf.net/p/pygsl/GitRepro pygsl
   The script tools/extract_tool.py generates most of the special function
   code.

ToDo:

   See TODO.

History:

     • a gsl-interface for python was needed for a project at [9]center for
       applied informatics cologne.
     • pygsl-0.0.3 was released at May 23, 2001
     • pygsl-0.0.4 was released at January 8, 2002
     • pygsl-0.1 was released at August 28, 2002
     • pygsl-0.1b was released at May 17, 2003
     • pygsl-0.3.0 was released
     • pygsl-0.3.1 was released
     • pygsl-0.3.3 was released
     • pygsl-0.9.0 was released
     • pygsl-0.9.3 was released on 15. June 2008
     • pygsl-2.2.0 was released 18. April 2016

Thanks:

     • Fabian Jakobs for blas, linalg and eigen
     • [10]Jochen Küpper for pygsl.statistics functions
     • Leonardo Milano for rpm build support and test
     • Michael Forbes for Series Acceleration

Maintainers:

   PyGSL is currently maintained by [11]Achim Gaedke and [12]Pierre Schnizer.

   Thanks to:
   [13]SourceForge Logo

References

   Visible links
   1. http://www.gnu.org/software/gsl/
   2. http://www.gnu.org/software/gsl/
   3. http://www.python.org/
   4. http://www.numpy.org/
   5. http://pygsl.sourceforge.net/
   6. file:///c/OpenSource/Devel/pygsl-git/doc/TODO.html
   7. mailto:pygsl-discuss@lists.sourceforge.net
   8. https://sourceforge.net/p/pygsl/GitRepro/ci/master/tree/
   9. http://www.zaik.uni-koeln.de/AFS
  10. mailto:jochen at jochen-kuepper.de
  11. mailto:achimgaedke at users.sourceforge.net
  12. mailto:schnizer at users.sourceforge.net
  13. http://sourceforge.net/