📄 energytableinit.m
字号:
function energytable = EnergyTableInit(SNR,M);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 根据SNR值,针对每个信道产生一个能量增加的表
% 输入:
% subcar_gains 子载波增益
% M 最大星座大小
% Gap 系统Gap
% Noise 噪声功率
% 输出:
% energytable 能量表
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 根据子载波增益,计算1,2,4,6,8bit给每个子载波传输所需要的能量
energytable = abs((1./SNR)'*(2.^([1:M+1]-1)));
energytable = abs((1./SNR)'*(2.^([1:M+1])))-energytable;
% 增加能量,从M增加到一个未分配的更高的值
energytable(:,M+1) = Inf*ones(size(energytable(:,M+1)));
for i =3:2:M
energytable(:,i) = (energytable(:,i)+energytable(:,i+1))/2;
energytable(:,i+1) = energytable(:,i);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -