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

    function [optimitem, optim] = createNewObjective(obj, optim)
%CREATENEWOBJECTIVE Construct a replacement object
%
%   [OPTIMITEM, OPTIM] = CREATENEWOBJECTIVE(OBJ, OPTIM) creates an
%   appropriate new optimisation item from this object.  Changes may be
%   made to the provided optimization object, but the new item should not
%   be added to it.

%   Copyright 2005 The MathWorks, Inc.


if isempty(obj.modptr)
    pM = xregpointer;
else
    pM = obj.modptr;
end

switch obj.minstr
    case 'min'
        tpStr = 'minimize';
    case 'max'
        tpStr = 'maximize';
    otherwise
        tpStr = 'helper';
end

optimitem = cgpointobjective(obj.name, tpStr, pM);
optimitem = setAllowTypeChange(optimitem, logical(obj.canswitchminmax));