MATLAB: Unexpected interpolation result when using scatteredInterpolant or TriScatteredInterp

MATLABunexpected interpolation scatteredinterpolant triscatteredinterp bug?

I'm usuing scatteredInterpolant to linearly interpolate scattered data. The Z values (samples) in my data-set range from 0.005 to 15.26 and the point that I'm interpolating to is fully enclosed by avaialble points, so interpolation is possible.
I would expect a value of about 0.04, but both scatteredInterpolant and TriScatteredInterp return values of -85.8, which doesn't make sense at all.. Using 'natural' or 'nearest' does produce realistic results.
All required data to reproduce this issue is attached and given below. Any help is greatly appriciated.
top view, blue points are available data, red dot is requested point
same plot in 3d
Code (required .mat file is attached)
close all; clear all; clc;
load('debugData');
% Since we're using linear interpolation, we would expect a result
% between the minimum and maximum of zz
min(zz)
max(zz)
temp = scatteredInterpolant(real(xx),real(yy),real(zz),'linear','none');
% linear interpolation
% no extrapolation
howcanthisbe = temp(rx,ry) % would exepect 0.04 but gives -85
% trying the old method
old = TriScatteredInterp(xx,yy,zz);
oldResult = old(rx,ry) % same result
% top view
figure;
plot(xx,yy,'b.');
hold on;
plot(rx,ry,'r.');
% and 3d
figure;
t = delaunay(xx,yy);
defaultFaceColor = [0.6875 0.8750 0.8984];
trimesh(t,xx,yy, zz, ...
'EdgeColor','b','FaceColor',defaultFaceColor,'FaceAlpha',0.5)
hold on;
scatter3(xx,yy,zz);
hold on;
scatter3(rx,ry,howcanthisbe,'r.');

Best Answer

Some of the sample-points are very close (machine precision) to eachother. This caused the algorithm to some up with the wrong solution.
Thanks to the people from Mathworks for coming up with the solution via email.