clear;
clc;
tic;
%% system parameters
M = 512;
Gamma0 = 0.2;
% number of BS antennas M
L = 19;
K = 10;
S = 15;
lambda=0.1;
mu1=0.3;
eu=floor(K*mu1);
mu2=0.1;
J=floor(L*K*mu2);
%Test_num = 300;
Test_num = 1;
Pt = 1;
P_n = 1;
R_Cell = 1000;
r_Min = 100;
alpha = 3.8;
sigma_shadow = 8;
rho_ul = 10^(15/10); % 15 dB
rho_dl = 10^(15/10); % 15 dB
rho_pilot = 10^(15/10);
Bw = 1;
mu0=0.05;
T_1=1-S/K*mu0;
S_soft=S+eu*7;
T_soft=1-S_soft/K*mu0;
S_WIM=S+J;
T_WIM=1-S_WIM/K*mu0;
UL_SINR_CS_MF = zeros(K, L, Test_num);
UL_SINR_CSsoft_MF = zeros(K, L, Test_num);
UL_SINR_WGCPA_MF = zeros(K, L, Test_num);
UL_SINR_WGCPAsoft_MF = zeros(K, L, Test_num);
UL_SINR_WGCPAIM_MF = zeros(K, L, Test_num);
UL_SINR_GCPA_MF = zeros(K, L, Test_num);
% DL_SINR_CS_MF = zeros(K, L, Test_num);
% DL_SINR_CSsoft_MF = zeros(K, L, Test_num);
% DL_SINR_WGCPA_MF = zeros(K, L, Test_num);
% DL_SINR_WGCPAsoft_MF = zeros(K, L, Test_num);
% DL_SINR_WGCPAIM_MF = zeros(K, L, Test_num);
% DL_SINR_GCPA_MF = zeros(K, L, Test_num);
% UL_R_CS_MF = zeros(K, L, Test_num);
% UL_R_WGCPA_MF = zeros(K, L, Test_num);
% UL_R_WGCPAIM_MF = zeros(K, L, Test_num);
% UL_R_GCPA_MF = zeros(K, L, Test_num);
%
%
% DL_R_CS_MF = zeros(K, L, Test_num);
% DL_R_WGCPA_MF = zeros(K, L, Test_num);
% DL_R_WGCPAIM_MF = zeros(K, L, Test_num);
% DL_R_GCPA_MF = zeros(K, L, Test_num);
%% Simulation
for i_test = 1:Test_num
display(i_test);
%% Generate Channel vector
[H Beta] = F_H_Generate(M, L, K, R_Cell, r_Min, sigma_shadow, alpha);
%% Random Pilot Assignment: k-th pilot for k-th user
P = zeros(L, K);
for i = 1:L % random pilot assignment
temp = randperm(S);
P(i,:) = temp(1:K);
end
UL_SINR_CS_MF(:,:,i_test) = F_ULSINR_CAL(L, K, M, H, P, rho_pilot, rho_ul, 2);
% DL_SINR_CS_MF(:,:,i_test) = F_DLSINR_CAL(L, K, M, H, P, rho_pilot, rho_dl, 2);
%% Random Pilot Assignment For Certen_SOFT
P = F_CS_SOFT(L, K, S, Beta,eu);
% for i = 1:L % random pilot assignment
% temp = randperm(S);
% P(i,:) = temp(1:K);
% end
UL_SINR_CSsoft_MF(:,:,i_test) = F_ULSINR_CAL(L, K, M, H, P, rho_pilot, rho_ul, 2);
% DL_SINR_CSsoft_MF(:,:,i_test) = F_DLSINR_CAL(L, K, M, H, P, rho_pilot, rho_dl, 2);
%% Weighted Graph Coloring Based Pilot Assignment WGC-PA
P = F_WGCPA_Pilot(L, K, S, Beta);
UL_SINR_WGCPA_MF(:,:,i_test) = F_ULSINR_CAL(L, K, M, H, P, rho_pilot, rho_ul, 2);
% DL_SINR_WGCPA_MF(:,:,i_test) = F_DLSINR_CAL(L, K, M, H, P, rho_pilot, rho_dl, 2);
%% Weighted Graph Coloring Based Pilot Assignment For Certen_SOFT
P = F_WGCPA_soft_Pilot(L, K, S, Beta,eu);
UL_SINR_WGCPAsoft_MF(:,:,i_test) = F_ULSINR_CAL(L, K, M, H, P, rho_pilot, rho_ul, 2);
% DL_SINR_WGCPAsoft_MF(:,:,i_test) = F_DLSINR_CAL(L, K, M, H, P, rho_pilot, rho_dl, 2);
%% IM_Weighted Graph Coloring Based Pilot Assignment WGC-PA
P2 = F_WGCPA_Pilot_IM(L, K, S, Beta, J);
UL_SINR_WGCPAIM_MF(:,:,i_test) = F_ULSINR_CAL(L, K, M, H, P2, rho_pilot, rho_ul, 2);
%% IM_Weighted Graph Coloring Based Pilot Assignment WGC-PA
% P = F_WGCPA_Pilot_IM(L, K, S, Beta);
%
% UL_SINR_WGCPAIM_MF(:,:,i_test) = F_ULSINR_CAL(L, K, M, H, P, rho_pilot, rho_ul, 1);
%
% DL_SINR_WGCPAIM_MF(:,:,i_test) = F_DLSINR_CAL(L, K, M, H, P, rho_pilot, rho_dl, 1);
%% Graph Coloring Based Pilot Assignment WGC-PA
P = F_GCPA_Pilot_g(L, K, S, Beta, Gamma0);
UL_SINR_GCPA_MF(:,:,i_test) = F_ULSINR_CAL(L, K, M, H, P, rho_pilot, rho_ul, 2);
% DL_SINR_GCPA_MF(:,:,i_test) = F_DLSINR_CAL(L, K, M, H, P, rho_pilot, rho_dl, 2);
end
for i_test = 1:Test_num
for l=1:L
for k=1:K
% UL_SINR_CS_MF(k,l,i_test)=10^(UL_SINR_CS_MF(k,l,i_test)/10);
UL_SINR_CS_MF(k,l,i_test)=log2(1+UL_SINR_CS_MF(k,l,i_test));
%UL_SINR_CSsoft_MF(k,l,i_test)=Bw*T_ul/T_0*log2(1+UL_SINR_CSsoft_MF(k,l,i_test));
% UL_SINR_CSsoft_MF(k,l,i_test)=10^(UL_SINR_CSsoft_MF(k,l,i_test)/10);
UL_SINR_CSsoft_MF(k,l,i_test)=log2(1+UL_SINR_CSsoft_MF(k,l,i_test));
% DL_SINR_CS_MF(k,l,i_test)=10^(DL_SINR_CS_MF(k,l,i_test)/10);
% DL_SINR_CS_MF(k,l,i_test)=Bw*T_ul/T_0*log2(1+DL_SINR_CS_MF(k,l,i_test));
%DL_SINR_CSsoft_MF(k,l,i_test)=Bw*T_ul/T_0*log2(1+DL_SINR_CSsoft_MF(k,l,i_test));
% DL_SINR_CSsoft_MF(k,l,i_test)=10^(DL_SINR_CSsoft_MF(k,l,i_test)/10);
% DL_SINR_CSsoft_MF(k,l,i_test)=Bw*T_soft*log2(1+DL_SINR_CSsoft_MF(k,l,i_test));
% UL_SINR_WGCPA_MF(k,l,i_test)=10^(UL_SINR_WGCPA_MF(k,l,i_test)/10);
UL_SINR_WGCPA_MF(k,l,i_test)=log2(1+UL_SINR_WGCPA_MF(k,l,i_test));
UL_SINR_WGCPAIM_MF(k,l,i_test)=log2(1+UL_SINR_WGCPAIM_MF(k,l,i_test));
% UL_SINR_WGCPAsoft_MF(k,l,i_test)=Bw*T_ul/T_0*log2(1+UL_SINR_WGCPAsoft_MF(k,l,i_test));
% UL_SINR_WGCPAsoft_MF(k,l,i_test)=10^(UL_SINR_WGCPAsoft_MF(k,l,i_test)/10);
UL_SINR_WGCPAsoft_MF(k,l,i_test)=log2(1+UL_SINR_WGCPAsoft_MF(k,l,i_test));
% DL_SINR_WGCPA_MF(k,l,i_test)=10^(DL_SINR_WGCPA_MF(k,l,i_test)/10);
% DL_SINR_WGCPA_MF(k,l,i_test)=Bw*T_ul/T_0*log2(1+ DL_SINR_WGCPA_MF(k,l,i_test));
% DL_SINR_WGCPAsoft_MF(k,l,i_test)=Bw*T_ul/T_0*log2(1+ DL_SINR_WGCPAsoft_MF(k,l,i_test));
% DL_SINR_WGCPAsoft_MF(k,l,i_test)=10^(DL_SINR_WGCPAsoft_MF(k,l,i_test)/10);
% DL_SINR_WGCPAsoft_MF(k,l,i_test)=Bw*T_soft*log2(1+ DL_SINR_WGCPAsoft_MF(k,l,i_test));
% UL_SINR_GCPA_MF(k,l,i_test)=10^(UL_SINR_GCPA_MF(k,l,i_test)/10);
UL_SINR_GCPA_MF(k,l,i_test)=log2(1+UL_SINR_GCPA_MF(k,l,i_test));
% DL_SINR_GCPA_MF(k,l,i_test)=10^(DL_SINR_GCPA_MF(k,l,i_test)/10);
% DL_SINR_GCPA_MF(k,l,i_test)=Bw*T_ul/T_0*log2(1+DL_SINR_GCPA_MF(k,l,i_test));
end
end
end
Tau = 20;
%% UL SINR
figure;
y = reshape(UL_SINR_CS_MF,1,L*K*Test_num);
ymin=min(y);
ymax=max(y);
x=linspace(ymin,ymax,Tau);
yy=hist(y,x);
yy=yy/length(y)/(x(2)-x(1));
s=0;
for i=2:length(x)
s=[s,trapz(x([1:i]),yy([1:i]))];
end
plot(x,s,'bo-');
hold on;
y = reshape(UL_SINR_CSsoft_MF,1,L*K*Test_num);
ymin=min(y);
ymax=max(y);
x=linspace(ymin,ymax,Tau);
yy=hist(y,x);
yy=yy/length(y)/(x(2)-x(1));
s=0;
for i=2:length(x)
s=[s,trapz(x([1:i]),yy([1:i]))];
end
plot(x,s,'k>-');
hold on;
y = reshape(UL_SINR_GCPA_MF,1,L*K*Test_num);
ymin=min(y);
ymax=max(y);
x=linspace(ymin,ymax,Tau);
yy=hist(y,x);
yy=yy/length(y)/(x(2)-x(1));
s=0;
for i=2:length(x)
s=[s,trapz(x([1:i]),yy([1:i]))];
end
plot(x,s,'gd-');
hold on;
y = reshape(UL_SINR_WGCPA_MF,1,L*K*Test_num);
ymin=min(y);
ymax=max(y);
x=linspace(ymin,ymax,Tau);
yy=hist(y,x);
yy=yy/length(y)/(x(2)-x(1));
s=0;
for i=2:length(x)
s=[s,trapz(x([1:i]),yy([1:i]))];
end
plot(x,s,'r^-');
hold on;
y = reshape(UL_SINR_WGCPAIM_MF,1,L*K*Test_num);
ymin=min(y);
ymax=max(y);
x=linspace(ymin,ymax,Tau);
yy=hist(y,x);
yy=yy/length(y)/(x(2)-x(1));
s=0;
for i=2:length(x)
s=[s,trapz(x([1:i]),yy([1:i]))];
end
plot(x,s,'mx-');
hold on;
y = reshape(UL_SINR_WGCPAsoft_MF,1,L*K*Test_num);
ymin=min(y);
ymax=max(y);
x=linspace(ymin,ymax,Tau);
yy=hist(y,x);
yy=yy/length(y)/(x(2)-x(1));
s=0;
for i=2:length(x)
s=[s,trapz(x([1:i]),
没有合适的资源?快使用搜索试试~ 我知道了~
5G大规模MIMO中相邻小区的重复使用导致的导频污染问题以及去导频污染仿真-源码
共28个文件
m:17个
fig:11个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 183 浏览量
2021-10-01
22:45:38
上传
评论
收藏 631KB ZIP 举报
温馨提示
5G大规模MIMO中相邻小区的重复使用导致的导频污染问题以及去导频污染仿真_源码
资源推荐
资源详情
资源评论
收起资源包目录
5G大规模MIMO中相邻小区的重复使用导致的导频污染问题以及去导频污染仿真_源码.zip (28个子文件)
5G大规模MIMO中相邻小区的重复使用导致的导频污染问题以及去导频污染仿真_源码
fig_CDF_R.fig 12KB
F_ULSINR_CAL.m 2KB
fig_R_M_NEM.fig 11KB
fig_C_M_NEW.fig 11KB
F_WGCPA_soft_Pilot.m 4KB
C_versus_M.m 6KB
CDF_versus_R.m 9KB
eng_fig_C_M.fig 24KB
C_versus_RHO.m 7KB
F_CS_SOFT.m 1KB
eng_fig_CDF_SINR.fig 25KB
F_WGCPA_Pilot_IM.m 4KB
F_H_Generate.m 4KB
cell_topology.m 3KB
CDF_versus_C.m 10KB
F_WGCPA_Pilot.m 3KB
eng_fig_CDF_C.fig 26KB
fig1.fig 468KB
qunliu.m 1022B
eng_fig_C_rho.fig 24KB
R_versus_RHO.m 7KB
fig_C_rho.fig 11KB
R_versus_M.m 7KB
CDF_versus_SINR.m 7KB
F_DLSINR_CAL.m 2KB
cirliu.m 410B
fig_CDF_SINR.fig 12KB
fig_R_rho.fig 11KB
共 28 条
- 1
资源评论
- dollarr2023-05-10资源内容总结的很到位,内容详实,很受用,学到了~
mYlEaVeiSmVp
- 粉丝: 1917
- 资源: 19万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功