MPOPTION_INFO_IPOPT Returns MATPOWER option info for IPOPT. DEFAULT_OPTS = MPOPTION_INFO_IPOPT('D') VALID_OPTS = MPOPTION_INFO_IPOPT('V') EXCEPTIONS = MPOPTION_INFO_IPOPT('E') Returns a structure for IPOPT options for MATPOWER containing ... (1) default options, (2) valid options, or (3) NESTED_STRUCT_COPY exceptions for setting options ... depending on the value of the input argument. This function is used by MPOPTION to set default options, check validity of option names or modify option setting/copying behavior for this subset of optional MATPOWER options. See also MPOPTION.
0001 function opt = mpoption_info_ipopt(selector) 0002 %MPOPTION_INFO_IPOPT Returns MATPOWER option info for IPOPT. 0003 % 0004 % DEFAULT_OPTS = MPOPTION_INFO_IPOPT('D') 0005 % VALID_OPTS = MPOPTION_INFO_IPOPT('V') 0006 % EXCEPTIONS = MPOPTION_INFO_IPOPT('E') 0007 % 0008 % Returns a structure for IPOPT options for MATPOWER containing ... 0009 % (1) default options, 0010 % (2) valid options, or 0011 % (3) NESTED_STRUCT_COPY exceptions for setting options 0012 % ... depending on the value of the input argument. 0013 % 0014 % This function is used by MPOPTION to set default options, check validity 0015 % of option names or modify option setting/copying behavior for this 0016 % subset of optional MATPOWER options. 0017 % 0018 % See also MPOPTION. 0019 0020 % MATPOWER 0021 % Copyright (c) 2014-2016, Power Systems Engineering Research Center (PSERC) 0022 % by Ray Zimmerman, PSERC Cornell 0023 % 0024 % This file is part of MATPOWER. 0025 % Covered by the 3-clause BSD License (see LICENSE file for details). 0026 % See https://matpower.org for more info. 0027 0028 if nargin < 1 0029 selector = 'D'; 0030 end 0031 if have_feature('ipopt') 0032 switch upper(selector) 0033 case {'D', 'V'} %% default and valid options 0034 opt = struct(... 0035 'ipopt', struct(... 0036 'opts', [], ... 0037 'opt_fname', '', ... 0038 'opt', 0 ... 0039 ) ... 0040 ); 0041 case 'E' %% exceptions used by nested_struct_copy() for applying 0042 opt = struct(... 0043 'name', { 'ipopt.opts' }, ... 0044 'check', 0 ... 0045 ); 0046 % 'copy_mode', { @ipopt_options } ... 0047 otherwise 0048 error('mpoption_info_ipopt: ''%s'' is not a valid input argument', selector); 0049 end 0050 else 0051 opt = struct([]); %% IPOPT is not available 0052 end