source: proiecte/pmake3d/make3d_original/Make3dSingleImageStanford_version0.1/third_party/opt/yalmip/extras/@ncvar/degreduce.m @ 37

Last change on this file since 37 was 37, checked in by (none), 14 years ago

Added original make3d

File size: 603 bytes
Line 
1function pnew = degreduce(p,d)
2% DEGREDUCE Remove higher order terms
3
4% Author Johan Löfberg
5% $Id: degreduce.m,v 1.1 2006/08/10 18:00:19 joloef Exp $
6
7if islinear(p)
8    pnew = p;
9else
10    [sqrList,CompressedList] = yalmip('nonlinearvariables');
11
12    base = getbase(p);
13    vars = getvariables(p);
14
15    for i = 1:length(vars)
16        v = vars(i);
17        if ismember(v,CompressedList(:,1))
18            j = find(CompressedList(:,1)==v);
19            if sum(any(CompressedList(j,2:end),1))>d
20                base(i+1)=0;
21            end
22        end
23    end
24    pnew = clean(sdpvar(1,1,[],vars,base));
25
26end
Note: See TracBrowser for help on using the repository browser.