reduce.m

来自「matlab波形优化算法经常要用到的matlab toolbox工具箱:yalm」· M 代码 · 共 37 行

M
37
字号
function F = projection(F,x,method)
% REDUCE  Removes redundant constraints using MPT
%
% Freduced  = reduce(F)
%
% F  :  Polytopic SET object
%
% See also POLYTOPE, PROJECTION

% Author Johan L鰂berg
% $Id: reduce.m,v 1.3 2005/02/04 10:10:27 johanl Exp $

f = [];
for i = 1:length(F)
    if  F.clauses{i}.type==2
        fi =  F.clauses{i}.data;
        f = [f;fi(:)];
    else
        error('Only linear element-wise inequalities can be reduced')
    end
end

if ~islinear(F)
    error('Only linear element-wise inequalities can be reduced')
end

B = full(getbase(f));
P = polytope(-B(:,2:end),B(:,1));

x_vars = getvariables(F);
x = recover(x_vars);

H = get(P,'H');
K = get(P,'K');

F = set(H*x < K);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?