Line | |
---|
1 | function define(varargin) |
---|
2 | %DEFINE |
---|
3 | % |
---|
4 | % definestring = 'sdpvar '; |
---|
5 | % |
---|
6 | % for i=1:nargin |
---|
7 | % X = varargin{i}; |
---|
8 | % xname = inputname(i); |
---|
9 | % [n,m]=size(X); |
---|
10 | % for ii = 1:n |
---|
11 | % for jj=1:m |
---|
12 | % x=X(ii,jj); |
---|
13 | % v=getvariables(x); |
---|
14 | % if min(n,m)>1 |
---|
15 | % dostring = [xname num2str(ii) num2str(jj) '=recover(' num2str(v) ');']; |
---|
16 | % else |
---|
17 | % dostring = [xname num2str(max(ii,jj)) '=recover(' num2str(v) ');']; |
---|
18 | % end |
---|
19 | % evalin('caller',dostring); |
---|
20 | % end |
---|
21 | % end |
---|
22 | % end |
---|
23 | |
---|
24 | for i=1:nargin |
---|
25 | X = varargin{i}; |
---|
26 | xname = inputname(i); |
---|
27 | [n,m]=size(X); |
---|
28 | namesout = []; |
---|
29 | variablesin = []; |
---|
30 | for ii = 1:n |
---|
31 | for jj=1:m |
---|
32 | x=X(ii,jj); |
---|
33 | v=getvariables(x); |
---|
34 | if min(n,m)>1 |
---|
35 | namesout = [namesout xname num2str(ii) num2str(jj) ',']; |
---|
36 | variablesin = [variablesin num2str(v) ' ']; |
---|
37 | % dostring = [xname num2str(ii) num2str(jj) '=recover(' num2str(v) ');']; |
---|
38 | else |
---|
39 | variablesin = [variablesin num2str(v) ' ']; |
---|
40 | namesout = [namesout xname num2str(max(ii,jj)) ',']; |
---|
41 | % dostring = [xname num2str(max(ii,jj)) '=recover(' num2str(v) ');']; |
---|
42 | end |
---|
43 | % evalin('caller',dostring); |
---|
44 | end |
---|
45 | end |
---|
46 | dostring = ['[' namesout(1:end-1) '] = recover([ ' variablesin ']);']; |
---|
47 | evalin('caller',dostring); |
---|
48 | end |
---|
Note: See
TracBrowser
for help on using the repository browser.