一、场景
1、当接收信号中有视距传播的直达信号时,视距传播成为主要接收分量,同时还有不同角度随机到达的多径信号叠加在这个主信号分量上,这时的接收信号包络服从莱斯分布。
2、更一般的场景:莱斯分布适用于一条路径明显强于其他多径的情况,但并不意味着这条路径一定是直达路径,在非直射系统中,如果某一散射路径的信号功率特别强,信号的衰落也会服从莱斯分布。是否存在一条路径明显强于其他多径是是莱斯分布和瑞利分布的显著依据。
二、代码
1、莱斯信道
存在强路径的多径传播,该强路径可以是直达路径或者是多径中的某一径,一下代码可以同时满足这两种情况。
function r = rice(k)
%r:莱斯信号包络
%x:叠加后信号实部
%y:叠加后信号虚部
%k; 信号幅度与噪声标准差之比(随机多径的特性)
%利用多径传播生成随机噪声,
n=6; %多径数(直达路径)、多径数-1(多径中某一径强)
alpha =rand(1,n); %产生n条路径的幅度向量
phi = 2*pi*rand(1,n); %产生n条路径的相位向量
n = alpha.*(exp(j.*phi))*ones(1,n)';
%直达路径(或某一径)信号
A = sqrt(2*k);
theta = 2*pi*rand(1);
s_t = A*exp(j*theta);
%接收信号
s_r = s_t + n;
x = real(s_r);
y = imag(s_r);
r = sqrt(x^2+y^2);
end
2、0阶修正贝塞尔函数
这主要用于将仿真情况和理论情况进行比较。
function [ y ] = Bessel0( x )
% 此函数用于计算0阶修正贝塞尔函数值
% 支持向量化输入输出
% 作用相当于MATLAB自带的库函数besseli(0,x)
theta =0.001:0.001:2*pi;
length(theta);
t= repmat(x, length(theta), 1);
t= reshape(t,1,[]);
theta= repmat(theta, 1, length(x));
t= t .* cos(theta);
t=reshape(t, [], length(x));
y=0.001/(2*pi) *sum(exp(t), 1);
end
3、主函数
K = 4.5; %主路径
N = 100000; %包络的个数
r = zeros(1,N); %包络初始化
for i=1:N
r(i)=rice(K);
end
index = [0:0.01:max(r)];
p = histc(r,index); %p为r在index规定的区间里的统计个数
P = zeros(1,length(p)); %P
for i=1:length(p)
for j = 1:i
P(i)=P(i)+p(j);
end
end
P = P/N; %除以总数N得到概率
poly_c = polyfit(index,P,9); %用9阶多项式拟合P(index),得到多项式系数行列式
poly_c;
pd = polyder(poly_c); %多项式微分,即对P(index)微分,相当于求f(x)概率密度
pd;
p_practice = polyval(pd,index);%计算多项式pd在index的取值
sigma = 1; %噪声的标准差sigma,这在function rice(k)中定义噪声(弱径)标准差为1.
p_theory = index./sigma^2.*exp(-(index.^2+2*K)/(2*sigma^2)).*Bessel0(sqrt(2*K).*index); %理论值
%画图
plot(index,p_practice,'-b',index,p_theory,'-r')
legend('实际曲线','理论曲线')
xlabel('r')
ylabel('f(r)')
grid on;
三、仿真结果
(1)k=0,没有强路径,都是弱多径信号,衰落很大,只有噪声,瑞利分布。
(2)k=2,存在强路径,衰落一般,信号与噪声共存,莱斯分布。
(3)k=8,强路径,衰落缓慢,以信号为主,噪声较少,高斯分布。
四、结论
无线通信系统中,存在强路径的多径传播场景中,接收信号的包络一维分布服从莱斯分布。不存在强路径时,包络服从瑞利分布。路径非常强时,服从高斯分布。因为无直达通路无强路径的随机多径传播可看作是包络和相位随机缓慢变化的平稳高斯窄带随机过程(噪声),因此通常假设接收端接收到正弦波加窄带高斯噪声,从理论上证明接收信号包络一维分布服从莱斯分布。