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

    function options = cgnbiom2options(NBIom)
%CGNBIOM2OPTIONS convert xregoptmgr options to optimset structure

%  Copyright 2000-2015 The MathWorks, Inc. and Ford Global Technologies, Inc.

% take an NBI om and return an NBI options structure

ShadowOm = get(NBIom, 'ShadowOptions');
NBISubproblemOm = get(NBIom, 'NBISubproblemOptions');

NBIoptions = cgnbi('defaults');
ShadowOptions = NBIoptions.ShadowOptions;
NBISubproblemOptions = NBIoptions.NBISubproblemOptions;

ShadowOptions = om2optimset(ShadowOm,ShadowOptions);
NBISubproblemOptions = om2optimset(NBISubproblemOm,NBISubproblemOptions);


options = cgnbioptimset(ShadowOptions, NBISubproblemOptions);


function opts = om2optimset(om,opts)

s = get(om);
omParams = fieldnames(s);
for i=1:length(omParams)
   if isfield(opts,omParams{i}) || isprop(opts,omParams{i})
       opts.(omParams{i})  = s.(omParams{i});
   end
end
if ~isfield(s,'Algorithm')
    % revert to active-set for old options where we didn't offer Algorithm
    opts.Algorithm = 'active-set';
end