1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/ZJWYlp5u
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
根据小区覆盖的大小,蜂窝大体可分成巨区、宏区、微区及微微区,这些蜂窝类型的一些参数包括蜂窝小区半径、终端速度、安装地点、运行环境、业务量密度和适应系统。小区半径决定了无线电可靠的通信范围,它与输出功率、业务类型、接收灵敏度、编码及调制等有关,终端速度为基站与移动台的相对速度,与移动特性有关,其大小决定了区间切换的次数,基站的安装高度与蜂窝半径有关.半径越大安装高度也越大。
4.部分源码
Max_People = 10;
Step_People = 1;
Min_People = 2;
pp = 1;
for nNumofUserPerSector = Min_People:Step_People:Max_People
nNumofUserPerSector
global testbler;
RelayUser_Scheduled = [];
testbler = [];
SS = [];
%定义整个系统所涉及到的变量
dSimulationTime = 2; % 仿真TTI数200
dKmCiteToCiteDistance = 0.5; % 基站间距离 km
dCellRadius = dKmCiteToCiteDistance/sqrt(3); % 小区半径
dKmMinDistance = 0.035; % 用户和基站间的最小距离 km
nNumofCell = 19; % 系统中的小区数19
nNumofSector = nNumofCell*3; % 系统中的扇区数
nTotalNumofUser = nNumofSector*nNumofUserPerSector; % 系统内总用户数
dwBsTransmitPower = 40; % 基站总发送功率 W (46dBm)
dwRNTransmitPower = 2; % 中继总发送功率 W (33dBm)
dwMsTransmitPower = 0.25; % 移动台发送功率 W
ddBBSNoisefigure = 5; % 基站热噪声指数 dB
ddBUENoisefigure = 7; % 移动台热噪声指数 dB
ddBRNNoisefigure = 6; % 中继热噪声指数 dB
ddBmThermalNoise = -174; % 热噪声指数 dBm/Hz
dHzSubcarrierBandWidth = 15000; % 子载波带宽 Hz
dMHzCarrierFrequency = 2000; % 载波频率 MHz
dUserVelocity = 0; % 用户移动速度 km/h
ddBShadowFadingStdBS2UE = 8; % 阴影衰落标准差BS2UE dB
ddBShadowFadingStdBS2RN = 3.4; % 阴影衰落标准差BS2RN dB (16j中为3.4dB,LTE-A中为6dB)
ddBShadowFadingStdRN2UE = 10; % 阴影衰落标准差RN2UE dB
dShadowFadowCorrelation = 0.5; % 阴影衰落相关系数
ddBBSTransmitAntennaGain = 14; % BS发送天线增益 dB
ddBRNCoverageAntennaGain = 5; % RN覆盖天线增益 dB
ddBRNDonorAntennaGain = 23; % RN施主天线增益 dB
ddBUEReceiveAntennaGain = 0; % UE接收天线增益 dB
ddBPenetrationLoss2UE = 20; % 到UE的穿透损耗 dB
ddBPenetrationLoss2RN = 0; % 到RN的穿透损耗 dB
dwPerSubcarrierWhiteNoise = 10^((ddBmThermalNoise-30)/10)*dHzSubcarrierBandWidth; % 每个子载波上的白噪声 W
dBER_Target = 10^(-1); % 目标误比特率
dSNR_gap = -log(5*dBER_Target)/1.5; % Tao
.......................................................................................
figure(4);
%计算平均用户吞吐量
MM = Min_People*nNumofSector:Step_People*nNumofSector:Max_People*nNumofSector;
plot(MM,Plot_AvrgThroughput2,'-bs',...
'LineWidth',1,...
'MarkerSize',7,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.0,0.9,0.0]);
title('用户吞吐量');
grid on;
xlabel('用户数量');
ylabel('用户吞吐量');
figure(5);
%计算功耗
plot(MM,Plot_AvrgPowerConsumption2,'-bs',...
'LineWidth',1,...
'MarkerSize',7,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.0,0.9,0.0]);
title('功耗');
grid on;
xlabel('用户数量');
ylabel('功耗');
figure(6);
%计算能效 = 用户吞吐量/功耗
plot(MM,Plot_AvrgThroughput2./Plot_AvrgPowerConsumption2,'-bs',...
'LineWidth',1,...
'MarkerSize',7,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.0,0.9,0.0]);
title('能效 = 用户吞吐量/功耗');
grid on;
xlabel('用户数量');
ylabel('能效');
A402