HAVE_FEATURE_IPOPT_AUXDATA Detect availability/version info for IPOPT_AUXDATA Feature detection function implementing 'ipopt_auxdata' tag for HAVE_FEATURE to detect support for IPOPT_AUXDATA, required by IPOPT 3.11 and later. See also HAVE_FEATURE, NLPS_MASTER, QPS_MASTER, IPOPT, IPOPT_AUXDATA.
0001 function [TorF, vstr, rdate] = have_feature_ipopt_auxdata() 0002 %HAVE_FEATURE_IPOPT_AUXDATA Detect availability/version info for IPOPT_AUXDATA 0003 % 0004 % Feature detection function implementing 'ipopt_auxdata' tag for HAVE_FEATURE 0005 % to detect support for IPOPT_AUXDATA, required by IPOPT 3.11 and later. 0006 % 0007 % See also HAVE_FEATURE, NLPS_MASTER, QPS_MASTER, IPOPT, IPOPT_AUXDATA. 0008 0009 % MP-Opt-Model 0010 % Copyright (c) 2004-2020, Power Systems Engineering Research Center (PSERC) 0011 % by Ray Zimmerman, PSERC Cornell 0012 % 0013 % This file is part of MP-Opt-Model. 0014 % Covered by the 3-clause BSD License (see LICENSE file for details). 0015 % See https://github.com/MATPOWER/mp-opt-model for more info. 0016 0017 vstr = ''; 0018 rdate = ''; 0019 if have_feature('ipopt') 0020 vn = have_feature('ipopt', 'vnum'); 0021 if ~isempty(vn) 0022 if vn >= 3.011 %% have_feature('ipopt') already checked 0023 TorF = 1; %% for existence of 'ipopt_auxdata' 0024 else 0025 TorF = 0; %% don't use it, even if it exists 0026 end 0027 %% no version info, decide based on presence 0028 %% or absence of 'ipopt_auxdata' 0029 elseif exist('ipopt_auxdata', 'file') 0030 TorF = 1; 0031 else 0032 TorF = 0; 0033 end 0034 else 0035 TorF = 0; 0036 end