How to create a 2D lookUp table in matlab

109 visualizzazioni (ultimi 30 giorni)
I want to create a 2D look Up table from 3 arrays
x1= 0:0.1:1 %axis values --> length is 11
x2= 25:2:35 %axis values --> length is 6
y= 0.01:0.001:0.06 % output data --> length is 51, rest of the 15 elements are zeros
I want to create an LUT which has 6 rows and 11 columns. Whenever I need to retrieve y, if exact query points of x1 and x2 is not present, then the function should give an interpolated value. I want to generate a .m script for this without using Simulink.
Anyone please help me with this.
Thanks
  2 Commenti
Walter Roberson
Walter Roberson il 2 Ago 2016
length(y) is 51. If you were given the J'th x1 value exactly and the K'th x2 value exactly (so no interpolation needed), which of the 51 y values should be output?
Nadia A
Nadia A il 2 Ago 2016
Modificato: Nadia A il 2 Ago 2016
Sorry, rest of the values is assigned as 0.I have edited my original post.
Thanks

Accedi per commentare.

Risposta accettata

Stephen23
Stephen23 il 2 Ago 2016
You could use interp2 or interpn:
>> x1 = 0:0.1:1;
>> x2 = 25:2:35;
>> y = 0.01:0.001:0.06;
>> vm = zeros(numel(x1),numel(x2));
>> vm(1:numel(y)) = y;
>> interpn(x1,x2,vm,0,25)
ans = 0.010000
Note that this allocates the values of y row-wise into mat. If you want them to be allocated column-wise then transpose mat before and after the allocation.
  1 Commento
Walter Roberson
Walter Roberson il 8 Set 2017
You need a scattered interpolant for that case. You should expect that off-diagonal might look fairly different than you imagine, as interpolation will come to depend upon which triangle happens to be closest in 3 space.

Accedi per commentare.

Più risposte (1)

Satishkumar Aruljothi
Satishkumar Aruljothi il 2 Ago 2016
Modificato: Satishkumar Aruljothi il 2 Ago 2016
Use 2-D looup table from simulink library.
see the attached image.
  1 Commento
Nadia A
Nadia A il 2 Ago 2016
Modificato: Nadia A il 2 Ago 2016
Hi SatishKumar, Is there any matlab function for this? I need to implement this same functionality in .m script without using Simulink.
Thanks

Accedi per commentare.

Categorie

Scopri di più su Interpolation in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by