How to interpolate gridded data for a single point?

I have a 3-d grid (lon,lat,sigma) of data. I would like to interpolate this data for specific location that I specify with lon,lat,sigma to get a sinlge value for the gridded variable. I have created a meshgrid using the dimensions that matches the dimensions of my variable arrays. I thought using interp3 would be the appropriate function to call for this but I get an error saying my specified vectors are not the same dimension as the rest of the arrays. What is the method I should be using? I can't seem to find a more appropriate function to solve this seemingly simple task.

답변 (2개)

Paul
Paul 2014년 1월 13일

0 개 추천

griddata maybe?

댓글 수: 1

Andre
Andre 2014년 1월 13일
This sounds like it should work but it does not. The data is already gridded on a regular grid. The variables have dimensions 151x156x39. I created dimensional variables (x,y,z) that match that grid. I am looking for data at xi,yi,zi. When I specify uu=interp3(x,y,z,u,xi,yi,zi) it tells me x,y,z must be matrices from meshgrid (which they are) and to use triscatteredinterp. When I specify uu=griddata3(x,y,z,u,xi,yi,zi) there appears to be an issue with the DelaunayTri function which I am totally unfamiliar with.

댓글을 달려면 로그인하십시오.

Andre
Andre 2014년 1월 30일

0 개 추천

I realized shortly after this post that I had mixed my dimensions up, when corrected I got the appropriate answer.

카테고리

도움말 센터File Exchange에서 Interpolation에 대해 자세히 알아보기

질문:

2014년 1월 13일

답변:

2014년 1월 30일

Community Treasure Hunt

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

Start Hunting!

Translated by