[Math] Surface fitting

MATLABsurfaces

I do not need a complete answer but just some advice.

I have a sparse matrix of points in a volume. I know a surface passing by these points exists and this surface is mostly flat and relatively smooth with some small harmonic contents. See image below (this surface is a bit too complicated).

I am looking for a method (Laplacian surfaces / Splines / etc.) to fit my points to the best surface of minimal order. Actually I am expecting do describe my surface with less than 30 coefficients.

Any advice of the method I can use (with Matlab or Mathematica) ? If I can get a working example it would be awesome.

enter image description here

Best Answer

There exist several solutions in Matlab, as follows, they will give you both example programs and references to the underlying methods: Interpolate scattered data - MATLAB griddata, Surface Fitting using gridfit - File Exchange - MATLAB Central, Scattered data interpolation - MATLAB.

The branch of mathematics is called the approximation theory. The general method for smooth scattered data interpolation uses radial basis functions, in Matlab see for example Scattered Data Interpolation and Approximation using Radial Base Functions.

Related Question