Inventory of Mathematical Functions and Algorithms

LCG Project | LCG Applications Area Cernlib writeup | GSL contents | Abramowitz and Stegun | MathLib Project | Project Portal | $Date: 2006/11/21 08:36:58 $

Functions and Polynomials Numerical Methods Random Numbers and Distributions Others

Special Functions

Routines for evaluating Special functions
Bessel Functions of various types
* Regular cylindrical functions Bessel J functions of various orders MathMore, GSL, Cernlib, TMath
* Irregular cylindrical functions Bessel Y functions of various orders MathMore, GSL, Cernlib, TMath
* Regular modified cylindrical Bessel I functions of various orders MathMore, GSL, Cernlib, TMath
* Irregular modified cylindrical Bessel K functions of various orders MathMore, GSL, Cernlib, TMath
* Regular spherical functions Bessel j functions of various orders MathMore, GSL, Cernlib
* Irregular spherical functions Bessel y functions of various orders MathMore, GSL, Cernlib

. Clausen function Clausen integral function GSL, Cernlib
. Coulomb Wave Function Wave functions for bound states and scattering solutions GSL, Cernlib
* Dawson's integral function Dawson integral GSL, Cernlib
* Dilogarithm function Dilogarithms for real and complex arguments GSL, Cernlib
. Complete Elliptic integrals Legendre form of the various types of complete Elliptic integrals MathMore, GSL, Cernlib
. Uncomplete Elliptic integrals Carlson and Legendre form of uncomplete Elliptic integrals MathMore, GSL, Cernlib ( 2 )
* Error functions Error function (ERFC) and complementary MathCore, GSL, Cernlib, TMath
* Exponential integrals Various type of exponential integrals MathMore, GSL, Cernlib
* Hyperbolic integrals Sinh and Cosh integrals GSL
* Trigonometric integrals Sin and Cos integrals GSL, Cernlib
* Arctangent integral Computation of Arctangent integral GSL, Cernlib
* Fermi Dirac function Complete and incomplete Fermi-Dirac functions GSL, Cernlib
* Gamma function Gamma and related functions MathCore, GSL, Cernlib( 2, 3), TMath
* Hypergeometric functions Confluent and Gauss hypergeometric function MathMore, GSL
* Laguerre functions Laguerre polynomials of various orders MathMore, GSL
* Legendre functions Legendre polynomials, functions and spherical harmonics MathMore, GSL, Cernlib
* PSI function Digamma and polygamma functions GSL, Cernlib
* Zeta functions (Riemann) Riemann Zeta function MathMore, GSL, Cernlib
. Struve functions Struve funcitons of order Zero and One Cernlib, TMath

Polynomials

Algorithms for evaluating and solving polynomials
* Polynomial evaluation Evaluate polynommial of degree n GSL
* Quadratic equations Find roots (real and complex) of quadratic equation GSL
* Cubic equation Find roots (real and complex) of cubic equation GSL, Cernlib
* Quartic equations Find roots (real and complex) of quartic equation Cernlib, GSL (t.b.r)
* General Polynomial equations Numerical method fot finding roots of higher order polynomial GSL, Cernlib

Numerical Integration

Algorithms for performing numerical integration of a function in one dimension
* Non-adaptive Gauss-Kronrod Simple integration method for smooth functions. GSL
* Adaptive Gauss integration Gauss-Kronrod adaptive integration agorithms for general functions and for special cases (singularities, infinite intervals, etc..) GSL, Cernlib
* Adaptive integration for integrands with weight functions Algorithms based on the Clenshaw-Curtis rule vor various cases GSL, Cernlib
* Multidimensional integration Monte Carlo algorithms for multi dimensional integrations GSL, Cern ( 2)

Numerical differentiation

Numerical algorithms for calculating derivatives of functions
* Numerical derivatives Compute numerical derivatives by finite differencing GSL, Cernlib

Linear Algebra

* Vector and Matrices operations (BLAS) Vector operation (BLAS Level 1), Matrix vector operation (BLAS Level 2) and matrix-matrix operations (BLAS Level 3) GSL, CBLAS, CLHEP matrix
* Linear Algebra problems Functions for solving systems of linear equations

GSL, LAPACK, Cernlib, Others ??

Random Number generation

Various random number generators
*

Random number generators

various generators of uniform distributed random numbers, either as integers or double precision floating point numbers GSL, CLHEP, TRandom
. Quasi-Random Sequences Sequences of numbers covering progressively a d-dimensional space GSL

Random Number Distributions and Probability Distributions

GSL provides generation of random numbers according to a certain pdf, functions to calculate the pdf and the corresponding comulative distributions P and Q and inverse. Generation of random distribution is also provided in CLHEP and ROOT

* Gaussian distributions One and 2 variable gaussian random numbers, pdf and comulative distributions MathCore, GSL, Cernlib (2), TMath
* Exponential distribution One dim exponential random numbers, pdf and comulative distributions MathCore, GSL
* Cauchy distribution Cauchy (Lorentz) random numbers, pdf and comulative distributions MathCore, GSL
* Landau distribution Landau random numbers, pdf and comulative distributions MathCore, GSL, Cernlib, TMath
* Gamma distribution Gamma random numbers, pdf and comulative distributions MathCore, GSL, Cernlib ( 2), TMath
* Flat distribution Flat random numbers, pdf and comulative distributions MathCore, GSL
* Lognormal distribution Lognormal random numbers, pdf and comulative distributions MathCore, GSL
* Chi2-squared distribution Chi2 random numbers, pdf and comulative distributions MathCore, GSL, Cernlib ( 2, 3 ), TMath
* F distribution F random numbers, pdf and comulative distributions MathCore, GSL
* Student t-distribution Student-t random numbers, pdf and comulative distributions MathCore, GSL, Cernlib
* Poisson distribution Poisson random numbers, pdf and comulative distributions MathCore, GSL, Cernlib, TMath
* Binomial distribution Binomial random numbers, pdf and comulative distributions MathCore, GSL, Cernlib, TMath
* Multinomial distribution Multinomial random numbers, pdf and comulative distributions GSL, Cernlib
. Breit Wigner distribution Breit Wigner distributed random numbers MathCore, CLHEP, TMath
. Kolgomorov distribution Only Kolgomorov distribution Cernlib, TMath
. Vavilov distribution Vavilov pdf and its inverse Cernlib ( 2)

Minimization

Algorithms for finding the minimum (or maximum) of a function in one or more dimensions
* One dim. minimization minimization algorithms for one dimensional functions GSL, Cernlib
* Multidimensional minimization various algorithms for unconstrained minimization including the calculation of the covariance matrix of best fit parameters Minuit, GSL

Root Finding

Algorithms for finding the root of a function in one or more dimensions
* One dimensional root finders Algorithms to find root of a function in one dimension GSL, Cernlib
* Multidimensional root finders Algorithms to find n-roots of a set of n functions, to solve a system of non linear equations GSL, Cernlib

Interpolation

various types of algorithms for performing interpolation
* Polynomial interpolation simple method recommended for small number of points GSL Cernlib
* Cubic spline interpolation Cubic spline with natural and periodic boundary conditions GSL Cernlib
* Akima spline interpolation Method based on the non-rounded corner algorithm of Wodicka GSL

Function Approximations

routines for computing approximations to functions
* Chebyshev Approximations routines for create and calculate Chebyshev series with derivatives and integrals GSL, Cernlib ( 2)
. Trigonometric series summation of trigonometric series Cernlib
. Series acceleration method to accelerate convergence of series using Levin u-transform GSL

Fast Fourier Transform

routines for computing discrete Fast Fourier Transforms (FFT)
* Complex data FFT compute FFT (and its inverse) for complex data sequences GSL, Cernlib ( 2)
* Real data FFT compute FFT (and its inverse) for real data sequences GSL, Cernlib ( 2)

Differential Equations

Algorithms for solving n-dimensional first-order systems of differential equations
* Range-Kutta algorithms various types of Range-Kutta solving methods GSL, Cernlib ( 2)
* Burlirsch-Stoer method Implicit Bulirsch-Stoer method. Requires Jacobian GSL, Cernlib