MathLib requirements proposal

This page is setup to give the HEP community a chance to give feedback on the list of math. functions presented at the LHC++ meeting of 9-10 June 1997 at CERN by Rob Veenhof. for the MathLib requirements. The list of math. functions is heavily biased by his personnel use of CERNLIB now, although Rob Veenhof did get information on usage from colleagues.
The list of math. functions, comments and conclusions are Rob Veenhof's personnel

As was agreed during the LHC++ meeting of 9-10 June 1997, a list of most dessirable math. functions will be presented to NAG who will incorporated them into their libraries. For questions relating to the comments and conclusions please contact: Rob Veenhof. For all other questions regarding this page please contact: Antoni S. Baranski.

Integration + Differential eq.

Routine  Routines with documented usage: 
GAUSS Gauss integration 1 variable.
RKNYS Runge-Kutta-Nystroem 2nd. order.
DGMLT n-Dimensional integration.
SIMPS Simpson integration.
Probably used: 
RADAPT Adaptive Gauss integration.
RGS56P
CGAUSS Complex Gauss integration.
RIWIAD M-C integration
RRKSTP 1st. Order differential equation.
RDEQBS
RDEQMR
ELDANY Elliptic differential eq.
For a comparison with possible replacement libraries click here.

Special Functions

Routine Routines with documented usage:
BESJ0 Bessel function order 0, 1.
CCLBES Bessel function complex arg.
RBZEJY Zeroes of Bessel I, Y functions.
Cylindrical configurations, usually integer order, sometimes complex.
BESI0 Modified Bessel functions
BSIR3 Modified Bessel functions non-integer order.
Order 5/3: Synchroton radiation power. 
Integer order: Space charge in tubes.
CELFUN Jacobian elliptic functions (complex).
RTHETA Theta functions.
CELINT "Inverse" of CELFUN (complex).
2D Electrostatics, doubly periodic configurations.
ERF Error function.
FREQ Frequency function.
Error calculation, probability intervals.
GAMMA Gamma function.
GAMMF
ALGAMA
GGAMMA
BINOMI Binomial coefficients.
RASLGF Legendre polynomials.
Multipole expansions, atomic physics.
Probably used: * 
Note: There are functions which Rob Veenhof has not been able to identify as used, but they are likeliy to be used. They are also highly valuable for their numerical accuracy.
For a comparison with possible replacement libraries click here.

Zero Finding

Routine Routines with documented usage or likely to be used:
RTEQ3 Tartagia cubic equation.
RTEQ4 Ferrari quartic equation.
RZERO Zero of 1 variable.
NERFZ Zero count of complex function.
For a comparison with possible replacement libraries click here.

Interpolation

Routine Routines with documented usage:
DIVDIF I-D interpolation (polynomial).
POLINT
FINT Linear n-dimensional interpolation.
RCHECF Chebyshev series.
RCHSUM
SPLINE (various routines).
For a comparison with possible replacement libraries click here.

Linear Algebra, vectors

Routine Routines with documented usage:
RINV etc. Solving linear equations.
VECMAN Vector manipulations.
SORTZV Various sorting routines
FLPSOR
SORTRQ
For a comparison with possible replacement libraries click here.

Random number Generators

Routine Routines with documented usage:
RANF Uniform Random numbers.
RNDM Uniform Random numbers.
RANLUX,RN48 Uniform Random numbers.
NORRAN Gaussian Random numbers.
RNORML Gaussian Random numbers.
Basic generators, called many times within a single job (+/- 10^9 and more).
RNGAMA Gamma Rangom numbers.
Simulate polya, confidence etc.
POISSN Poisson Random numbers.
RNPSSN Poisson Random numbers.
Number of things happening.
RANLAN Landav Random numbers.
VVILOV Vavilov Random numbers.
Energy loss fluctuations.
HISRAN Histogram Random numbers.
FUNRAN Function Random numbers.
RN3DIM Spherical Random numbers.
For a comparison with possible replacement libraries click here.

Various


Integration + Differential eq. comparison

Comparison with  NAG : Comparison with  DiffPack : Comparison with  ESSL : Comparison with  BLITZ :

Conclusion:

  1. Quadrature: well covered with both analytic and MC methods, mostly by  NAG but also by  ESSL .
  2. Differential equations: Finite elements: well represented by  DiffPack .
  3. 2nd. Order methods for 1D differential equations not found. Also missing: Complex quadrature and (trivial) simpson rule.

Special Functions comparison

Comparison with  NAG : Comparison with BLITZ, ESSL and DiffPack :

Conclusion:


Zero Finding comparison

Comparison with NAG : Comparison with BLITZ, ESSL, DiffPack :

Conclusion:


Interpolation comparison

Comparison with NAG : Comparison with ESSL : Comparison with BLITZ and DiffPack :

Conclusion:


Linear Algebra, vectors comparison

Comparison with NAG, ESSL, BLITZ and Lapack :

Conclusion:


Random number Generators

Comparison with NAG : Comparison with ESSL : Comparison with BLITZ, Lapack and DiffPack :

Conclusion:


Summary


Replacement librariers

A list of possible replacement librariers:
NAG
ESSL
BLITZ
Lapack
DiffPack



Last changed: June 11, 1997.
This page was setup on behalve of Rob Veenhof by Antoni S. Baranski.