Adding points to interpolant

3 views (last 30 days)
Tintin Milou
Tintin Milou on 31 May 2023
Answered: Srivardhan on 1 Jun 2023
Hello,
Suppose I have a scatter of points and have used scatteredInterpolant to get an interpolant F.
Now, I want to add one more point to my scatter and update my interpolant F. Is simply calling scatteredInterpolant the fastest way or is there a way to update F in a more efficient way? It seems like a waste of time to reconstruct the interpolant from scratch given that I only want to add one more point.
Thank you!

Accepted Answer

Srivardhan
Srivardhan on 1 Jun 2023
Hi Tintin,
As per my understanding, you would like to add the points to existing Interpolant without creating a new Interpolant using “scatteredinterpolant” function.
Interpolant has two properties called Points and Values. Points is a vector contains the coordinates of sample points, and Values is also a vector that contains the sample values associated with Points vector coordinates. By using Points and Values vectors, you can add points to the existing Interpolant .
Here is the code to add the points to existing Interpolant, you can check:
X = randi([-10,10],10,1);
Y = randi([-10,10],10,1);
Z = X + Y;
F = scatteredInterpolant(X,Y,Z)
F.Values(end+1) = 4
F.Points(end+1,:) = [2,2];
F
For further reference, please check the following link to know more about “scatteredinterpolant” function.
I hope this resolves the issue you were facing.

More Answers (0)

Categories

Find more on Interpolation in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!