Line | |
---|
1 | function [BilinearizeringConstraints,failure] = deriveBilinearizing(Fi,w,order) |
---|
2 | |
---|
3 | if nargin < 3 |
---|
4 | order = 1; |
---|
5 | end |
---|
6 | |
---|
7 | BilinearizeringConstraints = set([]); |
---|
8 | failure = 0; |
---|
9 | Fi = sdpvar(Fi); |
---|
10 | if is(Fi,'hermitian') |
---|
11 | Fi = Fi(find(triu(ones(length(Fi))))); |
---|
12 | end |
---|
13 | Fi = Fi(:); |
---|
14 | |
---|
15 | for i = 1:length(Fi) |
---|
16 | pij = Fi(i); |
---|
17 | [c,v] = coefficients(pij,w); |
---|
18 | for k = 1:length(c) |
---|
19 | if degree(v(k)) > order |
---|
20 | if isa(c(k),'double') |
---|
21 | failure = 1; |
---|
22 | return |
---|
23 | else |
---|
24 | BilinearizeringConstraints = BilinearizeringConstraints + set(c(k) == 0); |
---|
25 | end |
---|
26 | end |
---|
27 | end |
---|
28 | end |
---|
Note: See
TracBrowser
for help on using the repository browser.