Hi everybody,
I’m happy to announce the first release of the interpolation.py library under the BSD license. It aims at becoming a fully JIT compiled library for several interpolation methods which can be used in numba accelerated loops. I reckon some people on this mailing list may find it useful. It is also somehow a tribute to the numba developers, and the amazing work they have done so far.
Interpolation.py
currently supports smolyak products of polynomial as well as more traditional splines on regularly spaced cartesian grids (multilinear and cubic). Among the features are linear extrapolation, computation of derivatives, ability to deal with vector valued function. Everything works in theory with any number of dimensions.
The code for the splines is evaluated by automatically generated code (tempita templates), which is then JItted by numba. The resulting performances when evaluating splines at a very large number of points are very close to a former Cython implementation and not ridiculous with respect to the competition. I had been keeping the score for a long time with the successive numba versions and dropped the cython implementation when I saw that.
Several new developments of the library are closely related to recent features of numba, and may actually be good showcases for them:
There is one missing feature which would be extremely useful: some robust way to generate function code and JIT it just-in-time (ala julia @generate). The optimized interpolation routines have many possible options (extrapolation type, interp type, …) and producing in advance all combinations for all dimensions is costly and inelegant.
There is still a lot of progress to be made, especially when it comes to documentation and testing. Any feedback is more than welcome.
Best regards,
Pablo
--
You received this message because you are subscribed to the Google Groups "Numba Public Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to numba-users...@continuum.io.
To post to this group, send email to numba...@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/b5312c4e-5cc4-4df2-b7fc-26032fc2be50%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/2dc71b88-31dc-4656-9aa7-aff5fc33c012%40continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/CADv3RKT8hi9_MRVAUgiugHXJsc7vTuLn8OesR0qybVtgO1Hr6g%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to numba-users+unsubscribe@continuum.io.
To post to this group, send email to numba...@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/2dc71b88-31dc-4656-9aa7-aff5fc33c012%40continuum.io.
--
You received this message because you are subscribed to the Google Groups "Numba Public Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to numba-users+unsubscribe@continuum.io.
--
You received this message because you are subscribed to the Google Groups "Numba Public Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to numba-users...@continuum.io.
To post to this group, send email to numba...@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/d1ab2072-2281-4086-9df8-30b6478d0304%40continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/2dc71b88-31dc-4656-9aa7-aff5fc33c012%40continuum.io.
--
You received this message because you are subscribed to the Google Groups "Numba Public Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to numba-users...@continuum.io.
To post to this group, send email to numba...@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/CADv3RKT8hi9_MRVAUgiugHXJsc7vTuLn8OesR0qybVtgO1Hr6g%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Numba Public Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to numba-users...@continuum.io.
To post to this group, send email to numba...@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/70074ec9-9675-49a7-b932-af5a6ea0fc90%40continuum.io.
--
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/f545c6ed-3bc6-4279-9799-8b26d02f560d%40continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/numba-users/CADQWuG5Yj6i2qCj13B3aCOeq2DM-OzKVn_0BzK1GkZ5mixOMJQ%40mail.gmail.com.