suboptimal_alloc.m
来自「可以运行的m4k20功率分配图」· M 代码 · 共 27 行
M
27 行
%输入参数:qq,K,与最佳算法中的一样
%输出参数:每个子信道上应分配的功率,与最佳时的一样,都是一个有K个数的行向量
function y=suboptimal_alloc(qq,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
sum1=sum1+1/qq(k);
sum2=sum2+1/qq(k)*log(1/qq(k));
end
for k=1:K
if log(qq(k))*sum1+sum2<-(b*Pmax/2)
flag=1;
p(k)=0;
sum1=sum1-1/qq(k);
sum2=sum2-1/qq(k)*log(1/qq(k));
else flag=0;
end
if flag==0;
p(k)=(Pmax+(2/b)*sum2)/(sum1*qq(k))-(2/b)*(1/qq(k))*log(1/qq(k));
end
end
sum(p);
y=Pmax/sum(p).*p;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?