📄 adaptive_power1.m
字号:
function [Cn,P]=adaptive_power(H,Ber0,N,Noise,R)
% 自适应调制和功率优化分配
% 基于功率梯度最小的QAM 算法
% 输入:
% Noise:噪声功率
% N:子载波的个数
% H:通过信道估计得到信道参数向量
% Ber0: 为系统需要的误码率
%R:固定比特速率
% 输出
% Cn:分配给各子载波的比特数 Cn={0,2,4,6}
% P:分配给各子载波的功率
% 由QAM调制的误比特率公式得:
% 信噪比 SNR=In(5*Ber0)*(2^Cn-1)/(-1.6)
% 信噪比因子para
H = abs(H);
para=log(5*Ber0)/(-1.6);
%初始化比特Cn,和功率P
Cn=zeros(1,N);
P=zeros(1,N);
% delta_P用于存储功率增量
delta_P=zeros(1,N);
%步长
m=2;
for yy=1:R/m
for i=1:N
if Cn(i)>6
delta_P(i)=inf;
continue;
end
y=H(i)^2;
delta_P(i)=para*(2^(Cn(i)+m)-2^Cn(i))*Noise/y;
end
dex=find(delta_P==min(delta_P));
Cn(dex(1))=Cn(dex(1))+m;
P(dex(1))=P(dex(1))+delta_P(dex(1));
end
P(find(P==0))=1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -