Diagram Shaping via SOCP
Minimum thermal noise power for given sidelobe levelWe first seek to minimize the thermal noise power subject to a sidelobe level constraint. This problem can be cast as
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 The coarse discretization level of
Minimum sidelobe level attenuationOur goal is now to minimize the sidelobe attenuation level, This can be cast as the SOCP
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
Trade-off curve |