summaryrefslogtreecommitdiff
path: root/gsl-1.9/doc/gsl-ref.texi
diff options
context:
space:
mode:
Diffstat (limited to 'gsl-1.9/doc/gsl-ref.texi')
-rw-r--r--gsl-1.9/doc/gsl-ref.texi647
1 files changed, 647 insertions, 0 deletions
diff --git a/gsl-1.9/doc/gsl-ref.texi b/gsl-1.9/doc/gsl-ref.texi
new file mode 100644
index 0000000..c2ba564
--- /dev/null
+++ b/gsl-1.9/doc/gsl-ref.texi
@@ -0,0 +1,647 @@
+\input texinfo @c -*-texinfo-*-
+@c This will be for the printing version of the manual
+@c @input config-local.texi
+@c %**start of header
+@setfilename gsl-ref.info
+@settitle GNU Scientific Library -- Reference Manual
+@finalout
+@set frontcontents
+@ifset publish
+@setchapternewpage odd
+@end ifset
+@c %**end of header
+
+@dircategory Scientific software
+@direntry
+* gsl-ref: (gsl-ref). GNU Scientific Library -- Reference
+@end direntry
+
+@c How to use the math macros
+@c ==========================
+@c
+@c For simple expressions, simply use the @math{} command, e.g.
+@c
+@c @math{\exp(x)/(1+x^2)}
+@c
+@c but if the expression includes characters that need to be 'escaped'
+@c in texinfo, like '{' or '}', or needs different output for TeX and info,
+@c then use the following form,
+@c
+@c blah blah blah @c{$y^{1+b} \le \pi$}
+@c @math{y^@{1+b@} <= \pi}
+@c
+@c The first part using @c{} must appear at the end of a line (it reads
+@c up to the line end -- as far as texinfo is concerned it's actually
+@c a 'comment'). The comment command @c has been modified to capture
+@c a TeX expression which is output by the next @math.
+@c
+@c For ordinary comments use the @comment command.
+
+@tex
+% Mathematical macros taken from the GNU Calc Manual
+% ==================================================
+%
+% Some special kludges to make TeX formatting prettier.
+% Because makeinfo.c exists, we can't just define new commands.
+% So instead, we take over little-used existing commands.
+%
+% Redefine @cite{text} to act like $text$ in regular TeX.
+% Info will typeset this same as @samp{text}.
+\gdef\goodtex{\tex \let\rm\goodrm \let\t\ttfont \turnoffactive}
+\gdef\goodrm{\fam0\tenrm}
+\gdef\math{\goodtex$\mathxxx}
+\gdef\mathxxx#1{#1$\endgroup}
+\global\let\oldxrefX=\xrefX
+\gdef\xrefX[#1]{\begingroup\let\math=\dfn\oldxrefX[#1]\endgroup}
+%
+% Redefine @i{text} to be equivalent to @cite{text}, i.e., to use math mode.
+% This looks the same in TeX but omits the surrounding ` ' in Info.
+%\global\let\i=\cite
+%\global\let\math=\cite
+%
+% Redefine @c{tex-stuff} \n @whatever{info-stuff}.
+\gdef\c{\futurelet\next\mycxxx}
+\gdef\mycxxx{%
+ \ifx\next\bgroup \goodtex\let\next\mycxxy
+ \else\ifx\next\mindex \let\next\relax
+ \else\ifx\next\kindex \let\next\relax
+ \else\ifx\next\starindex \let\next\relax \else \let\next\comment
+ \fi\fi\fi\fi \next
+}
+\gdef\mycxxy#1#2{#1\endgroup\mycxxz}
+\gdef\mycxxz#1{}
+%
+% Define \Hat to take over from \hat as an accent
+\gdef\Hat{\mathaccent "705E}
+%
+%\gdef\beforedisplay{\vskip-10pt}
+%\gdef\afterdisplay{\vskip-5pt}
+\gdef\beforedisplay{}
+\gdef\afterdisplay{}
+{\globaldefs = 1
+\abovedisplayskip=7pt plus 2pt minus 1pt
+\belowdisplayskip=7pt plus 2pt minus 1pt
+\abovedisplayshortskip=7pt plus 2pt minus 1pt
+\belowdisplayshortskip=7pt plus 2pt minus 1pt}
+%\abovedisplayskip=12pt plus 3pt minus 3pt
+%\belowdisplayskip=12pt plus 3pt minus 3pt
+%\abovedisplayshortskip=7pt plus 1pt minus 1pt
+%\belowdisplayshortskip=7pt plus 1pt minus 1pt
+%\gdef\beforedisplayh{\vskip-25pt}
+%\gdef\afterdisplayh{\vskip-10pt}
+%
+\gdef\arcsec{\hbox{\rm arcsec}}
+\gdef\arccsc{\hbox{\rm arccsc}}
+\gdef\arccot{\hbox{\rm arccot}}
+\gdef\sech{\hbox{\rm sech}}
+\gdef\csch{\hbox{\rm csch}}
+\gdef\coth{\hbox{\rm coth}}
+\gdef\arcsinh{\hbox{\rm arcsinh}}
+\gdef\arccosh{\hbox{\rm arccosh}}
+\gdef\arctanh{\hbox{\rm arctanh}}
+\gdef\arcsech{\hbox{\rm arcsech}}
+\gdef\arccsch{\hbox{\rm arccsch}}
+\gdef\arccoth{\hbox{\rm arccoth}}
+%
+\gdef\Re{\hbox{\rm Re}}
+\gdef\Im{\hbox{\rm Im}}
+\gdef\Sin{\hbox{\rm Sin}}
+\gdef\Cos{\hbox{\rm Cos}}
+\gdef\Log{\hbox{\rm Log}}
+%
+\gdef\erf{\hbox{\rm erf}}
+\gdef\erfc{\hbox{\rm erfc}}
+\gdef\sinc{\hbox{\rm sinc}}
+\gdef\sgn{\hbox{\rm sgn}}
+\gdef\sign{\hbox{\rm sign}}
+\gdef\det{\hbox{\rm det}}
+\gdef\Var{\hbox{\rm Var}}
+\gdef\arg{\hbox{\rm arg}} % avoid temporary clobbering of arg in texinfo-4.8
+@end tex
+
+@include version-ref.texi
+@set GSL @i{GNU Scientific Library}
+
+@copying
+Copyright @copyright{} 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 The GSL Team.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with the
+Invariant Sections being ``GNU General Public License'' and ``Free Software
+Needs Free Documentation'', the Front-Cover text being ``A GNU Manual'',
+and with the Back-Cover Text being (a) (see below). A copy of the
+license is included in the section entitled ``GNU Free Documentation
+License''.
+
+(a) The Back-Cover Text is: ``You have freedom to copy and modify this
+GNU Manual, like GNU software.''
+@end copying
+
+@titlepage
+@title GNU Scientific Library
+@subtitle Reference Manual
+@subtitle Edition @value{EDITION}, for GSL Version @value{VERSION}
+@subtitle @value{UPDATED}
+
+@author Mark Galassi
+Los Alamos National Laboratory
+@comment @email{rosalia@@lanl.gov}
+@sp 1
+
+@author Jim Davies
+Department of Computer Science, Georgia Institute of Technology
+@comment @email{jimmyd@@nis.lanl.gov}
+@sp 1
+
+@author James Theiler
+Astrophysics and Radiation Measurements Group, Los Alamos National Laboratory
+@comment @email{jt@@nis.lanl.gov}
+@sp 1
+
+@author Brian Gough
+Network Theory Limited
+@comment @email{bjg@@network-theory.co.uk}
+@sp 1
+
+@comment Asked to be moved to 'contributors' appendix
+@comment @author Reid Priedhorsky
+@comment Mathematical Modeling and Analysis Group, Los Alamos National Laboratory
+@comment @email{rp@@lanl.gov}
+@comment @sp 1
+
+@author Gerard Jungman
+Theoretical Astrophysics Group, Los Alamos National Laboratory
+@comment @email{jungman@@lanl.gov}
+@sp 1
+
+@author Michael Booth
+Department of Physics and Astronomy, The Johns Hopkins University
+@comment @email{booth@@planck.pha.jhu.edu} or @email{booth@@debian.org}
+@sp 1
+
+@author Fabrice Rossi
+University of Paris-Dauphine
+@comment @email{rossi@@ufrmd.dauphine.fr}
+@sp 1
+@page
+@vskip 0pt plus 1filll
+@insertcopying
+@ifclear publish
+Printed copies of this manual can be purchased from Network Theory Ltd
+at @uref{http://www.network-theory.co.uk/gsl/manual/}.
+
+The money raised from sales of the manual helps support the
+development of GSL.
+@end ifclear
+@end titlepage
+
+@iftex
+@ifset frontcontents
+@contents
+@end ifset
+@end iftex
+
+@ifnottex
+@node Top, Introduction, (dir), (dir)
+@top GSL
+
+This file documents the @value{GSL} (GSL), a collection of numerical
+routines for scientific computing. It corresponds to release
+@value{VERSION} of the library. Please report any errors in this
+manual to @email{bug-gsl@@gnu.org}.
+
+More information about GSL can be found at the project homepage,
+@uref{http://www.gnu.org/software/gsl/}.
+
+Printed copies of this manual can be purchased from Network Theory Ltd
+at @uref{http://www.network-theory.co.uk/gsl/manual/}. The money
+raised from sales of the manual helps support the development of GSL.
+
+A Japanese translation of this manual is available from the GSL
+project homepage thanks to Daisuke Tominaga.
+
+@insertcopying
+@sp 1
+@end ifnottex
+
+@menu
+* Introduction::
+* Using the library::
+* Error Handling::
+* Mathematical Functions::
+* Complex Numbers::
+* Polynomials::
+* Special Functions::
+* Vectors and Matrices::
+* Permutations::
+* Combinations::
+* Sorting::
+* BLAS Support::
+* Linear Algebra::
+* Eigensystems::
+* Fast Fourier Transforms::
+* Numerical Integration::
+* Random Number Generation::
+* Quasi-Random Sequences::
+* Random Number Distributions::
+* Statistics::
+* Histograms::
+* N-tuples::
+* Monte Carlo Integration::
+* Simulated Annealing::
+* Ordinary Differential Equations::
+* Interpolation::
+* Numerical Differentiation::
+* Chebyshev Approximations::
+* Series Acceleration::
+* Wavelet Transforms::
+* Discrete Hankel Transforms::
+* One dimensional Root-Finding::
+* One dimensional Minimization::
+* Multidimensional Root-Finding::
+* Multidimensional Minimization::
+* Least-Squares Fitting::
+* Nonlinear Least-Squares Fitting::
+* Basis Splines::
+* Physical Constants::
+* IEEE floating-point arithmetic::
+* Debugging Numerical Programs::
+* Contributors to GSL::
+* Autoconf Macros::
+* GSL CBLAS Library::
+* Free Software Needs Free Documentation::
+* GNU General Public License::
+* GNU Free Documentation License::
+* Function Index::
+* Variable Index::
+* Type Index::
+* Concept Index::
+@end menu
+
+@node Introduction, Using the library, Top, Top
+@chapter Introduction
+@include intro.texi
+
+@node Using the library, Error Handling, Introduction, Top
+@chapter Using the library
+@cindex usage, compiling application programs
+@include usage.texi
+
+@node Error Handling, Mathematical Functions, Using the library, Top
+@chapter Error Handling
+@cindex Errors
+@include err.texi
+
+@node Mathematical Functions, Complex Numbers, Error Handling, Top
+@chapter Mathematical Functions
+@include math.texi
+
+@node Complex Numbers, Polynomials, Mathematical Functions, Top
+@chapter Complex Numbers
+@include complex.texi
+
+@node Polynomials, Special Functions, Complex Numbers, Top
+@chapter Polynomials
+@include poly.texi
+
+@node Special Functions, Vectors and Matrices, Polynomials, Top
+@chapter Special Functions
+@include specfunc.texi
+
+@node Vectors and Matrices, Permutations, Special Functions, Top
+@chapter Vectors and Matrices
+@include vectors.texi
+
+@node Permutations, Combinations, Vectors and Matrices, Top
+@chapter Permutations
+@include permutation.texi
+
+@node Combinations, Sorting, Permutations, Top
+@chapter Combinations
+@include combination.texi
+
+@node Sorting, BLAS Support, Combinations, Top
+@chapter Sorting
+@include sort.texi
+
+@node BLAS Support, Linear Algebra, Sorting, Top
+@chapter BLAS Support
+@include blas.texi
+
+@node Linear Algebra, Eigensystems, BLAS Support, Top
+@chapter Linear Algebra
+@include linalg.texi
+
+@node Eigensystems, Fast Fourier Transforms, Linear Algebra, Top
+@chapter Eigensystems
+@include eigen.texi
+
+@node Fast Fourier Transforms, Numerical Integration, Eigensystems, Top
+@chapter Fast Fourier Transforms (FFTs)
+@include fft.texi
+
+@node Numerical Integration, Random Number Generation, Fast Fourier Transforms, Top
+@chapter Numerical Integration
+@include integration.texi
+
+@node Random Number Generation, Quasi-Random Sequences, Numerical Integration, Top
+@chapter Random Number Generation
+@include rng.texi
+
+@node Quasi-Random Sequences, Random Number Distributions, Random Number Generation, Top
+@chapter Quasi-Random Sequences
+@include qrng.texi
+
+@node Random Number Distributions, Statistics, Quasi-Random Sequences, Top
+@chapter Random Number Distributions
+@include randist.texi
+
+@node Statistics, Histograms, Random Number Distributions, Top
+@chapter Statistics
+@include statistics.texi
+
+@node Histograms, N-tuples, Statistics, Top
+@chapter Histograms
+@include histogram.texi
+
+@node N-tuples, Monte Carlo Integration, Histograms, Top
+@chapter N-tuples
+@include ntuple.texi
+
+@node Monte Carlo Integration, Simulated Annealing, N-tuples, Top
+@chapter Monte Carlo Integration
+@include montecarlo.texi
+
+@node Simulated Annealing, Ordinary Differential Equations, Monte Carlo Integration, Top
+@chapter Simulated Annealing
+@include siman.texi
+
+@node Ordinary Differential Equations, Interpolation, Simulated Annealing, Top
+@chapter Ordinary Differential Equations
+@include ode-initval.texi
+
+@node Interpolation, Numerical Differentiation, Ordinary Differential Equations, Top
+@chapter Interpolation
+@include interp.texi
+
+@node Numerical Differentiation, Chebyshev Approximations, Interpolation, Top
+@chapter Numerical Differentiation
+@include diff.texi
+
+@node Chebyshev Approximations, Series Acceleration, Numerical Differentiation, Top
+@chapter Chebyshev Approximations
+@include cheb.texi
+
+@node Series Acceleration, Wavelet Transforms, Chebyshev Approximations, Top
+@chapter Series Acceleration
+@include sum.texi
+
+@node Wavelet Transforms, Discrete Hankel Transforms, Series Acceleration, Top
+@chapter Wavelet Transforms
+@include dwt.texi
+
+@node Discrete Hankel Transforms, One dimensional Root-Finding, Wavelet Transforms, Top
+@chapter Discrete Hankel Transforms
+@include dht.texi
+
+@node One dimensional Root-Finding, One dimensional Minimization, Discrete Hankel Transforms, Top
+@chapter One dimensional Root-Finding
+@include roots.texi
+
+@node One dimensional Minimization, Multidimensional Root-Finding, One dimensional Root-Finding, Top
+@chapter One dimensional Minimization
+@include min.texi
+
+@node Multidimensional Root-Finding, Multidimensional Minimization, One dimensional Minimization, Top
+@chapter Multidimensional Root-Finding
+@include multiroots.texi
+
+@node Multidimensional Minimization, Least-Squares Fitting, Multidimensional Root-Finding, Top
+@chapter Multidimensional Minimization
+@include multimin.texi
+
+@node Least-Squares Fitting, Nonlinear Least-Squares Fitting, Multidimensional Minimization, Top
+@chapter Least-Squares Fitting
+@include fitting.texi
+
+@node Nonlinear Least-Squares Fitting, Basis Splines, Least-Squares Fitting, Top
+@chapter Nonlinear Least-Squares Fitting
+@include multifit.texi
+
+@node Basis Splines, Physical Constants, Nonlinear Least-Squares Fitting, Top
+@chapter Basis Splines
+@include bspline.texi
+
+@node Physical Constants, IEEE floating-point arithmetic, Basis Splines, Top
+@chapter Physical Constants
+@include const.texi
+
+@node IEEE floating-point arithmetic, Debugging Numerical Programs, Physical Constants, Top
+@chapter IEEE floating-point arithmetic
+@include ieee754.texi
+
+@node Debugging Numerical Programs, Contributors to GSL, IEEE floating-point arithmetic, Top
+@appendix Debugging Numerical Programs
+@include debug.texi
+
+@node Contributors to GSL, Autoconf Macros, Debugging Numerical Programs, Top
+@appendix Contributors to GSL
+
+(See the AUTHORS file in the distribution for up-to-date information.)
+
+@table @strong
+@item Mark Galassi
+Conceived GSL (with James Theiler) and wrote the design document. Wrote
+the simulated annealing package and the relevant chapter in the manual.
+
+@item James Theiler
+Conceived GSL (with Mark Galassi). Wrote the random number generators
+and the relevant chapter in this manual.
+
+@item Jim Davies
+Wrote the statistical routines and the relevant chapter in this
+manual.
+
+@item Brian Gough
+FFTs, numerical integration, random number generators and distributions,
+root finding, minimization and fitting, polynomial solvers, complex
+numbers, physical constants, permutations, vector and matrix functions,
+histograms, statistics, ieee-utils, revised @sc{cblas} Level 2 & 3,
+matrix decompositions, eigensystems, cumulative distribution functions,
+testing, documentation and releases.
+
+@item Reid Priedhorsky
+Wrote and documented the initial version of the root finding routines
+while at Los Alamos National Laboratory, Mathematical Modeling and
+Analysis Group.
+@comment email: reid@reidster.net
+
+@item Gerard Jungman
+Special Functions, Series acceleration, ODEs, BLAS, Linear Algebra,
+Eigensystems, Hankel Transforms.
+
+@item Mike Booth
+Wrote the Monte Carlo library.
+
+@item Jorma Olavi T@"ahtinen
+Wrote the initial complex arithmetic functions.
+
+@item Thomas Walter
+Wrote the initial heapsort routines and cholesky decomposition.
+
+@item Fabrice Rossi
+Multidimensional minimization.
+
+@item Carlo Perassi
+Implementation of the random number generators in Knuth's
+@cite{Seminumerical Algorithms}, 3rd Ed.
+
+@item Szymon Jaroszewicz
+@comment <sj@cs.umb.edu>
+Wrote the routines for generating combinations.
+
+@item Nicolas Darnis
+Wrote the initial routines for canonical permutations.
+
+@item Jason H. Stover
+@comment (jason@sakla.net)
+Wrote the major cumulative distribution functions.
+
+@item Ivo Alxneit
+Wrote the routines for wavelet transforms.
+
+@item Tuomo Keskitalo
+Improved the implementation of the ODE solvers.
+
+@item Lowell Johnson
+Implementation of the Mathieu functions.
+
+@item Patrick Alken
+Implementation of non-symmetric eigensystems and B-splines.
+
+@end table
+
+Thanks to Nigel Lowry for help in proofreading the manual.
+
+The non-symmetric eigensystems routines contain code based on the
+LAPACK linear algebra library. LAPACK is distributed under the
+following license:
+
+@iftex
+@smallerfonts @rm
+@end iftex
+@sp 1
+@quotation
+Copyright (c) 1992-2006 The University of Tennessee. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+@bullet{} Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+
+@bullet{} Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions and the following disclaimer listed
+in this license in the documentation and/or other materials
+provided with the distribution.
+
+@bullet{} Neither the name of the copyright holders nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+@end quotation
+
+@iftex
+@textfonts @rm
+@end iftex
+
+
+
+@node Autoconf Macros, GSL CBLAS Library, Contributors to GSL, Top
+@appendix Autoconf Macros
+@include autoconf.texi
+
+@node GSL CBLAS Library, Free Software Needs Free Documentation, Autoconf Macros, Top
+@appendix GSL CBLAS Library
+@include cblas.texi
+
+@comment @node Copyright, GNU General Public License, Contributors to GSL, Top
+@comment @unnumbered Copyright
+@comment @include science.texi
+
+@node Free Software Needs Free Documentation, GNU General Public License, GSL CBLAS Library, Top
+@unnumbered Free Software Needs Free Documentation
+@include freemanuals.texi
+
+@node GNU General Public License, GNU Free Documentation License, Free Software Needs Free Documentation, Top
+@unnumbered GNU General Public License
+@include gpl.texi
+
+@node GNU Free Documentation License, Function Index, GNU General Public License, Top
+@unnumbered GNU Free Documentation License
+@include fdl.texi
+
+@comment htmlhelp: @printindex fn
+@comment htmlhelp: @printindex vr
+@comment htmlhelp: @printindex tp
+@comment htmlhelp: @printindex cp
+@comment htmlhelp: @bye
+
+@iftex
+@normalbottom
+@end iftex
+
+@node Function Index, Variable Index, GNU Free Documentation License, Top
+@unnumbered Function Index
+
+@printindex fn
+
+@node Variable Index, Type Index, Function Index, Top
+@unnumbered Variable Index
+
+@printindex vr
+
+@node Type Index, Concept Index, Variable Index, Top
+@unnumbered Type Index
+
+@printindex tp
+
+@node Concept Index, , Type Index, Top
+@unnumbered Concept Index
+
+@printindex cp
+
+@ifclear frontcontents
+@comment Use @setchapternewpage odd to ensure that the contents starts
+@comment on an odd page so that it can always be moved to the front when
+@comment printing two-up.
+@setchapternewpage odd
+@contents
+@end ifclear
+
+@ifset extrablankpages
+@comment final page must be blank for printed version
+@page
+@headings off
+@*
+@page
+@*
+@comment @page
+@comment @*
+@comment @page
+@comment @*
+@end ifset
+@bye