Numerical integration library?

I notice numerical integration was one of the items listed in the ExpandedMathematicsLibrary entry under WantedLibraries in the Wiki. Has anyone done any work on this? I've been looking into this problem space lately; I had the germ of an idea that, with the magic of templates, most ODE solvers (e.g. Euler, Runge-Kutta, etc.) could be written in a container-agnostic format and in a form closely resembling that which you would find in a textbook. (I can post some proof-of-concept code if this isn't clear.) I've looked around and haven't seen anything similar, but I'm no expert on scientific programming. Anyone else interested or have comments? Fred

"Frederick Akalin" <akalin@akalin.cx> wrote in message news:44CDBC8C.7080202@akalin.cx...
I notice numerical integration was one of the items listed in the ExpandedMathematicsLibrary entry under WantedLibraries in the Wiki. Has anyone done any work on this? I've been looking into this problem space lately; I had the germ of an idea that, with the magic of templates, most ODE solvers (e.g. Euler, Runge-Kutta, etc.) could be written in a container-agnostic format and in a form closely resembling that which you would find in a textbook. (I can post some proof-of-concept code if this isn't clear.) I've looked around and haven't seen anything similar, but I'm no expert on scientific programming.
Anyone else interested or have comments?
It sounds interesting. Do you have a short example or demo or pseudo demo, of how it might work? regards Andy Little

On Mon, 2006-07-31 at 01:17 -0700, Frederick Akalin wrote:
I notice numerical integration was one of the items listed in the ExpandedMathematicsLibrary entry under WantedLibraries in the Wiki. Has anyone done any work on this? I've been looking into this problem space lately; I had the germ of an idea that, with the magic of templates, most ODE solvers (e.g. Euler, Runge-Kutta, etc.) could be written in a container-agnostic format and in a form closely resembling that which you would find in a textbook. (I can post some proof-of-concept code if this isn't clear.) I've looked around and haven't seen anything similar, but I'm no expert on scientific programming.
Anyone else interested or have comments?
I do not know to what refers numerical integration, but if it is "Computation of integrals", I have some code (Gauss-Kronod) adapted and slightly generalized from gsl (which itself comes from quadpack I think). This is yet not complete (only the basic routines no automatic sub-division) and is garanteed to work only under gcc.... But if this is considered useful, it may be a start... Theo.

Theodore Papadopoulo wrote:
On Mon, 2006-07-31 at 01:17 -0700, Frederick Akalin wrote:
I notice numerical integration was one of the items listed in the ExpandedMathematicsLibrary entry under WantedLibraries in the Wiki. Has anyone done any work on this? [snip]
Anyone else interested or have comments?
I do not know to what refers numerical integration, but if it is "Computation of integrals" Yes, this is effectively what it means. It means the computation (or estimation) of the values of definite integrals by computing (for single definite integrals) the area under curves between two limits, which can be finite or infinite. No algebraic manipulation of the integrand is required (in other words, there is no need to do any actual integration). It's also known as "quadrature" (although this word has other meanings in mathematics and so would not be a good name for a numerical-integration library).
The library would probably also need to cover multiple definite integrals (giving volumes under surfaces and hypervolumes under hypersurfaces for any number of dimensions). Numerical Recipes (http://nr.com/ and http://www.numerical-recipes.com/com/amazonordertop.html) has algorithms for numerical integration. Code is available but has restrictions in it's use. IANAL, but I would imagine that the code could not be used in Boost. Paul

I have written some simple code that I've used for years. The 1-dimensional case is easy. More difficult are multi-dimensional integration, and multi-dimensional integration where some of the limits depend on other variables, e.g.: \int x=_a^b \int y=_0^x f(x,y) dy dx
participants (5)
-
Andy Little
-
Frederick Akalin
-
Neal Becker
-
Paul Giaccone
-
Theodore Papadopoulo