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

    function [freevalcell,OK,msg]= pSquareUpMultiSolns(freevalcell,OK,msg)
%pSquareUpMultiSolns makes all runs have the same number of solutions
%   [freevalcell,OK,msg]= pSquareUpMultiSolns(freevalcell,OK,msg)

%   Copyright 2010 The MathWorks, Inc.

sz=cellfun('size',freevalcell,1);
if ~all(sz==sz(1))
    % expand to the same size
    maxsol=max(sz);
    for i=1:length(freevalcell)
        if sz(i)~=maxsol
            freevalcell{i}(sz(i)+1:maxsol,:) = NaN;
            if length(OK{i})==sz(i)
                OK{i}(sz(i)+1:maxsol) = -10;
            end
            if iscell(msg) && length(msg{i})==sz(i)
                msg{i}(sz(i)+1:maxsol) = {'Solution does not exist'};
            end
        end
    end
end