Boost logo

Boost :

From: Hugo Duncan (hugoduncan_at_[hidden])
Date: 2007-12-05 18:00:58


Hi,

I have put together a quadrature library, for the numerical evaluation
of definite integrals.

I put this together to meet some requirements that I had. I would
like to get comments on whether the scope, algorithms and approach
used are of interest within boost.

The code is based on QUADPACK's QAG and QAG global adaptive routines,
using Kronrod-Gauss or Recursive Monotone Stable integration
"kernels".

This is not just a translation of the QUADPACK code, but tries to
take a (reasonably) modern C++ approach. The RMS kernel is based on
TOMS 691.

Error estimation, choice of integration kernel, algorithm performance
statistics, series limit acceleration algorithm, etc are all
plugable.

For the less brave, I would appreciate any comments you might have on
a quadrature library in general.

For the braver, the code can be found in the boost vault at
http://www.boost-consulting.com/vault/index.php?direction=0&order=&directory=Math%20-%20Numerics&

The jamfile expects BOOST_ROOT to be defined. The code use the math
toolkit from the same place in the vault. The location of the toolkit
can be specified using the BOOST_MATH_TOOLKIT_ROOT environment
variable, and by default is looked for in a directory
boost-math-toolkit, parallel to BOOST_ROOT (ie in BOOST_ROOT/..)

The code has been tested against QUADPACK and includes (very)
rudimentary documentation, with examples. The code has been compiled
only on windows, using MSVC 8 and gcc 3.4.4.

Hugo


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk