Minima在2d矩阵区域及其指数

时间:2015-01-26 17:24:06

标签: matlab matrix minima

我有一组18个MATLAB向量(当前值的原始读数)数据,这些数据随着许多最小值和最大值而变化,放入B的2d矩阵,其大小为18乘16348。

我找到了每个行向量的全局最大值的索引和值。 存储在另一个向量中,即M(具有B的每个行向量的最大值)和l(具有B的每个行向量的最大索引)。使用以下代码。

[M,l]=max(B,[],2)

现在我想找到在此全局最大值之前出现的每个行向量的最小值。

我写了一个循环来向后看,从全局最大值开始并检查最小值及其索引。最小值的条件可以想象为 b [i,l]< b [i,l-1]& b [i,l]< b [i,l + 1]

这个循环如下。

o=l;    % l vector has the indices of global max of all 18 vectors%
for i=1:18
    while ( B(i,o(i)) > B(i,o(i)-1)) % to locate the minima before globalmax
            o(i)=o(i)-1;
    end;
            if( B(i,o(i) < B(i, o(i)+1))
            display(o(i));
            display(B(i,o(i)));
            break;
            end;
 end;

由于某种原因,while循环只执行一次然后停止。这就是我面临的问题。

下图显示了所绘制的18个值中的4个以及标记的矢量的最大值和最小值。

Plot of values, maxima, minima

0 个答案:

没有答案