(gsl-ref.info)Top


Next: Introduction Up: (dir)
Enter node , (file) or (file)node

GNU Scientific Library
**********************

     GSL 2.7, May 27, 2021

     The GSL Team

     Copyright © 1996-2021 The GSL Team

Introduction
Using the Library
Error Handling
Mathematical Functions
Complex Numbers
Polynomials
Special Functions
Vectors and Matrices
Permutations
Combinations
Multisets
Sorting
BLAS Support
Linear Algebra
Eigensystems
Fast Fourier Transforms (FFTs)
Fast Fourier Transforms FFTs.
Numerical Integration
Random Number Generation
Quasi-Random Sequences
Random Number Distributions
Statistics
Running Statistics
Moving Window Statistics
Digital Filtering
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
Linear Least-Squares Fitting
Nonlinear Least-Squares Fitting
Basis Splines
Sparse Matrices
Sparse BLAS Support
Sparse Linear Algebra
Physical Constants
IEEE floating-point arithmetic
Debugging Numerical Programs
Contributors to GSL
Autoconf Macros
GSL CBLAS Library
GNU General Public License
GNU Free Documentation License
Index
 — The Detailed Node Listing —

Introduction

Routines available in GSL
GSL is Free Software
Obtaining GSL
No Warranty
Reporting Bugs
Further Information
Conventions used in this manual
Using the Library

An Example Program
Compiling and Linking
Shared Libraries
ANSI C Compliance
Inline functions
Long double
Portability functions
Alternative optimized functions
Support for different numeric types
Compatibility with C++
Aliasing of arrays
Thread-safety
Deprecated Functions
Code Reuse
Compiling and Linking

Linking programs with the library
Linking with an alternative BLAS library
Error Handling

Error Reporting
Error Codes
Error Handlers
Using GSL error reporting in your own functions
Examples
Mathematical Functions

Mathematical Constants
Infinities and Not-a-number
Elementary Functions
Small integer powers
Testing the Sign of Numbers
Testing for Odd and Even Numbers
Maximum and Minimum functions
Approximate Comparison of Floating Point Numbers
Complex Numbers

Representation of complex numbers
Complex number macros
Assigning complex numbers
Properties of complex numbers
Complex arithmetic operators
Elementary Complex Functions
Complex Trigonometric Functions
Inverse Complex Trigonometric Functions
Complex Hyperbolic Functions
Inverse Complex Hyperbolic Functions
References and Further Reading
Polynomials

Polynomial Evaluation
Divided Difference Representation of Polynomials
Quadratic Equations
Cubic Equations
General Polynomial Equations
Examples
Examples<2>.
References and Further Reading
References and Further Reading<2>.
Special Functions

Usage
The gsl_sf_result struct
Modes
Airy Functions and Derivatives
Bessel Functions
Clausen Functions
Coulomb Functions
Coupling Coefficients
Dawson Function
Debye Functions
Dilogarithm
Elementary Operations
Elliptic Integrals
Elliptic Functions (Jacobi)
Elliptic Functions Jacobi.
Error Functions
Exponential Functions
Exponential Integrals
Fermi-Dirac Function
Gamma and Beta Functions
Gegenbauer Functions
Hermite Polynomials and Functions
Hypergeometric Functions
Laguerre Functions
Lambert W Functions
Legendre Functions and Spherical Harmonics
Logarithm and Related Functions
Mathieu Functions
Power Function
Psi (Digamma) Function
Psi Digamma Function.
Synchrotron Functions
Transport Functions
Trigonometric Functions
Zeta Functions
Examples
Examples<3>.
References and Further Reading
References and Further Reading<3>.
Airy Functions and Derivatives

Airy Functions
Derivatives of Airy Functions
Zeros of Airy Functions
Zeros of Derivatives of Airy Functions
Bessel Functions

Regular Cylindrical Bessel Functions
Irregular Cylindrical Bessel Functions
Regular Modified Cylindrical Bessel Functions
Irregular Modified Cylindrical Bessel Functions
Regular Spherical Bessel Functions
Irregular Spherical Bessel Functions
Regular Modified Spherical Bessel Functions
Irregular Modified Spherical Bessel Functions
Regular Bessel Function—Fractional Order
Irregular Bessel Functions—Fractional Order
Regular Modified Bessel Functions—Fractional Order
Irregular Modified Bessel Functions—Fractional Order
Zeros of Regular Bessel Functions
Coulomb Functions

Normalized Hydrogenic Bound States
Coulomb Wave Functions
Coulomb Wave Function Normalization Constant
Coupling Coefficients

3-j Symbols
6-j Symbols
9-j Symbols
Dilogarithm

Real Argument
Complex Argument
Elliptic Integrals

Definition of Legendre Forms
Definition of Carlson Forms
Legendre Form of Complete Elliptic Integrals
Legendre Form of Incomplete Elliptic Integrals
Carlson Forms
Error Functions

Error Function
Complementary Error Function
Log Complementary Error Function
Probability functions
Exponential Functions

Exponential Function
Relative Exponential Functions
Exponentiation With Error Estimate
Exponential Integrals

Exponential Integral
Ei(x)
Ei x.
Hyperbolic Integrals
Ei_3(x)
Ei_3 x.
Trigonometric Integrals
Arctangent Integral
Fermi-Dirac Function

Complete Fermi-Dirac Integrals
Incomplete Fermi-Dirac Integrals
Gamma and Beta Functions

Gamma Functions
Factorials
Pochhammer Symbol
Incomplete Gamma Functions
Beta Functions
Incomplete Beta Function
Hermite Polynomials and Functions

Hermite Polynomials
Derivatives of Hermite Polynomials
Hermite Functions
Derivatives of Hermite Functions
Zeros of Hermite Polynomials and Hermite Functions
Legendre Functions and Spherical Harmonics

Legendre Polynomials
Associated Legendre Polynomials and Spherical Harmonics
Conical Functions
Radial Functions for Hyperbolic Space
Mathieu Functions

Mathieu Function Workspace
Mathieu Function Characteristic Values
Angular Mathieu Functions
Radial Mathieu Functions
Psi (Digamma) Function

Digamma Function
Trigamma Function
Polygamma Function
Trigonometric Functions

Circular Trigonometric Functions
Trigonometric Functions for Complex Arguments
Hyperbolic Trigonometric Functions
Conversion Functions
Restriction Functions
Trigonometric Functions With Error Estimates
Zeta Functions

Riemann Zeta Function
Riemann Zeta Function Minus One
Hurwitz Zeta Function
Eta Function
Vectors and Matrices

Data types
Blocks
Vectors
Matrices
Blocks

Block allocation
Reading and writing blocks
Example programs for blocks
Vectors

Vector allocation
Accessing vector elements
Initializing vector elements
Reading and writing vectors
Vector views
Copying vectors
Exchanging elements
Vector operations
Finding maximum and minimum elements of vectors
Vector properties
Example programs for vectors
Matrices

Matrix allocation
Accessing matrix elements
Initializing matrix elements
Reading and writing matrices
Matrix views
Creating row and column views
Copying matrices
Copying rows and columns
Exchanging rows and columns
Matrix operations
Finding maximum and minimum elements of matrices
Matrix properties
Example programs for matrices
References and Further Reading
References and Further Reading<4>.
Permutations

The Permutation struct
Permutation allocation
Accessing permutation elements
Permutation properties
Permutation functions
Applying Permutations
Reading and writing permutations
Permutations in cyclic form
Examples
Examples<4>.
References and Further Reading
References and Further Reading<5>.
Combinations

The Combination struct
Combination allocation
Accessing combination elements
Combination properties
Combination functions
Reading and writing combinations
Examples
Examples<5>.
References and Further Reading
References and Further Reading<6>.
Multisets

The Multiset struct
Multiset allocation
Accessing multiset elements
Multiset properties
Multiset functions
Reading and writing multisets
Examples
Examples<6>.
Sorting

Sorting objects
Sorting vectors
Selecting the k smallest or largest elements
Computing the rank
Examples
Examples<7>.
References and Further Reading
References and Further Reading<7>.
BLAS Support

GSL BLAS Interface
Examples
Examples<8>.
References and Further Reading
References and Further Reading<8>.
GSL BLAS Interface

Level 1
Level 2
Level 3
Linear Algebra

LU Decomposition
QR Decomposition
QR Decomposition with Column Pivoting
LQ Decomposition
QL Decomposition
Complete Orthogonal Decomposition
Singular Value Decomposition
Cholesky Decomposition
Pivoted Cholesky Decomposition
Modified Cholesky Decomposition
LDLT Decomposition
Tridiagonal Decomposition of Real Symmetric Matrices
Tridiagonal Decomposition of Hermitian Matrices
Hessenberg Decomposition of Real Matrices
Hessenberg-Triangular Decomposition of Real Matrices
Bidiagonalization
Givens Rotations
Householder Transformations
Householder solver for linear systems
Tridiagonal Systems
Triangular Systems
Banded Systems
Balancing
Examples
Examples<9>.
References and Further Reading
References and Further Reading<9>.
QR Decomposition

Level 2 Interface
Triangle on Top of Rectangle
Triangle on Top of Triangle
Triangle on Top of Trapezoidal
Triangle on Top of Diagonal
Banded Systems

General Banded Format
Symmetric Banded Format
Banded LU Decomposition
Banded Cholesky Decomposition
Banded LDLT Decomposition
Eigensystems

Real Symmetric Matrices
Complex Hermitian Matrices
Real Nonsymmetric Matrices
Real Generalized Symmetric-Definite Eigensystems
Complex Generalized Hermitian-Definite Eigensystems
Real Generalized Nonsymmetric Eigensystems
Sorting Eigenvalues and Eigenvectors
Examples
Examples<10>.
References and Further Reading
References and Further Reading<10>.
Fast Fourier Transforms (FFTs)

Mathematical Definitions
Overview of complex data FFTs
Radix-2 FFT routines for complex data
Mixed-radix FFT routines for complex data
Overview of real data FFTs
Radix-2 FFT routines for real data
Mixed-radix FFT routines for real data
References and Further Reading
References and Further Reading<11>.
Numerical Integration

Introduction
Introduction<2>.
QNG non-adaptive Gauss-Kronrod integration
QAG adaptive integration
QAGS adaptive integration with singularities
QAGP adaptive integration with known singular points
QAGI adaptive integration on infinite intervals
QAWC adaptive integration for Cauchy principal values
QAWS adaptive integration for singular functions
QAWO adaptive integration for oscillatory functions
QAWF adaptive integration for Fourier integrals
CQUAD doubly-adaptive integration
Romberg integration
Gauss-Legendre integration
Fixed point quadratures
Error codes
Examples
Examples<11>.
References and Further Reading
References and Further Reading<12>.
Introduction

Integrands without weight functions
Integrands with weight functions
Integrands with singular weight functions
Examples

Adaptive integration example
Fixed-point quadrature example
Random Number Generation

General comments on random numbers
The Random Number Generator Interface
Random number generator initialization
Sampling from a random number generator
Auxiliary random number generator functions
Random number environment variables
Copying random number generator state
Reading and writing random number generator state
Random number generator algorithms
Unix random number generators
Other random number generators
Performance
Examples
Examples<12>.
References and Further Reading
References and Further Reading<13>.
Acknowledgements
Quasi-Random Sequences

Quasi-random number generator initialization
Sampling from a quasi-random number generator
Auxiliary quasi-random number generator functions
Saving and restoring quasi-random number generator state
Quasi-random number generator algorithms
Examples
Examples<13>.
References
Random Number Distributions

Introduction
Introduction<3>.
The Gaussian Distribution
The Gaussian Tail Distribution
The Bivariate Gaussian Distribution
The Multivariate Gaussian Distribution
The Exponential Distribution
The Laplace Distribution
The Exponential Power Distribution
The Cauchy Distribution
The Rayleigh Distribution
The Rayleigh Tail Distribution
The Landau Distribution
The Levy alpha-Stable Distributions
The Levy skew alpha-Stable Distribution
The Gamma Distribution
The Flat (Uniform) Distribution
The Flat Uniform Distribution.
The Lognormal Distribution
The Chi-squared Distribution
The F-distribution
The t-distribution
The Beta Distribution
The Logistic Distribution
The Pareto Distribution
Spherical Vector Distributions
The Weibull Distribution
The Type-1 Gumbel Distribution
The Type-2 Gumbel Distribution
The Dirichlet Distribution
General Discrete Distributions
The Poisson Distribution
The Bernoulli Distribution
The Binomial Distribution
The Multinomial Distribution
The Negative Binomial Distribution
The Pascal Distribution
The Geometric Distribution
The Hypergeometric Distribution
The Logarithmic Distribution
The Wishart Distribution
Shuffling and Sampling
Examples
Examples<14>.
References and Further Reading
References and Further Reading<14>.
Statistics

Mean, Standard Deviation and Variance
Mean Standard Deviation and Variance.
Absolute deviation
Higher moments (skewness and kurtosis)
Higher moments skewness and kurtosis.
Autocorrelation
Covariance
Correlation
Weighted Samples
Maximum and Minimum values
Median and Percentiles
Order Statistics
Robust Location Estimates
Robust Scale Estimates
Examples
Examples<15>.
References and Further Reading
References and Further Reading<15>.
Robust Location Estimates

Trimmed Mean
Gastwirth Estimator
Robust Scale Estimates

Median Absolute Deviation (MAD)
Median Absolute Deviation MAD.
S_n Statistic
Q_n Statistic
Running Statistics

Initializing the Accumulator
Adding Data to the Accumulator
Current Statistics
Quantiles
Examples
Examples<16>.
References and Further Reading
References and Further Reading<16>.
Moving Window Statistics

Introduction
Introduction<4>.
Handling Endpoints
Allocation for Moving Window Statistics
Moving Mean
Moving Variance and Standard Deviation
Moving Minimum and Maximum
Moving Sum
Moving Median
Robust Scale Estimation
User-defined Moving Statistics
Accumulators
Examples
Examples<17>.
References and Further Reading
References and Further Reading<17>.
Robust Scale Estimation

Moving MAD
Moving QQR
Moving S_n
Moving Q_n
Examples

Example 1
Example 2; Robust Scale
Example 2 Robust Scale.
Example 3; User-defined Moving Window
Example 3 User-defined Moving Window.
Digital Filtering

Introduction
Introduction<5>.
Handling Endpoints
Handling Endpoints<2>.
Linear Digital Filters
Nonlinear Digital Filters
Examples
Examples<18>.
References and Further Reading
References and Further Reading<18>.
Linear Digital Filters

Gaussian Filter
Nonlinear Digital Filters

Standard Median Filter
Recursive Median Filter
Impulse Detection Filter
Examples

Gaussian Example 1
Gaussian Example 2
Square Wave Signal Example
Impulse Detection Example
Histograms

The histogram struct
Histogram allocation
Copying Histograms
Updating and accessing histogram elements
Searching histogram ranges
Histogram Statistics
Histogram Operations
Reading and writing histograms
Resampling from histograms
The histogram probability distribution struct
Example programs for histograms
Two dimensional histograms
The 2D histogram struct
2D Histogram allocation
Copying 2D Histograms
Updating and accessing 2D histogram elements
Searching 2D histogram ranges
2D Histogram Statistics
2D Histogram Operations
Reading and writing 2D histograms
Resampling from 2D histograms
Example programs for 2D histograms
N-tuples

The ntuple struct
Creating ntuples
Opening an existing ntuple file
Writing ntuples
Reading ntuples
Closing an ntuple file
Histogramming ntuple values
Examples
Examples<19>.
References and Further Reading
References and Further Reading<19>.
Monte Carlo Integration

Interface
PLAIN Monte Carlo
MISER
VEGAS
Examples
Examples<20>.
References and Further Reading
References and Further Reading<20>.
Simulated Annealing

Simulated Annealing algorithm
Simulated Annealing functions
Examples
Examples<21>.
References and Further Reading
References and Further Reading<21>.
Examples

Trivial example
Traveling Salesman Problem
Ordinary Differential Equations

Defining the ODE System
Stepping Functions
Adaptive Step-size Control
Evolution
Driver
Examples
Examples<22>.
References and Further Reading
References and Further Reading<22>.
Interpolation

Introduction to 1D Interpolation
1D Interpolation Functions
1D Interpolation Types
1D Index Look-up and Acceleration
1D Evaluation of Interpolating Functions
1D Higher-level Interface
1D Interpolation Example Programs
Introduction to 2D Interpolation
2D Interpolation Functions
2D Interpolation Grids
2D Interpolation Types
2D Evaluation of Interpolating Functions
2D Higher-level Interface
2D Interpolation Example programs
References and Further Reading
References and Further Reading<23>.
Numerical Differentiation

Functions
Examples
Examples<23>.
References and Further Reading
References and Further Reading<24>.
Chebyshev Approximations

Definitions
Creation and Calculation of Chebyshev Series
Auxiliary Functions
Chebyshev Series Evaluation
Derivatives and Integrals
Examples
Examples<24>.
References and Further Reading
References and Further Reading<25>.
Series Acceleration

Acceleration functions
Acceleration functions without error estimation
Examples
Examples<25>.
References and Further Reading
References and Further Reading<26>.
Wavelet Transforms

Definitions
Definitions<2>.
Initialization
Transform Functions
Examples
Examples<26>.
References and Further Reading
References and Further Reading<27>.
Transform Functions

Wavelet transforms in one dimension
Wavelet transforms in two dimension
Discrete Hankel Transforms

Definitions
Definitions<3>.
Functions
Functions<2>.
References and Further Reading
References and Further Reading<28>.
One Dimensional Root-Finding

Overview
Caveats
Initializing the Solver
Providing the function to solve
Search Bounds and Guesses
Iteration
Search Stopping Parameters
Root Bracketing Algorithms
Root Finding Algorithms using Derivatives
Examples
Examples<27>.
References and Further Reading
References and Further Reading<29>.
One Dimensional Minimization

Overview
Overview<2>.
Caveats
Caveats<2>.
Initializing the Minimizer
Providing the function to minimize
Iteration
Iteration<2>.
Stopping Parameters
Minimization Algorithms
Examples
Examples<28>.
References and Further Reading
References and Further Reading<30>.
Multidimensional Root-Finding

Overview
Overview<3>.
Initializing the Solver
Initializing the Solver<2>.
Providing the function to solve
Providing the function to solve<2>.
Iteration
Iteration<3>.
Search Stopping Parameters
Search Stopping Parameters<2>.
Algorithms using Derivatives
Algorithms without Derivatives
Examples
Examples<29>.
References and Further Reading
References and Further Reading<31>.
Multidimensional Minimization

Overview
Overview<4>.
Caveats
Caveats<3>.
Initializing the Multidimensional Minimizer
Providing a function to minimize
Iteration
Iteration<4>.
Stopping Criteria
Algorithms with Derivatives
Algorithms without Derivatives
Algorithms without Derivatives<2>.
Examples
Examples<30>.
References and Further Reading
References and Further Reading<32>.
Linear Least-Squares Fitting

Overview
Overview<5>.
Linear regression
Multi-parameter regression
Regularized regression
Robust linear regression
Large dense linear systems
Troubleshooting
Examples
Examples<31>.
References and Further Reading
References and Further Reading<33>.
Linear regression

Linear regression with a constant term
Linear regression without a constant term
Large dense linear systems

Normal Equations Approach
Tall Skinny QR (TSQR) Approach
Tall Skinny QR TSQR Approach.
Large Dense Linear Systems Solution Steps
Large Dense Linear Least Squares Routines
Examples

Simple Linear Regression Example
Multi-parameter Linear Regression Example
Regularized Linear Regression Example 1
Regularized Linear Regression Example 2
Robust Linear Regression Example
Large Dense Linear Regression Example
Nonlinear Least-Squares Fitting

Overview
Overview<6>.
Solving the Trust Region Subproblem (TRS)
Solving the Trust Region Subproblem TRS.
Weighted Nonlinear Least-Squares
Tunable Parameters
Initializing the Solver
Initializing the Solver<3>.
Providing the Function to be Minimized
Iteration
Iteration<5>.
Testing for Convergence
High Level Driver
Covariance matrix of best fit parameters
Troubleshooting
Troubleshooting<2>.
Examples
Examples<32>.
References and Further Reading
References and Further Reading<34>.
Solving the Trust Region Subproblem (TRS)

Levenberg-Marquardt
Levenberg-Marquardt with Geodesic Acceleration
Dogleg
Double Dogleg
Two Dimensional Subspace
Steihaug-Toint Conjugate Gradient
Examples

Exponential Fitting Example
Geodesic Acceleration Example 1
Geodesic Acceleration Example 2
Comparing TRS Methods Example
Large Nonlinear Least Squares Example
Basis Splines

Overview
Overview<7>.
Initializing the B-splines solver
Constructing the knots vector
Evaluation of B-splines
Evaluation of B-spline derivatives
Working with the Greville abscissae
Examples
Examples<33>.
References and Further Reading
References and Further Reading<35>.
Sparse Matrices

Data types
Data types<2>.
Sparse Matrix Storage Formats
Overview
Overview<8>.
Allocation
Accessing Matrix Elements
Initializing Matrix Elements
Reading and Writing Matrices
Copying Matrices
Exchanging Rows and Columns
Matrix Operations
Matrix Properties
Finding Maximum and Minimum Elements
Compressed Format
Conversion Between Sparse and Dense Matrices
Examples
Examples<34>.
References and Further Reading
References and Further Reading<36>.
Sparse Matrix Storage Formats

Coordinate Storage (COO)
Coordinate Storage COO.
Compressed Sparse Column (CSC)
Compressed Sparse Column CSC.
Compressed Sparse Row (CSR)
Compressed Sparse Row CSR.
Sparse BLAS Support

Sparse BLAS operations
References and Further Reading
References and Further Reading<37>.
Sparse Linear Algebra

Overview
Overview<9>.
Sparse Iterative Solvers
Examples
Examples<35>.
References and Further Reading
References and Further Reading<38>.
Sparse Iterative Solvers

Overview
Overview<10>.
Types of Sparse Iterative Solvers
Iterating the Sparse Linear System
Physical Constants

Fundamental Constants
Astronomy and Astrophysics
Atomic and Nuclear Physics
Measurement of Time
Imperial Units
Speed and Nautical Units
Printers Units
Volume, Area and Length
Volume Area and Length.
Mass and Weight
Thermal Energy and Power
Pressure
Viscosity
Light and Illumination
Radioactivity
Force and Energy
Prefixes
Examples
Examples<36>.
References and Further Reading
References and Further Reading<39>.
IEEE floating-point arithmetic

Representation of floating point numbers
Setting up your IEEE environment
References and Further Reading
References and Further Reading<40>.
Debugging Numerical Programs

Using gdb
Examining floating point registers
Handling floating point exceptions
GCC warning options for numerical programs
References and Further Reading
References and Further Reading<41>.
GSL CBLAS Library

Level 1
Level 1<2>.
Level 2
Level 2<2>.
Level 3
Level 3<2>.
Examples
Examples<37>.

automatically generated by info2www version 1.2.2.9