Hello,

I am trying to solve the following convex SOCP problem with CVX. My problem is that CVX-status shows “Solved” state but when I check the constraints, they are not satisfied. I was wondering if you can help me to find my mistake here?

%-----load required matrices and vectors----------------------------------

load h

load D1

load D2

load QI

%—values--------------------------------------------

gamma = .1;

R = 6;

Lw = 5;

P1 = 41.14;

P2 = 19.79;

D = P1*D1+P2*D2+eye(R*Lw);
h_tild = [0;h];
D_tildq = ([0,zeros(1,R*Lw);zeros(R

*Lw,1), D])^(.5);*

Q1_tildq = ([1,zeros(1,RLw);zeros(R

Q1_tildq = ([1,zeros(1,R

*Lw,1), P2*QI+D1])^(.5);

Q2_tildq = ([1,zeros(1,R

*Lw);zeros(R*Lw,1), P1*QI+D2])^(.5);

a1 = sqrt(gamma/P2);

a2=sqrt(gamma/P1);

%—optimization----------------------------------------------------

cvx_begin quiet

cvx_precision best

cvx_solver Mosek

variable w(R*Lw+1) complex
minimize( norm(D_tildq*w) )

```
subject to
w(1)==1;
imag(w(2:end)'*h)==0; %(w'*h_tild)
real(w'*h_tild) >= a1*norm(Q1_tildq*w);
real(w'*h_tild) >= a2*norm(Q2_tildq*w);
```

cvx_end

cvx_status

%—check the constraints---------------------------

const1=real( (w’*h_tild) - a1*(norm(Q1_tildq*w)) )
const2=real( (w’ h_tild) - a2(norm(Q1_tildq*w)) )

Here is the link to the matrices that I am using for this run and also the m-file for this example:

https://drive.google.com/open?id=1Hhg1jeLlP4R9N2FJJ9CcTUIPtXqgopSA

Here is the problem formulation:

Any help would be appreciated!