fund_updowm函数查找递增列表中目标临近数据位置
摘要:该MATLAB函数fund_updowm用于在递增列表(LUT)中查找目标值的临近数据位置。主要功能包括:1) 精确匹配时返回相同索引;2) 目标值位于两个列表值之间时返回相邻索引;3) 超出范围时返回边界索引。函数输入为目标值point和查找表lut,输出为下界索引down_index和上界索引up_index。适用于一维数值查找场景,能处理匹配、区间及越界三种典型情况。
matlab
function [down_index,up_index] = fund_updowm(point,lut)
% 查找当前数值在LUT中的index和前后绑点
% V1_20251202
[V,H,~]=size(lut);
num=max(V,H);
%检查point是否和LUT列表数值某一个一样
for i=1:num
if point==lut(i)
up_index=i;
down_index=i;
% up_value=lut(i);
% down_value=lut(i);
end
end
%筛选上下绑点
for i=1:num-1
if point>lut(i) && point<lut(i+1)
up_index=i+1;
down_index=i;
% up_value=lut(i+1);
% down_value=lut(i);
end
end
if point>lut(num)
up_index=num;
down_index=num;
end
if point<lut(1)
up_index=1;
down_index=1;
end
end