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

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

Added original make3d

File size: 929 bytes
Line 
1function  LinearVariables = depends(x)
2%DEPENDS Returns indicies to variables used in an SDPVAR object
3%
4% i = depends(x)
5%
6% Input
7%    x : SDPVAR object
8% Output
9%    i : DOUBLE
10
11% Author Johan Löfberg
12% $Id: depends.m,v 1.2 2006/08/11 11:48:15 joloef Exp $
13
14[mt,variabletype] = yalmip('monomtable');
15ncv = yalmip('nonCommutingTable');
16
17% Simple linear cases
18if ~any(variabletype(x.lmi_variables))
19    LinearVariables = x.lmi_variables;
20else
21    LinearVariables = [];
22    for i = 1:length(x.lmi_variables)
23        v = x.lmi_variables(i);
24        if any(mt(v,:))
25            LinearVariables = [LinearVariables find(mt(v,:))];
26        else
27            LinearVariables = [LinearVariables  ncv(v,1+find(ncv(v,2:end)))];
28            if ~isnan(ncv(v,1))
29                v = ncv(v,1);
30                LinearVariables = [LinearVariables find(mt(v,:))];
31            end
32        end
33    end
34end
35LinearVariables = unique(LinearVariables);
Note: See TracBrowser for help on using the repository browser.