Interpolation between three sets of data
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Sami Al-Abbar
el 6 de Mayo de 2015
Comentada: Sami Al-Abbar
el 7 de Mayo de 2015
I have three Arrays(Column Vector?) of Speed vs. Position for three different voltages (9V, 13.5V and 16V). Each array contains a speed for every position (2387 values). I would like to make a lookup table with the position and voltage as inputs and the speed value as output. For that, I would like to interpolate the speed vs. position arrays for the voltages in between the three that I already have. That should result in speed vs position arrays for 9v, 10v, 11v - 16v. Is this possible?
The interpolation methods in the help section only show how to interpolate along the x-axis (in this case the Position values) while in my case, I have three sets of data separated by voltage and want to interpolate in between these sets.
Perhaps a multidimensional array could be used?
Any help would be greatly appreciated.
0 comentarios
Respuesta aceptada
Andrei Bobrov
el 6 de Mayo de 2015
Editada: Andrei Bobrov
el 6 de Mayo de 2015
Let your data S (Speed) V (voltages):
V = [9, 13.5, 16];
S = randi(20,10,3);
Solution:
n = 1:size(S,1);
[ii,jj] = ndgrid(n,V);
F = griddedInterpolant(ii,jj,S,'cubic');
[i2,Vnew] = ndgrid(n,[9 10 11 16]);
out = F(i2,Vnew);
or with griddata:
n = 1:size(S,1);
[ii,jj] = ndgrid(n,V);
[i2,Vnew] = ndgrid(n,[9 10 11 16]);
out = griddata(ii,jj,S,i2,Vnew);
5 comentarios
Andrei Bobrov
el 7 de Mayo de 2015
n = 1:size(SLT,1);
[i0,j0,k0] = ndgrid(n,[9,13.5,16],[-20,25,85]);
S = cat(3,SLT,SRT,SHT);
[i1,j1,k1] = ndgrid(n,9:.5:16,-20:85);
Vout0 = griddatan([i0(:),j0(:),k0(:)],S(:),[i1(:),j1(:),k1(:)]);
Vout = reshape(Vout0,size(i1));
Más respuestas (1)
Alka Nair
el 6 de Mayo de 2015
Hi, Interpolation can also be done for multidimensional data. Please refer to the documentation page for INTERP2 and INTERP3 at the following locations:
and
0 comentarios
Ver también
Categorías
Más información sobre Data Type Conversion en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!