Line | |
---|
1 | function sdp1 |
---|
2 | |
---|
3 | % TEST 1 |
---|
4 | A = randn(3,3);A = -A*A'; |
---|
5 | P = sdpvar(3,3); |
---|
6 | t = sdpvar(1,1); |
---|
7 | y = sdpvar(1,1); |
---|
8 | F = set(A'*P+P*A < -eye(3)); |
---|
9 | F = F + set(P > A*A') + set(P(3,3)>0) + set(t+y > 7) + set(P(2,2)>4)+set(P(1,1:2)>t) + set(t>12); |
---|
10 | obj = trace(P)+y; |
---|
11 | |
---|
12 | sol1 = solvesdp(F,obj); |
---|
13 | obj1 = double(obj); |
---|
14 | p1 = checkset(F); |
---|
15 | |
---|
16 | sol2 = solvesdp(F,obj,sdpsettings('dualize',1)); |
---|
17 | obj2 = double(obj); |
---|
18 | p2 = checkset(F); |
---|
19 | |
---|
20 | mbg_asserttolequal(sol1.problem,0); |
---|
21 | mbg_asserttolequal(sol2.problem,0); |
---|
22 | mbg_asserttolequal(obj1,obj2, 1e-5); |
---|
23 | mbg_asserttolequal(min(p1),0, 1e-5); |
---|
24 | mbg_asserttolequal(min(p2),0, 1e-5); |
---|
Note: See
TracBrowser
for help on using the repository browser.