Confusion with interp3 and interpn

5 vues (au cours des 30 derniers jours)
Tahariet Sharon
Tahariet Sharon le 24 Avr 2020
Hi,
According to my teacher, "for a matrix indexed as [M, N, P], the axis variables must be given in the order N, M, P" in relation to the swaping of variables at the interp3 line:
[X, Y, Z] = size(data);
ts= [20 30 20]
[x, y, z] = ndgrid((1:X)/X, (1:Y)/Y, (1:Z)/Z);
[x2, y2, z2] = ndgrid((1:ts(1))/(ts(1)), (1:ts(2))/(ts(2)), (1:ts(3))/(ts(3)));
test1= interp3(y, x, z, data, y2, x2, z2, 'linear');
However, I couldn't find this info on the function's page, nor it makes any sense to me (even though the computation seems correct!).
Any help welcome, thank you,
TS
  5 commentaires
Tahariet Sharon
Tahariet Sharon le 25 Mai 2020
Modifié(e) : Tahariet Sharon le 25 Mai 2020
Yes, of course I did, but it outputs an error:
Error using interp3 (line 150)
Input grid is not a valid MESHGRID.
darova
darova le 25 Mai 2020
Maybe it's the answer on your question

Connectez-vous pour commenter.

Réponse acceptée

Steven Lord
Steven Lord le 24 Avr 2020
I think reading through this documentation page may be of use to you, especially the examples in the Grid Representation section.
  1 commentaire
Tahariet Sharon
Tahariet Sharon le 25 Mai 2020
Still, Why the order of variables should be "y,x,z"?

Connectez-vous pour commenter.

Plus de réponses (1)

darova
darova le 25 Mai 2020
here is an example
[x,y] = meshgrid(1:5);
z = x.^2 + y.^2/2;
[x1,y1] = meshgrid(1:0.5:5);
z1 = interp2(x,y,z,x1,y1); % standart interpolation
z2 = interp2(y',x',z,y1',x1'); % interpolation y x
surf(x,y,z,'facecolor','none')
hold on
plot3(x1(:),y1(:),z1(:),'.r')
plot3(x1(:),y1(:),z2(:),'ob')
hold off
legend('original surface',...
'standard interpolation',...
'y x interpolation','location','north')
axis vis3d
  2 commentaires
Tahariet Sharon
Tahariet Sharon le 26 Mai 2020
Thanks, however, you are using interp2, and not interp3. Do the same with interp3 and you will get an error, I would expect. See here: https://groups.google.com/forum/#!topic/comp.soft-sys.matlab/xlinA3xsxT8 "Does interp3 switch X and Y".

Connectez-vous pour commenter.

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by