Repeated interpolation for 3D unstructured grid -> Optimization

Hello,

Trying to perform mesh-to-mesh 3D interpolation on unstructured grid. Mesh size is about 200k nodes. Painful thing that interpolation shoud be repeated for ~1000 times (different thermal map) but on the same mesh.

One “operation” performs in a half minute (w/ InterpolationOrder–>1) → but 1000 steps takes 12 hours.
I wondering are there any options to optimize the procedure for unstructured grid and make the whole calculation faster, cause mesh doesn`t change
and it useless to generate it at each step.

Hello Artemiy,

What Mathematica functions are you using? One suggestion may be to employ the new (as of version 10) mesh and region functionality, see: RegionNearest—Wolfram Documentation and in particular
RegionNearestFunction—Wolfram Documentation

Hello, Frank.

For “automatic” interpolation I use same name function:

Func = Interpolation[DataTable, InterpolationOrder -> 1];

I also tryed to write manual procedure using:

Needs["TetGenLink`"]
TetGenDelaunay[MeshNodes]
RegionMemberFunction
NearestFunction

Due to Delaunay mesh size (~1.3m tetrahedrons) this option may take more time.