2D LUT (extrapolation) Simulink vs interp2
显示 更早的评论
Hi,
I am trying to "converts" a Simulink model into a matlab script/function, but I stumbled upon the 2D Look Up table conversion.
The interp2 works fine if input values lies inside the table (interpolation). However when the one/more input values lie outside the look-up table, interp2 per default returns NaN. The NaN can be substituted by any scalar number. The 2D-LUT block needs to be converted is set to do linear extrapolation when the input values fall outside the table.
Is there any default function to do 2D-linear-extrapolation in Matlab? preferably with same working principle as in 2D-LUT block in Simulink?
回答(1 个)
Sebastian Castro
2015-4-15
Looks like interp2 is designed to return NaNs by default unless your interpolation method is 'spline' .
You can change this by include the last 'scalar' argument after the interpolation method. For example,
Vq = interp2(V,Xq,Yq,'linear','scalar')
- Sebastian
3 个评论
Ilham Hardy
2015-4-16
Sebastian Castro
2015-4-16
编辑:Sebastian Castro
2015-4-16
Whoops! Didn't notice that part -- that it's a single scalar value.
There are two examples at the end of the above page for 2-D interpolation and 1-D extrapolation.
- Sebastian
Thushara De Silva
2018-9-9
Is there an accepted answer for this question? I also have the same problem of extrapolating, however, I couldn't find the solution from those pages.
类别
在 帮助中心 和 File Exchange 中查找有关 Interpolation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!