www.gusucode.com > mbcdata 工具箱 matlab 源码程序 > mbcdata/@cgoptimrunner/private/pMatrixToItemIndex.m

    function [ItemIdx, OutputIdx] = pMatrixToItemIndex(ItemData, MatIdx)
%PMATRIXTOITEMINDEX Convert overall output index to an item index.
%
%   [ITEMIDX, OUTPUTIDX] = PMATRIXTOITEMINDEX(ITEMDATA, MATIDX) converts
%   the index into all values, MATIDX, into an index into the list of items
%   and an index into that item's outputs.

%   Copyright 2006 The MathWorks, Inc.


OutLen = ItemData.OutputLengths;

ItemIdx = 1;
LastSumOut = 0;
SumOut = OutLen(1);
while ItemIdx<=length(OutLen) && SumOut<MatIdx
    ItemIdx = ItemIdx + 1;
    LastSumOut = SumOut;
    SumOut = SumOut + OutLen(ItemIdx);
end
OutputIdx = MatIdx - LastSumOut;