Gsl Scientific Library Mac
I use Fink to install the GNU Scientific Library (GSL). Fink is like Aptitute (high-level package manager) in Linux. Fink is like Aptitute (high-level package manager) in Linux. If you are not sure if GSL is already installed, at the Terminal prompt $ type. The GNU Scientific Library (GSL) is a numerical library for C and C programmers. It is free software under the GNU General Public License. The library provides a wide range of mathematical routines such as random number generators, special functions and least-squares fitting. There are over 1000 functions in total with an extensive test suite. This installation is known to work easily if you use Mac OS X and have installed python and gsl using MacPorts. Modify the setupcfg.py Change the 'GSLINCLUDE' and 'GSLLIB' variables to your path to the GSL header and library files. 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 GSL homepage. Status of this interface: We are collecting implementations of parts of gsl. So the interface is not complete.
Original author(s) | Mark Galassi, James Theiler, Brian Gough, Gerard Jungman and many others |
---|---|
Developer(s) | GNU Project |
Initial release | May 1996; 23 years ago |
Stable release | |
Repository | ftpmirror.gnu.org/gsl/ |
Written in | C |
Type | Numerical library |
License | GNU General Public License |
Website | www.gnu.org/software/gsl/ |
The GNU Scientific Library (or GSL) is a software library for numerical computations in applied mathematics and science. The GSL is written in C; wrappers are available for other programming languages. The GSL is part of the GNU Project[1] and is distributed under the GNU General Public License.
Project history[edit]
The GSL project was initiated in 1996 by physicists Mark Galassi and James Theiler of Los Alamos National Laboratory.[2] They aimed at writing a modern replacement for widely used but somewhat outdated Fortran libraries such as Netlib.[3] They carried out the overall design and wrote early modules; with that ready they recruited other scientists to contribute.
The 'overall development of the library and the design and implementation of the major modules' was carried out by Brian Gough and Gerard Jungman.[2] Other major contributors were Jim Davies, Reid Priedhorsky, M. Booth, and F. Rossi.[2]
Version 1.0 was released in 2001. Find itunes library location mac. In the following, the library expanded only slowly; as the documentation stated, the maintainers were more interested in stability than in additional functionality. Major version 1 ended with release 1.16 of July 2013; this was the only public activity in the three years 2012–2014.
Vigorous development resumed with publication of version 2.0 in October 2015. The latest version 2.5 was released on 14 June 2018.
Example[edit]
The following example program calculates the value of the Bessel function for 5:[4]
Gsl Library For Windows
The example program has to be linked to the GSL libraryupon compilation:
The output is shown below and should be correct to double-precision accuracy:
Features[edit]
The software library provides facilities for:
- Vectors and matrices
- Numerical integration (based on QUADPACK)
- Discrete Hankel transform
- Root finding in one and multiple dimensions
- Minimization in one and multiple dimensions
Programming-language bindings[edit]
Since the GSL is written in C, it is straightforward to provide wrappers for other programming languages. Such wrappers currently exist for
- AMPL[5]
- C++[6]
- Fortran[7]
- Haskell[8][9]
- Java[10]
- Lisp[11]
- Ocaml[12]
- Python[13]
- R[14][15]
- Ruby[16]
C++ support[edit]
The GSL can be used in C++ classes, but not using pointers to member functions, because the type of pointer to member function is different from pointer to function.[17] Instead, pointers to static functions have to be used. Another common workaround is using a functor. C++ wrappers for GSL are available,[6] although many are not regularly maintained.
See also[edit]
References[edit]
- ^http://directory.fsf.org/GNU/
- ^ abcGSL homepage.
- ^GSL design document.
- ^Using the Library. An Example Program. GSL documentation.
- ^AMPL bindings for the GNU Scientific Library.
- ^ abC++ wrappers for GSL.
- ^FGSL - A Fortran interface to the GNU Scientific Library.
- ^The hmatrix-special package, an interface to GSL special functions.
- ^The hmatrix-gsl package, a purely functional interface to selected numerical computations, internally implemented using GSL.
- ^JavaCPP Presets for GSL.
- ^GSLL, GNU Scientific Library for Lisp.
- ^gsl-ocaml: OCaml bindings to the GSL.
- ^Python interface for GNU Scientific Library.
- ^RcppGSL: 'Rcpp' Integration for 'GNU GSL' Vectors and Matrices.
- ^gsl: wrapper for the Gnu Scientific Library.
- ^rb-gsl: Ruby/GSL is a Ruby interface to the GNU Scientific Library, for numerical computing with Ruby.
- ^Pointers to member functions. Archived 2004-10-13 at the Wayback Machine.
External links[edit]
- The gsl package for R (programming language), an R wrapper for the special functions and quasi random number generators.
The GNU Scientific Library (GSL) is a collection of routines fornumerical computing. The routines have been written from scratch in C,and present a modern Applications Programming Interface(API) for C programmers, allowing wrappers to be written for veryhigh level languages. The source code is distributed under the GNUGeneral Public License.
Routines available in GSL¶
The library covers a wide range of topics in numerical computing.Routines are available for the following areas,
Complex Numbers | Roots of Polynomials | Special Functions |
Vectors and Matrices | Permutations | Combinations |
Sorting | BLAS Support | Linear Algebra |
CBLAS Library | Fast Fourier Transforms | Eigensystems |
Random Numbers | Quadrature | Random Distributions |
Quasi-Random Sequences | Histograms | Statistics |
Monte Carlo Integration | N-Tuples | Differential Equations |
Simulated Annealing | Numerical Differentiation | Interpolation |
Series Acceleration | Chebyshev Approximations | Root-Finding |
Discrete Hankel Transforms | Least-Squares Fitting | Minimization We'll cover a few different methods to easily access this hidden folder.The User Library is home to many 'under the hood' files and folders that correspond to the various Apps and system processes in your computer. How to find the library folder on mac. The user library's location is here: Macintosh HD Users YourUserName LibraryOnly one problem The User Library is hidden From view in the latest versions of the OS. |
IEEE Floating-Point | Physical Constants | Basis Splines |
Wavelets | Sparse BLAS Support | Sparse Linear Algebra |
The use of these routines is described in this manual. Each chapterprovides detailed definitions of the functions, followed by exampleprograms and references to the articles on which the algorithms arebased.
Where possible the routines have been based on reliable public-domainpackages such as FFTPACK and QUADPACK, which the developers of GSLhave reimplemented in C with modern coding conventions.
GSL is Free Software¶
The subroutines in the GNU Scientific Library are “free software”;this means that everyone is free to use them, and to redistribute themin other free programs. The library is not in the public domain; it iscopyrighted and there are conditions on its distribution. Theseconditions are designed to permit everything that a good cooperatingcitizen would want to do. What is not allowed is to try to preventothers from further sharing any version of the software that they mightget from you.
Specifically, we want to make sure that you have the right to sharecopies of programs that you are given which use the GNU ScientificLibrary, that you receive their source code or else can get it if youwant it, that you can change these programs or use pieces of them in newfree programs, and that you know you can do these things.
To make sure that everyone has such rights, we have to forbid you todeprive anyone else of these rights. For example, if you distributecopies of any code which uses the GNU Scientific Library, you must givethe recipients all the rights that you have received. You must makesure that they, too, receive or can get the source code, both to thelibrary and the code which uses it. And you must tell them theirrights. This means that the library should not be redistributed inproprietary programs.
Also, for our own protection, we must make certain that everyone findsout that there is no warranty for the GNU Scientific Library. If theseprograms are modified by someone else and passed on, we want theirrecipients to know that what they have is not what we distributed, sothat any problems introduced by others will not reflect on ourreputation.
The precise conditions for the distribution of software related to theGNU Scientific Library are found in theGNU General Public License.Further information about thislicense is available from the GNU Project webpage Frequently AskedQuestions about the GNU GPL.
The Free Software Foundation also operates a license consultingservice for commercial users (contact details available fromhttp://www.fsf.org.
Obtaining GSL¶
The source code for the library can be obtained in different ways, bycopying it from a friend, purchasing it on CDROM or downloading itfrom the internet. A list of public ftp servers which carry the sourcecode can be found on the GNU website, http://www.gnu.org/software/gsl/.
The preferred platform for the library is a GNU system, which allows itto take advantage of additional features in the GNU C compiler and GNU Clibrary. However, the library is fully portable and should compile onmost systems with a C compiler.
Announcements of new releases, updates and other relevant events aremade on the info-gsl@gnu.org mailing list. To subscribe to thislow-volume list, send an email of the following form:
You will receive a response asking you to reply in order to confirmyour subscription.
Gsl Math Library
No Warranty¶
The software described in this manual has no warranty, it is provided“as is”. It is your responsibility to validate the behavior of theroutines and their accuracy using the source code provided, or topurchase support and warranties from commercial redistributors. Consult theGNU General Public Licensefor further details.
Reporting Bugs¶
A list of known bugs can be found in the BUGS
file included inthe GSL distribution or online in the GSL bug tracker. 1Details of compilation problems can be found in the INSTALL
file.
If you find a bug which is not listed in these files, please report it tobug-gsl@gnu.org.
All bug reports should include:
The version number of GSL
The hardware and operating system
The compiler used, including version number and compilation options
A description of the bug behavior
A short program which exercises the bug
It is useful if you can check whether the same problem occurs when thelibrary is compiled without optimization. Thank you.
Any errors or omissions in this manual can also be reported to thesame address.
Further Information¶
Additional information, including online copies of this manual, links torelated projects, and mailing list archives are available from thewebsite mentioned above.
Any questions about the use and installation of the library can be askedon the mailing list help-gsl@gnu.org. To subscribe to thislist, send an email of the following form:
This mailing list can be used to ask questions not covered by thismanual, and to contact the developers of the library.
If you would like to refer to the GNU Scientific Library in a journalarticle, the recommended way is to cite this reference manual,e.g.:
If you want to give a url, use “http://www.gnu.org/software/gsl/”.
Conventions used in this manual¶
This manual contains many examples which can be typed at the keyboard.A command entered at the terminal is shown like this:
The first character on the line is the terminal prompt, and should notbe typed. The dollar sign $ is used as the standard prompt inthis manual, although some systems may use a different character.
The examples assume the use of the GNU operating system. There may beminor differences in the output on other systems. The commands forsetting environment variables use the Bourne shell syntax of thestandard GNU shell (bash
).
Footnotes
- 1