How do I create a 2D lookup table from efficiency map?

20 views (last 30 days)
Hi,
I have created a efficiency plot using [speed,torque] points (see figure). Efficiency inside the red curve is 96% and between the red and the green line, the efficiency is 94%. How do I create a 2D lookup table that gives out efficiency value for a given torque and speed?
Regards,
Bidhan

Answers (1)

Chunru
Chunru on 4 Dec 2021
% Combine all the points for red and green curves to form the three vectors
% speed, torque, efficiency. Then use the scatteredUbterpolant
F = scatteredInterpolant(speed, torque, efficiency)
% now you can look up
e = F(speed0, torque0)
% doc scatteredInterpolant
  2 Comments
bidhan pandey
bidhan pandey on 7 Dec 2021
Edited: bidhan pandey on 7 Dec 2021
Thanks for the answer. I did use your answer in a Matlab funtion block in Simulink to get back an efficiency value. But that made my model too slow. Actually I want to create a 2D lookup table (in the 2-D Lookup Table block) that I can use inside Simulink. Any help on that?
Chunru
Chunru on 9 Dec 2021
If you want to improve the speed, one way is to interpolate the data into a 2-D regular grid, for example
[x, y] = meshgrid(0:.1:1, 0:.1:1);
z = F(x, y);
Once these are evaluated offline, you can use a 2D-lookup table in simulink with x, y, z the lookup table.

Sign in to comment.

Categories

Find more on Nonlinearity in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!