MATLAB Answers

How to perform interpolation using inverse of the square of distance

7 views (last 30 days)
Mark
Mark on 24 Oct 2015
Commented: Walter Roberson on 24 Oct 2015
Please can someone assist with how to interpolate using the inverse of the square of the distance from points of known values to the point of value you wish to interpolate for?
I am trying to get the pressure at the vertex points of my triangulation by interpolating the pressure at the neighboring control volume midpoints using the inverse of the square of the distance between the center of the neighboring control volume and the vertex.

  0 Comments

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 24 Oct 2015
You might want to use something like pdist to get the pairwise distances between your target points and the control points; then square those, take reciprocal, multiply by the pressures at those points (this part is a guess), sum the result.

  4 Comments

Show 1 older comment
Walter Roberson
Walter Roberson on 24 Oct 2015
If a point is 2 units away from each of two sources that have values A and B, then what would be the expected pressure at that location? A/4 + B/4 ?
Mark
Mark on 24 Oct 2015
Yes I guess so, but my entire domain is 1mX1m so distances are well less than 1 which makes squaring it lower and so increases the result of A/4 and B/4.
Walter Roberson
Walter Roberson on 24 Oct 2015
But the physical processes involved are scale-invariant, so you should be able to multiply them by an arbitrary scale factor. In particular you should be able to substitute Euclidean distance based upon indices (provided that your x and y scales are the same.)

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!