📄 suboptimal_alloc.asv
字号:
%输入参数:aa,K,与最佳算法中的一样
%输出参数:每个子信道上应分配的功率,与
function y=suboptimal_alloc(aa,K)
M=4;
a=2*(sqrt(M)-1)/(sqrt(M)*log2(sqrt(M)));
b=3/(M-1);
Pmax=K;
sum2=0;
sum1=0;
for k=1:K
%if aa(k)>=exp(-b*lamda0/2)
sum1=sum1+1/aa(k);
sum2=sum2+1/aa(k)*log(1/aa(k));
%p(k)=lamda0/aa(k)-(2/b)*(1/aa(k))*log(1/aa(k))
%else p(k)=0;
%end
end
for k=1:K
if log(aa(k))*sum1+sum2<-(b*Pmax/2)
flag=1;
p(k)=0;
else flag=0;
end
if flag==0;
p(k)=(Pmax+(2/b)*sum2)/(sum1*aa(k))-(2/b)*(1/aa(k))*log(1/aa(k));
end
end
%lamda0=(Pmax+(2/b)*sum2)/sum1;
sum(p);
y=Pmax/sum(p).*p;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -