📄 intro.texi
字号:
@cindex license of GSL@cindex GNU General Public LicenseThe 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.@menu* Routines available in GSL:: * GSL is Free Software:: * Obtaining GSL:: * No Warranty:: * Reporting Bugs:: * Further Information:: * Conventions used in this manual:: @end menu@node Routines available in GSL@section Routines available in GSLThe library covers a wide range of topics in numerical computing.Routines are available for the following areas,@iftex@sp 1@end iftex@multitable @columnfractions 0.05 0.45 0.45 0.05@item @tab Complex Numbers @tab Roots of Polynomials @item @tab Special Functions @tab Vectors and Matrices @item @tab Permutations @tab Combinations @item @tab Sorting @tab BLAS Support @item @tab Linear Algebra @tab CBLAS Library@item @tab Fast Fourier Transforms @tab Eigensystems @item @tab Random Numbers @tab Quadrature @item @tab Random Distributions @tab Quasi-Random Sequences @item @tab Histograms @tab Statistics @item @tab Monte Carlo Integration @tab N-Tuples @item @tab Differential Equations @tab Simulated Annealing @item @tab Numerical Differentiation @tab Interpolation @item @tab Series Acceleration @tab Chebyshev Approximations @item @tab Root-Finding @tab Discrete Hankel Transforms @item @tab Least-Squares Fitting @tab Minimization @item @tab IEEE Floating-Point @tab Physical Constants @item @tab Wavelets@end multitable@iftex@sp 1@end iftex@noindentThe 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.@node GSL is Free Software@section GSL is Free Software@cindex free software, explanation ofThe 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 the GNU General Public License(@pxref{GNU General Public License}). Further information about thislicense is available from the GNU Project webpage @cite{Frequently AskedQuestions about the GNU GPL},@itemize @asis@item @uref{http://www.gnu.org/copyleft/gpl-faq.html}@end itemize@noindentThe Free Software Foundation also operates a license consultingservice for commercial users (contact details available from@uref{http://www.fsf.org/}).@node Obtaining GSL@section Obtaining GSL@cindex obtaining GSL@cindex downloading GSL@cindex mailing list for GSL announcements@cindex info-gsl mailing listThe source code for the library can be obtained in different ways, bycopying it from a friend, purchasing it on @sc{cdrom} or downloading itfrom the internet. A list of public ftp servers which carry the sourcecode can be found on the GNU website,@itemize @asis@item @uref{http://www.gnu.org/software/gsl/}@end itemize@noindentThe 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. Precompiled versions of the library can be purchased fromcommercial redistributors listed on the website above.Announcements of new releases, updates and other relevant events aremade on the @code{info-gsl@@gnu.org} mailing list. To subscribe to thislow-volume list, send an email of the following form:@exampleTo: info-gsl-request@@gnu.org Subject: subscribe@end example@noindentYou will receive a response asking you to reply in order to confirmyour subscription.@node No Warranty@section No Warranty@cindex warranty (none)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. Consultthe GNU General Public license for further details (@pxref{GNU GeneralPublic License}).@node Reporting Bugs@section Reporting Bugs@cindex reporting bugs in GSL@cindex bugs, how to report@cindex bug-gsl mailing list@cindex mailing list, bug-gslA list of known bugs can be found in the @file{BUGS} file included inthe GSL distribution. Details of compilation problems can be found inthe @file{INSTALL} file.If you find a bug which is not listed in these files, please report it to@email{bug-gsl@@gnu.org}.All bug reports should include:@itemize @bullet@itemThe version number of GSL@itemThe hardware and operating system@itemThe compiler used, including version number and compilation options@itemA description of the bug behavior@itemA short program which exercises the bug@end itemize@noindentIt 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.@node Further Information@section Further Information@cindex mailing list archives@cindex website, developer information@cindex contacting the GSL developersAdditional 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 @code{help-gsl@@gnu.org}. To subscribe to thislist, send an email of the following form:@exampleTo: help-gsl-request@@gnu.orgSubject: subscribe@end example@noindentThis 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. @cite{M. Galassi et al, GNU Scientific Library Reference Manual (2ndEd.), ISBN 0954161734}.If you want to give a url, use ``@uref{http://www.gnu.org/software/gsl/}''.@node Conventions used in this manual@section Conventions used in this manual@cindex conventions, used in manual@cindex examples, conventions used in@cindex shell prompt@cindex @code{$}, shell promptThis manual contains many examples which can be typed at the keyboard.A command entered at the terminal is shown like this,@example$ @i{command}@end example@noindent@cindex dollar sign @code{$}, shell promptThe first character on the line is the terminal prompt, and should notbe typed. The dollar sign @samp{$} 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 (@code{bash}).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -