This is the mail archive of the
gsl-discuss@sourceware.org
mailing list for the GSL project.
Re: Where a generalized Richardson extrapolation routine would fit in GSL?
At Thu, 17 Dec 2009 22:50:22 +0000,
Brian Gough wrote:
> > There's just enough to the argument processing and general normtable
> > handling that it's easier to get good test coverage if there's one
> > implementation that does the whole enchilada and then everything else
> > sits as convenience wrappers. That prevents changes to one
> > convenience function from accidentally changing the interface's
> > semantics (especially for the 'k' handling).
> >
> > All that said, I'm happy to make the interface conform. Would you be
> > willing to take draft public API in gsl_extrap.h (inline below) and
> > change the functions and their signatures to resemble what you'd like?
>
> I will send that once I've looked at it a bit more.
I think the best interface would be the analog of the existing levin
sum routines:
int gsl_sum_levin_u_accel (const double *array,
const size_t n,
gsl_sum_levin_u_workspace * w,
double *sum_accel, double *abserr);
e.g.
int gsl_extrap_richardson (const double *array,
const size_t n,
const double t,
const size_t k
gsl_extrap_richardson_workspace * w,
double *result, double *abserr);
It would be useful to have both a result and abserr, to take into
account cancellation error.