|
Boost : |
From: Daryle Walker (dwalker07_at_[hidden])
Date: 2002-11-03 00:28:30
On Friday, November 1, 2002, at 10:34 AM, Martin Weiser wrote:
> On Freitag, 1. November 2002 07:06, Daryle Walker wrote:
>> All the talk on adaptive methods is nice. But don't forget that some
>> users don't have closed form functions (with possible traits), some
>> users just have data points, and there's nothing we can do about it.
>> So we need an integration interface(s) for data-point-only users too.
>
> Sure. It's just that I attack the problems first which are of most
> interest for me.
>
> The discussion on an interface for RAI (random access integration,
> enabling adaptive integration) is on the way. Dan seems to like the
> interface I suggested well enough to build upon. Maybe we should think
> of
> an interface for FAI (fixed access integration) along the same lines.
> Would you like something like
>
> template <class InIter>
> FixedIntegrator<InIter>
> integrate(InIter first, InIter last, double dx);
>
> and FixedIntegrator is an option-setting integration class similar to
> the
> one designed for RAI, providing an implicit conversion to
>
> typename std::iterator_traits<InIter>::value_type
>
> What do you think? Do we need to provide integration points for
> non-equidistant data as well? Is this case common enough?
>
That interface could work for equidistant data. Am I right that the
input iterators return only the y-values?
I mentioned another interface in my posts, one that accepts one point
at a time and updates the integration, when you can't set up a point
list in advance.
We could do the non-equidistant data case. It is the most general
case, the other cases are just specializations. In fact, an adaptive
algorithm can call the general case after it determines what points to
use.
Daryle
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk