1.软件版本
MATLAB2021a
2.本算法理论知识
注水算法是根据某种准则,并根据信道状况对发送功率进行自适应分配,通常是信道状况好的时刻,多分配功率,信道差的时候,少分配功率,从而最大化传输速率。实现功率的注水分配,发送端必须知道CSI。
当接收端完全知道信道而发送端不知道信号时,发送天线阵列中的功率平均分配是合理的。当发送端知道信道,可以增加信道容量。
考虑一个
维的零均值循环对称复高斯信号向量,r为发送信道的秩。向量在传送之前被乘以矩阵
。在接收端,接受到的信号向量y被乘以。这个系统的有效输入输出关系式由下式给出:
3.核心代码
登录后复制
clc;clear;close all;warning off;addpath 'func\'Simulation_time = 100;Max_people = 15;
Step_people = 3;Min_people = 3;Drop_ratio = 0;Outage_ratio = 0;p = 0;
for i = Min_people:Step_people:Max_people p = p + 1; ALL_throughput = 0;
ALL_Power_comp = 0; %利用蒙特卡罗的思想,对一个情况进行多次计算,结果用平均值表示
for k = 1:Simulation_time k [T_user,SNIR] = func_COMP_VIOP_traffic2(i);
%进行调度 [SU,T_C_CUBP_Scheduler,dr,or] = func_C_CUBP_Scheduler(T_user,SNIR,i);
%VoIP packet drop ratio Drop_ratio = dr; %VoIP call outage ratio
Outage_ratio = or; end Drop_ratio2(p) = Drop_ratio/Simulation_time;
Outage_ratio2(p) = Outage_ratio/Simulation_time;end%==========================
================================================figure;MM = Min_people:Step_people:Max_people;
plot(MM,Drop_ratio2,'m--^','LineWidth',2);title('VoIP packet drop ratio');grid on;xlabel('用户数量');
ylabel('drop ratio');axis([2,16,0,0.16]);figure;MM = Min_people:Step_people:Max_people;plot(MM,Outage_ratio2,
'm--^','LineWidth',2);title('VoIP call outage ratio');grid on;xlabel('用户数量');ylabel('outage ratio');
axis([2,16,0,0.7]);save CCUBP.mat MM Drop_ratio2 Outage_ratio21.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.
18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53.54.
4.操作步骤与仿真结论
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删