Rev | Line | |
---|
[37] | 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.