(gsl-ref.info)Top
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