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

27 次查看(过去 30 天)
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

回答(1 个)

Chunru
Chunru 2021-12-4
% 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 个评论
bidhan pandey
bidhan pandey 2021-12-7
编辑:bidhan pandey 2021-12-7
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 2021-12-9
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.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Nonlinearity 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by