On 03/01/07, Tim Leslie <tim.leslie@gmail.com> wrote:
Hi All, I've been working through a bunch of tickets and noticed this one has stagnated. Can someone comment on the status of this.
http://projects.scipy.org/scipy/scipy/ticket/286
The second patch to this ticket has not been applied? Is there a reason not to? I noticed the other thread on this topic suggested that a complete solution might require moving delaunay out of the sandbox. Is this still the case?
Cheers,
Tim
Hi Tim, everybody, I am (slowly) trying to work on improving the interp2d function as well as spline fitting in general. The first patch attached to the ticket you mention is applied and provides the RectBivariateSpline class for fitting a spline to rectangular gridded data. The second patch changed interp2d to use this class rather than the firtpack surfit function (which absolutely should not be used for interpolation). This was not applied as it was decided that interp2d really must support non-uniform grid data. The only solution to this problem (surft still needs replacing) proposed to date is to use Rokert Kern's delaunay package from the sandbox. In order to achieve this I proposed that the spline *fitting* code be taken out of scipy.interpolate and put into scipy.spline. And that scipy.interpolate should import methods from both the spline and delaunay package to provide interp1d, interp2d, interpnd only. My first step towards this was to create a spline package in the sandbox. In doing so I got side tracked into cleaning it up (moving to purely f2py etc.) And then I got seriously side tracked at work (PhD thesis work), so my timing wasn't great. TODO: 1. finish the sandbox.spline package (I could skip cleaning it up for now, I'm about half way through on my machine (uncommitted) - do people think moving to clean f2py interface is really worth it?) 2. create a sandbox.interpolate package that contains the new interp functionality based on spline and delaunay only 3. after testing, move all three packages out of the sandbox What do people think about all of this? It will lead to quite large API changes (but on a high level, i.e. scipy.interpolate.RectBivariateSpline will become scipy.spline.RectBivariateSpline) Cheers, John