Barker wigthing network optimization problem

Hello,

I am trying to solve a problem that appears in the next reference: http://www.gtti.it/GTTI09/files/papers/Telerilevamento/Telerilevamento_12.30_Colone.pdf the problem is represented by equation number 9 (sorry I can not upload images due to my “karma level”). I tried to implement it with the next Matlab code (partial implementation):

sec_Barker = [1 -1 1 1 -1 1 1 1 -1 -1 -1];
xb=xcorr(sec_Barker);
M=12;

cvx_begin
  variable alfa(2*M+1)
  maximize(sum(xb.*alfa(M-10+1:M+10+1)))
  subject to
    (abs(sum(z.*flipdim(alfa(M-10+1+1:M+10+1+1),2))))<=1;
    %more restrictions would be here
cvx_end

The problem comes from the maximize statement when I try “alfa(M-10+1:M+10+1)”, I get the next error ??? Error using ==> cvx.times at 46 Matrix dimensions must agree.

I am not an expert on optimization, so anyone has an idea that can solve it?

Thanks in advance to everybody.

Regards.

This really doesn’t have anything to do with CVX. Try creating a numeric matrix—say, alfa=randn(2*M+1,1)—and see what happens when you try the expression sum(xb.*alfa(M-10+1:M+10+1)).