Hello;
I’m new in CVX.
I wrote a code of a convex problem and I get answer.
but my objected function respect to answer is way difference from article.
this is my code:
M = 5;
UE = 2;
d = randi([1 50],1,UE);
beta = 3.8;
R_min = [1, 1.5, 2, 2.5, 3];
gamga_min=2.^R_min-1;
N0 = 0.01;
power = zeros(length(R_min),1);
h = (sqrt(1/2)*complex(randn(M,UE),randn(M,UE))).*sqrt(d.^(-beta));
[hs, hi] = sort(vecnorm(h));
h = h(:,hi);
for i=1:length(R_min)
cvx_clear
cvx_begin
variable W(M,M,UE) hermitian semidefinite
trace_W = 0;
for ii=1:UE
trace_W = trace_W + trace(W(:,:,ii));
end
minimize(trace_W)
subject to
for k=1:UE
s = 0;
for l=k:UE
H = h(:,l)*h(:,l)';
for m=k+1:UE
s = s + trace(H*W(:,:,m));
end
real(trace(H*W(:,:,k)))>=gamga_min(i)*(real(s)+N0); %#ok<VUNUS>
end
end
cvx_end
power(i) = trace_W;
end
disp(power)
plot(R_min, power)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
but power output is in range of 10e4 for different R_min and in article the answer is in range of 10
this is optimization problem in artilce:
can you please help me.