From: Arjen Markus on 7 Jan 2010 10:36 On 7 jan, 16:09, Dieter Britz <dieterbr...(a)yahoo.com> wrote: > Arjen Markus wrote: > > On 7 jan, 13:52, Dieter Britz <dieterbr...(a)yahoo.com> wrote: > >> Can someone point me at a free subroutine in Fortran for 2D interpolation > >> that is more recent that the 1980's? > >> -- > >> Dieter Britz (dieterbritz<at>yahoo.com) > > > netlib.org is the authoritive source of course, but why the need for > > something more recent than the 1980's? Do you expect a new algorithm > > has popped up? > > > Regards, > > > Arjen > > Point taken. What I should have asked is, what is recommended? I have > tried out one, but it doesn't seem to work very well. I'll check to > see what netlib has. > > Dieter > -- > Dieter Britz (dieterbritz<at>yahoo.com) Hm, that is very hard to answer in general. If your data points are randomly spread, then a method like Renka-Cline's (triangulate and interpolate linearly) could do the job nicely. If your data points lie on irregular tracks, triangular meshes are probably not very good, unless the mesh generation is aware of that. Simple methods are of course available too: data points weighted by inverse distance or inverse distance squared. But they tend to create somewhat unsmooth results (near the data points the contour lines get distorted). Or some Kriging method ... What kind of data points do you have? Regards, Arjen
From: Ron Shepard on 7 Jan 2010 10:49 In article <hi4tot$fol$1(a)news.net.uni-c.dk>, Dieter Britz <dieterbritz(a)yahoo.com> wrote: > Point taken. What I should have asked is, what is recommended? I have > tried out one, but it doesn't seem to work very well. I'll check to > see what netlib has. If your data is on a 2D grid, then look for "bilinear interpolation" routines. The simple versions work on regular grids with equally spaced x and y values, but there are other versions that work on irregularly space grid points too. If your data is not on a grid but on randomly located (x_i,y_i) points, then this is a more difficult problem. $.02 -Ron Shepard
From: AnotherSquid on 7 Jan 2010 11:35
On Jan 7, 8:49 am, Ron Shepard <ron-shep...(a)NOSPAM.comcast.net> wrote: > > If your data is on a 2D grid, then look for "bilinear interpolation" > routines. Here at NCAR (National Center for Atmospheric Research, Boulder) we have occasion to do interpolation on 2D regular and Gaussian grids. Lots of people here think that bilinear interpolation is fine. We also use bi-cubic spline interpolation (two continuous derivatives in each direction). This algorithm was programmed here by Alan Kaylor Cline in the 1980s and is still, I believe, considered state-of-the-art. If you want the program, let me know. Andy |