MathGroup Archive 2003

[Date Index] [Thread Index] [Author Index]

Search the Archive

Interpolation over an irregular surface

I'm trying to map (interpolate) temperatures from one 2D set of points
to another for a finite element application.  The initial set of
points is {x1,y1,t1} and the second set is {X1,Y1,T1}, and I know all
the values except for T1. I have connectivity data for the new mesh
{X1,Y1}, but not for the original mesh (x1,y1).

I have downloaded the ExtendGraphics package, and it has a functions
(TriangularInterpolate) which should do exactly what I need. No error
is given when I initially use it
(interpFunc=TriangularInterpolate[nodeTemp], where nodeTemp is a
3-column matrix). However, when I invoke it again (interpFunc[x1,y1]),
I get a series of errors, primarily about reaching the recursion or
iteration limits. Could this have to do with the size of the initial
matrix (~15,000 sets of data), or is there a different problem? It
only seems to work correctly when the point is outside of the initial
region, or if all the nearest nodes have the same temperature.

After this setback, I planned to use the Delaunay function in the same
package to help write my own interpolation routine. Using this
function should return three sets of data: the Convex Hull, Adjacency
Matrix and the Triangles. However, it appears that only the Convex
Hull and the Triangles are returned; to effectively write an
interpolation routine, the Adjacency Matrix is crucial. How can I get
this data from the Delaunay function?

Any advice on solving this problem is greatly appreciated, whether you
can suggest an alternative approach or provide a means to use these
functions more effectively. Thank you.

  • Prev by Date: Re: Simple Problem ??
  • Next by Date: Re: Re: Fit or Interpolate
  • Previous by thread: Re: Formatted output
  • Next by thread: Re: Interpolation over an irregular surface