www.gusucode.com > mbcdata 工具箱 matlab 源码程序 > mbcdata/@cgoptimoptions/loadobj.m
function opts = loadobj(opts) %LOADOBJ Load-time object actions % % OBJ = LOADOBJ(OBJ) % Copyright 2005-2010 The MathWorks, Inc. if isstruct(opts) if ~isfield(opts, 'version') % Add a preferred API version to use when running opts.preferredAPI = 3; opts.version = 2; end if opts.version < 5 opts.EqConMode = 'off'; end if opts.version < 4 % Add a renameMode to indicate whether objectives and constraints can % be renamed for this optimization opts.renameMode = false; end if opts.version < 3 % AddParameter method change. The typestr field in the parameter % structure has been replaced with a more flexible type field. The % value field in the parameter structure is now a default value for % *every* parameter type. if isstruct(opts.parameters) nPars = length(opts.parameters); newPars(nPars).label = []; newPars(nPars).typestr = []; newPars(nPars).typequalifier = []; newPars(nPars).value = []; newPars(nPars).displayname = []; [newPars.label] = deal(opts.parameters.label); [newPars.typestr] = deal(opts.parameters.typestr); [newPars.displayname] = deal(opts.parameters.displayname); for i = 1:nPars switch opts.parameters(i).typestr case 'number' newPars(i).typequalifier = [-Inf, Inf]; newPars(i).value = opts.parameters(i).value; case 'list' newPars(i).typequalifier = opts.parameters(i).value; newPars(i).value = opts.parameters(i).value{1}; case 'boolean' newPars(i).typequalifier = []; newPars(i).value = opts.parameters(i).value; end end opts.parameters = newPars; else % If here, the parameter field contains an optim manager. No upgrade % actions required in this case end end end opts.version = 5;