Diagram Shaping via SOCP

  • Minimum thermal noise power for given sidelobe level

  • Minimum sidelobe level attenuation

Minimum thermal noise power for given sidelobe level

We first seek to minimize the thermal noise power subject to a sidelobe level constraint. This problem can be cast as

 min_{z in mathbf{C}^n, : delta} : sum_{i=1}^n |z_i|^2 ~:~ mbox{bf Re}(D_z(0)) ge 1, ;; |D_z(phi_i)| le delta, ;; i=1,ldots,m.

The above N constraints are second-order cone constraints on the decision variables, since they involve magnitude constraints on a complex vector that depends affinely on the decision variables. Hence the above problem is an SOCP.

A CVX implementation of this problem is given below. Note that CVX understands the magnitude of a complex variable and transforms the corresponding constraint into a second-order cone one internally.

CVX implementation
cvx_begin
    variable z(n,1) complex;
    minimize( norm(z,2) )
    subject to
        for i = 1:N,
            abs(exp(a*cos(Angles(i))*(1:n))*z) <= delta;
        end
        real( exp(a*(1:n))*z) >= 1;
cvx_end

For a particular example, we take the same parameters as in the least-squares design. We set the sidelobe level at delta = .4. Measured in decibels (dB):

 20log_{10}(delta) = -7.9588 mbox{ dB}.
alt text 

Antenna array design: minimal thermal noise power given a sidelobe level constraint of -7.98 dB, enforced at N=10 points. Due to our coarse discretization, the sidelobe constraints are only enforced at specific angles (in blue), but not everywhere satisfied.

The coarse discretization level of N=10 may be an issue. This is readily solved by using a higher number, say N=90.

alt text 

Antenna array design: minimal thermal noise power given a sidelobe level constraint, enforced at N=90 points. With a finer discretization, the sidelobe constraints are everywhere satisfied.

Minimum sidelobe level attenuation

Our goal is now to minimize the sidelobe attenuation level, delta, given the normalization requirement mbox{bf Re}(D_z(0)) ge 1.

This can be cast as the SOCP

 min_{z in mathbf{C}^n, : delta} : delta ~:~ mbox{bf Re}(D_z(0)) ge 1, ;; |D_z(phi_i)| le delta, ;; i=1,ldots,m.

A CVX implementation is given below.

CVX implementation
cvx_begin
    variable z(n,1) complex;
    variable delta(1)
    minimize( delta )
    subject to
        for i = 1:N,
            abs(exp(a*cos(Angles(i))*(1:n))*z) <= delta;
        end
        real( exp(a*(1:n))*z) >= 1;
cvx_end

The result shows an optimal attenuation level in the stop band of delta^ast = , which, in decibels, is:

 20log_{10}(delta^ast) = -46.4218 mbox{ dB}.
alt text 

Antenna array design: the optimal magnitude diagram. The attenuation is excellent in the stop band, so that the stop-band magnitude is not distinguishable from zero in this plot.

Trade-off curve