Azzera filtri
Azzera filtri

Problem in using interp2

14 visualizzazioni (ultimi 30 giorni)
IMC
IMC il 1 Ott 2021
Commentato: IMC il 1 Ott 2021
Hello,
I want to interpolate my latitude longitude values. They are in the form of matrix.
Lat = 406x270;
Lon = 406X270;
I have read docs about it but still can't figure out that how to do interpolation. Vq = interp2(X,Y,V,Xq,Yq). How to use V here? What is meant by 'Xq and Yq contain the coordinates of the query points'?
I have another variable M (2030x1354). So, I want Lat Lon to become:
Lat1 = 2030x1354;
Lon1 = 2030x1354;
So, should I use M instead of V? Then what about Xq and Yq?
After going through some questions I tried using meshgrid for it. But it gave me following error;
Error using repmat
Requested 109620x109620 (44.8GB) array exceeds maximum array size preference. Creation of arrays greater than this limit may take a long time
and cause MATLAB to become unresponsive.
Lat Lon data is attached. Is there anyother way to do interpolation? Thank you.

Risposte (1)

KSSV
KSSV il 1 Ott 2021
Modificato: KSSV il 1 Ott 2021
Vq = interp2(X,Y,V,Xq,Yq) ;
In the above V is the value at (X,Y). You need to have that value.It seems you have only Lon and Lat here.
% Demo
[X,Y,Z] = peaks(100) ; % Z is here V
% Do interpolation
x0 = min(X(:)) ; x1 = max(X(:)) ;
y0 = min(Y(:)) ; y1 = max(Y(:)) ;
x = linspace(x0,x1,50) ;
y = linspace(y0,y1,50) ;
[Xq,Yq] = meshgrid(x,y) ;
Zq = interp2(X,Y,Z,Xq,Yq) ;
So get your V i.,e. Z i.e. respective Lon, LAt value.
  11 Commenti
KSSV
KSSV il 1 Ott 2021
Modificato: KSSV il 1 Ott 2021
Then attach the text file.
IMC
IMC il 1 Ott 2021
I've attached the text file.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by