47 lines
1.5 KiB
Matlab
Executable File
47 lines
1.5 KiB
Matlab
Executable File
function F = gt(X,Y)
|
|
% Internal class for constraint lists
|
|
|
|
superiorto('sdpvar');
|
|
superiorto('double');
|
|
|
|
warned = 0;
|
|
if isa(X,'constraint')
|
|
if ~is(sdpvar(X),'quantized')
|
|
warning('YALMIP:strict','Strict inequalities will only (if at all) be supported on binvar/intvar variables in future versions of YALMIP. Turn off this warning using warning(''off'',''YALMIP:strict'')');
|
|
%error('Non-strict inequalities will only be supported on binvar/intvar variables in future versions of YALMIP');
|
|
end
|
|
end
|
|
if warned == 0
|
|
if isa(Y,'constraint')
|
|
if ~is(sdpvar(Y),'quantized')
|
|
warning('YALMIP:strict','Strict inequalities will only (if at all) be supported on binvar/intvar variables in future versions of YALMIP. Turn off this warning using warning(''off'',''YALMIP:strict'')');
|
|
%error('Non-strict inequalities will only be supported on binvar/intvar variables in future versions of YALMIP');
|
|
end
|
|
end
|
|
end
|
|
|
|
try
|
|
% Try to evaluate
|
|
if isa(X,'constraint')
|
|
% (z > w) > y
|
|
Z = X.List{end} - Y;
|
|
F = X;
|
|
F.List{end+1} = '>';
|
|
F.List{end+1} = Y;
|
|
F.Evaluated{end+1} = Z;
|
|
F.ConstraintID(end+1) = yalmip('ConstraintID');
|
|
F.strict(end+1) = 1;
|
|
else
|
|
% z > (w > y)
|
|
Z = X - Y.List{1};
|
|
F = Y;
|
|
F.List = {X,'>',F.List{:}};
|
|
F.Evaluated = {Z,F.Evaluated{:}};
|
|
F.ConstraintID = [yalmip('ConstraintID') F.ConstraintID];
|
|
F.strict = [1 F.strict];
|
|
end
|
|
catch
|
|
error(lasterr);
|
|
end
|
|
|