www.gusucode.com > mbcdata 工具箱 matlab 源码程序 > mbcdata/@cgoptim/duplicateinitialvaluedata.m

    function optim = duplicateinitialvaluedata(optim, RunIdx)
%DUPLICATEINITIALVALUEDATA Copy initial value data to create new runs.
%
%   OPTIM = DUPLICATEINITIALVALUEDATA(OPTIM, RUNIDX) duplicates the runs
%   specified, creating new ones in the process.  The new runs are inserted
%   at the end of the existing runs.

%   Copyright 2005 The MathWorks, Inc.


OldNR = getNumRuns(optim);
pVars = [getfixedvalues(optim), getfreevalues(optim)];
Data = getinitialvaluedata(optim, pVars, RunIdx);

optim = setNumRuns(optim, OldNR+length(RunIdx));
for n = 1:length(pVars)
    setinitialvaluedata(optim, pVars(n), OldNR+(1:length(RunIdx)), Data{n});
end