1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/Y56XlJZu
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
在实际的系统中,collocated MIMO (集中式 MIMO)技术的优点是有限的。造成这种限制的原因有两方面:
首先,空间相关性会导致性能下降。在一个 collocated MIMO 系统中,每个节点的天线必须放置得很近。在 collocated antennas 处的无线电信号经历了类似的散射环境,而且信道可能是相关的,特别是当发射机和接收机之间的视线信道占主导地位时。信道矩阵可能是 ill conditioned 的,导致显著的容量下降。
其次,由于终端尺寸的限制,节点不能配备很多天线。由于分集增益与天线数目成正比,天线数目少的 collocated MIMO 系统无法达到预期的性能。
为了缓解 collocated MIMO 系统的上述缺点,提出了一种新的分布式 MIMO (distributed MIMO)技术。分布式 MIMO 与 collocated MIMO 的主要区别在于,无线网络前端的多个天线分布在距离较远的无线节点之间。
在分布式MIMO系统中,每个节点只能配备一个天线。位于不同位置的多个节点将相同的信息发送给接收器。
4.部分源码
......................................................................
Rc = 1000; % 小区半径1km
%L = 20; % RAU个数
M = 1; % RAU 天线数
K = 4; %用户个数
Ns = [2,4]; %用户天线数
% Mt = M*L; %发送总的天线数
% Nt = K * N; %接收总的天线数
c=1;
sigma_z2_dBm = -104;
sigma_z2 = 10^(sigma_z2_dBm/10)*0.001;
delta_sh_dB = 8;
detal_sh = 10^(delta_sh_dB/10);
alpha = 4;
% ---------------能量消耗参数--------------
tao = 0.38;
Pd_dBm = 30;
Pd = 10^(Pd_dBm/10)*0.001;
Ps_dBm = 40;
Ps = 10^(Ps_dBm/10)*0.001;
Po_dB = 0.1484;
Po = 10^(Po_dB/10);
iterNum = 1000;
Ptm = 46;
Pt = 10^(Ptm/10)*0.001/K;
Ls = [1:2:10,15:10:200];
for n = 1:length(Ns)
n
N = Ns(n);
for p = 1 :length(Ls)
L = Ls(p);
%P_Ideal = Pt/tao;
P_D_real = K*Pt/tao + M*L*Pd + Ps + Po;
P_C_real = K*Pt/tao + M*L*Pd + Ps;
for iter = 1:iterNum
[x_RAU, y_RAU, x_User, y_User] = SingleCell(L,K,Rc);
% ----------------------D_MIMO ------------------------------------
H = DAS_Channel(L, K, N, M, x_RAU, y_RAU, x_User, y_User, detal_sh, c, alpha);
%--计算理论值
for k = 1:K
h = H((k-1)*N+1:k*N,:);
I_D_ALL(k) = real(log2(det(eye(N) + (Pt * h * h')/(M*L*sigma_z2))));
end
I_D(n,p,iter) = sum(I_D_ALL);
%--计算近似值
lambda = log(10)/10;
tmp1 = 0;
tmp2 = 0;
for i = 0:M-1
tmp1 = tmp1 + log2(gamma(M - i + 1/N));
tmp2 = tmp2 + log2(gamma(M - i));
end
C_D(n,p,iter) = N*(log2(c*Pt/(Rc^alpha*sigma_z2)) + log2(exp(-(4-sqrt(3))*alpha/4)) + ...
+ log2(L) + tmp1 + ...
+ (alpha + lambda^2*detal_sh^2)/(2*log(2)) - tmp2);
C_D(n,p,iter)=K*C_D(n,p,iter);
end
I_D_avg = mean(I_D,3);
C_D_avg = mean(C_D,3);
EE_C_D_Real(n,p) = C_D_avg(n,p)/P_D_real;
EE_I_D_Real(n,p) = I_D_avg(n,p)/P_D_real;
end
end
A263