1.软件版本
MATLAB2021a
2.本算法理论知识
由于大气中存在一定含量的极化氧分子和水汽(如图3.1所示),因此毫米波在传输过程中容易被大气吸收,从而导致信号衰减,影响通信质量[13,14]。根据相关研究发现,在一些特殊的频段,如60GHz、119GHz、183GHz,这种影响更为严重,在实际中应防止使用这些频段。而在其余一些频段,则通信性能较好,如35GHz、140GHz、220GHz等。图3.1给出了毫米波在不同频段大气衰减趋势图。
从图1可知,H2O在22GHz,183GHz和340GHz等频段对毫米波影响较大,O2在60GHz、119GHz等频段对毫米波影响较大。因此,在实际应用过程中,应避免使用这些频段。根据上述介绍的毫米波传输特性,其适用于适用于各种人员密集且范围较小的区域中,通过5G网络强大的数据传输能力,极强的稳定性以及大范围的覆盖率给大数据时代带来了很多的好处,在部分建设好的地区可以时用户体验到10mbit/s以上的传输速率,通过网络给社会发展与人们提供保障。
S-V信道模型,最早是由Salen和Valenzula两人与1972年提出的。和传统的无线信道模型相比,S-V信道模型中,多径以簇形式达到,其通过两个完全对立的泊松过程(双指数模型)来描述簇的达到和簇内多径的达到。S-V的双指数模型可以充分灵活的反应出毫米波信道特征,其中,簇内的每一个径都服从瑞利分布。因此,S-V信道模型的冲击响应可以表示为:
在公式2中,表示第n个簇内中第l个多径的幅度;Tl表示第l个簇的达到时间;表示第k个簇内中第l个多径的延迟。S-V模型的信道冲击响应双指数分布图如下图所示:
![](/i/l/?n=22&i=blog/2997677/202211/2997677-20221111232325427-1473587923.png)
其中簇的达到时间Tl和多径的达到时间满足泊松过程,即:
公式4表示的是多径簇的统计特性,公式3表示的是簇内多径的统计特性,参数为多径簇达到率,表示的是多径分量到达率。
此外,在S-V模型中,每一个多径的能量和相位满足如下的双指数分布,其中多径相位服从分布如下所示:
多径的能量,第l个簇中的第k个多径的平均能量则可以通过如下模型表示:
其中,参数表示的是第一个多径信号的能量;参数表示的是簇的功率指数衰减因子;参数表示的是多径的衰减系数。
3.部分源码
function [h,t,t0,np]=SV_channel(Lam,lam,Gam,gam,num_ch,b002,sdi,nlos)
if nargin<8, nlos=0; end % LOS environment
if nargin<7, sdi=0; end % 0dB
if nargin<6, b002=1; end % power of first ray of first cluster
h_len=1000; %There must be a better estimate of # of paths than???
for k=1:num_ch % loop over number of channels
tmp_h = zeros(h_len,1); tmp_t = zeros(h_len,1);
if nlos, Tc = exprnd(1/Lam); % First cluster random arrival ???
else Tc = 0; % First cluster arrival occurs at time 0
end
t0(k) = Tc;
path_ix = 0;
while (Tc<10*Gam) % cluster loop
% Determine Ray arrivals for each cluster
Tr=0; %1st ray arrival defined to be time 0 relative to cluster
while (Tr<10*gam) % ray loop
brm2 = b002*exp(-Tc/Gam)*exp(-Tr/gam); % ray power (2.20)
r = sqrt(randn^2+randn^2)*sqrt(brm2/2);
% rayleigh distributed mean power pow_bkl
h_val=exp(j*2*pi*rand)*r; % uniform phase
path_ix = path_ix+1; % row index of this ray
tmp_h(path_ix) = h_val;
tmp_t(path_ix) = Tc+Tr; % time of arrival of this ray
Tr = Tr + exprnd(1/Lam); % (2.16) ???
end
Tc = Tc + exprnd(1/lam); % (2.17) ???
end
np(k)=path_ix; % number of rays (or paths) for this realization
[sort_tmp_t,sort_ix] = sort(tmp_t(1:np(k))); %in ascending order
t(1:np(k),k) = sort_tmp_t;
h(1:np(k),k) = tmp_h(sort_ix(1:np(k)));
% now impose a log-normal shadowing on this realization
fac = 10^(sdi*randn/20)/sqrt(h(1:np(k),k)'*h(1:np(k),k));
h(1:np(k),k) = h(1:np(k),k)*fac; % (2.21)
end
4.仿真分析
A01-166
标签:tmp,ix,多径,信道,毫米波,np,5G,Tc From: https://www.cnblogs.com/matlabfpga/p/16882420.html