[SciPy-dev] Bessel functions from Boost
Mon Feb 9 03:20:11 CST 2009
On Mon, Feb 9, 2009 at 12:35 AM, Pauli Virtanen <firstname.lastname@example.org> wrote:
> Sun, 08 Feb 2009 20:25:37 -0800, Michael Abshoff wrote:
>> David Cournapeau wrote:
>>> This is much better - I really don't see the point of using C++ for
>>> math functions. I am ok with this.
>> Out of curiosity: I checked the boost website and it states for the math
>> "All the implementations are fully generic and support the use of
>> arbitrary "real-number" types, although they are optimised for use with
>> types with known-about significand (or mantissa) sizes: typically float,
>> double or long double."
>> Since I assume some people around here are interested in arbitrary
>> precisions and after looking some more at the documentation it seems
>> that that library only supports this via using an NTL type which in turn
>> uses GMP. NTL itself is GPLed, GMP is LGPL, so either one does not fit
>> the licensing requirements of Scipy.
> Yeh, arbitrary precision could be nice in principle.
> But as I see it, at the moment it's out-of-scope for Scipy. Right now, we
> only need good implementations in double precision. These we can get for
> some functions for example by adapting the Boost code (and re-testing it)
> -- this is much less work than rewriting everything from scratch.
>> David mentioned to write a library from scratch and I also assume that
>> you want arbitrary precisions. Given that GMP is LGPL, the arbitrary
>> precisions code in OpenSSL is covered by a BSD advertising clause (which
>> might or might not be a deal breaker around here) what do you suggest to
>> do about arbitrary precisions? I am not aware of any BSD 2 or 3 clause
>> license library besides mpmath :)
> For the present, I'd say that we should leave the arbitrary-precision
> functions implemented in mpmath.
Right. For double precision I think mpmath is not so fast. Fredrik, is
it difficult to make mpmath fast even for double precision?
Last time I asked:
SciPy already provides a truckload of machine precision special
functions, with excellent (fast and robust) implementations. It'd be
hard to top that.
But apparently, maybe mpmath can be useful.
More information about the Scipy-dev