📄 energytableinit.m
字号:
function energytable = EnergyTableInit(SNR,M);%根据SNR的值,针对每个信道产生一个能量增加的表% Inputs:% subcar_gains : Subcarrier Gains% M : max Constellation Size% Gap : Gap of the system% Noise : Noise Power% Outputs:% energytable : Energytable %% Based on the Subcarrier Gains, we calculate the energy% increment required by each subcarrier for transmitting% 1,2 ,4 ,6,8 bits.根据子载波增益,我们计算1,2,3,6,8bit给每个子载波传输所需要的能量% Energy = 2^(i-1)/subcar_gains;% ------------------------------------------------------%subcar_gains = (subcar_gains.^2)/(Gap*Noise);energytable = abs((1./SNR)'*(2.^([1:M+1]-1)));% Increase the energy value for constellation size of more than M to % a very high value so that it is not assigned.增加能量,从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%energytable = [ones(1,size(energytable,1))' energytable];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -