(24)Jakes瑞利衰落信道模型的MATLAB仿真代码


前言

Jakes衰落信道模型是一种考虑了多普勒频移的瑞利衰落信道模型。本文介绍Jakes衰落信道模型,并给出其MATLAB仿真代码。


一、Jakes衰落信道模型

Jakes衰落信道模型是一种考虑了多普勒频移的瑞利衰落信道模型。Jakes衰落信道模型采用正弦波叠加的方法生成相关瑞利分布随机样本。Jakes瑞利衰落过程的正交分量由下式给出:

在这里插入图片描述
式中,
在这里插入图片描述

ωd 是最大多普勒角频率,φn、ϕn 和 θn 对于所有的 n 都是统计独立的,并且在 [–π, π) 范围内均匀分布。

下面给出以上述式(1)-(3)生成相关瑞利分布衰落样本的MATLAB代码。

二、MATLAB代码

Jakes瑞利衰落信道模型的MATLAB代码如下:

function h = Jakes_Rayleigh(fd, M, dt, N)
T = N*dt - dt;
t = 0:dt:T;
const = sqrt(2/M);                                       % 归一化功率系数
w = 2*pi*fd;
x = 0;
y = 0;
for n = 1:M
    alpha = (2*pi*n-pi+(2*pi*rand-pi)) / (4*M);      % 第n条入射波的入射角 
    ph1 = 2*pi*rand - pi;                            % 随机相位服从(-pi,pi)之间的均匀分布
    ph2 = 2*pi*rand - pi;
    x = x + const*cos(w*t*cos(alpha) + ph1);
    y = y + const*cos(w*t*sin(alpha) + ph2);
end

h = (x + 1j*y) / sqrt(2);

m文件Jakes_Rayleigh的输入参数包括最大多普勒频率(用fd表示),以赫兹为单位,可根据接收端移动速度来确定;正弦波的数量(用M表示);时间步长(用dt表示);以及所需的衰落序列长度(用N表示)。所有φn、ϕn和θn的值都是通过rand获得的,rand产生均匀分布的随机数。使用适当的M值(M不小于8)、N和dt,可以获得所需的多普勒扩展。

根据设定的移动速度即载波频率,可以得到不同的fd,运行上述程序可以得到Jakes衰落信道模型在不同移动速度下的衰落信号。以10km/h和100km/h的移动速度进行仿真,仿真代码如下:

代码如下(示例):

speed = [10, 100];            % 移动速度,单位km/h
M = 10;
rate = 9600;
N = 1e5;
v = speed * 1000 / 3600;      % 移动速度单位转换成m/s
c = 3e8;                      % 光速

fc = 9e8;                     % 载波频率,默认值900MHz
fd = v * fc / c;
dt = 1/(2*rate);

figure()
for n = 1:length(speed)
    r = Jakes_Rayleigh(fd(n), M, dt, N);           % 修改后给出的是一个复数
    
    subplot(length(speed),1,n)
    plot(20*log10(abs(r)))
    xlabel('sample')
    ylabel('接收信号的包络/dB')
    title(['移动通信中接收的衰落信号的包络(v=',num2str(speed(n)),'km/h)'])
    grid on
end

fr_approx = pdf_sim(abs(r));

仿真得到的衰落信号画图如下:

在这里插入图片描述
概率密度函数如下:
在这里插入图片描述


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值