(13)MATLAB莱斯(Rician)衰落信道仿真3

文章目录


前言

本文使用复高斯随机过程对莱斯衰落信道进行建模,给出MATLAB仿真代码,并和瑞利分布的PDF理论值进行了对比。


一、复高斯随机过程的莱斯衰落信道模型

在《(11)MATLAB莱斯(Rician)衰落信道仿真2》中,给出以下莱斯衰落信道模型:

该模型可以看作一个复高斯随机过程,该过程的实部和虚部都如从高斯分布,高斯的均值为

标准差为

下面使用该复高斯随机过程对莱斯衰落信道进行MATLAB建模仿真。

二、仿真代码

代码如下:

c 复制代码
clc
close all
clear all

%% 莱斯衰落信道模型
Kdb = -50;                                        % 莱斯因子K的dB值
K = 10^(Kdb/10);                                  % 莱斯因子K转换成线性值
mu = sqrt(K/(2*(K+1)));                           % 均值
sigma = sqrt(1/(2*(K+1)));                        % 标准差

N = 1e5;                                          % 样本数
ric = mu + sigma.*randn(1,N) + 1j*(mu + sigma.*randn(1,N));

% 利用直方图计算莱斯随机变量的概率密度函数估计值
bins_number = 50;
[elements_number,x] = hist(abs(ric),bins_number);
px = elements_number/N/(mean(diff(x)));

%% 瑞利分布概率密度函数(pdf)的理论值
s = sqrt(0.5);
r = 0: 0.1 : 4;                                   % rayleigh随机变量
pdf = (r/s^2).*exp(-r.^2/(2*s^2));                % 理论pdf

% 画图对比
figure()
plot(x,px,'ro','LineWidth', 1.5)
hold on
grid on
plot(r,pdf,'b-' ,'LineWidth', 1.5);
grid on;
title('莱斯分布随机变量的概率密度');
legend('莱斯随机变量的PDF估计值(K=-50dB)' ,'瑞利分布PDF的理论值' );
xlabel('随机变量x');
ylabel('概率密度px');

三、仿真结果画图

四、几点补充说明

(1)关于randn函数

MATLAB中randn函数用于正态分布伪随机数。正态分布,也即高斯分布。若高斯分布的均值为1,标准差为2,要生成该高斯分布的随机变量的100个样本,可以用这行代码实现:r = 1 + 2.*randn(100,1)。

(2)关于莱斯因子的形式

由于莱斯因子K是直射路径与反射路径信号的相对功率,所以,莱斯衰落信道仿真时,莱斯因子一般以dB值的形式给出。

(3)仿真中莱斯因子取值

上面给出的代码中,设置莱斯因子Kdb=-50,得到的随机变量的分布近似瑞利分布。另外,当设置莱斯因子Kdb=15时,得到的pdf估计值将近似高斯分布。


相关推荐
m0_720245014 小时前
1543.统计好三元组(简单)
开发语言·算法
To_OC5 小时前
LC 560 和为 K 的子数组:前缀和配哈希表,这对组合我是真的服了
javascript·算法·程序员
To_OC5 小时前
别死磕 Prompt 了!我用 Harness 流水线,让大模型自动产出高质量代码
人工智能·llm·agent
恒拓高科WorkPlus5 小时前
企业级即时通讯与数字协同平台:BeeWorks如何连接沟通、文档、业务与AI
人工智能
XGeFei5 小时前
【AI应用/Agent智能体搭建平台2】Dify——自部署
人工智能·笔记·学习
hans汉斯6 小时前
《软件工程与应用》期刊推荐&10月版面征稿中
图像处理·人工智能·深度学习·算法·音视频·软件工程
前端开发江鸟6 小时前
为了实现“小说自由”,我搭了一套 AI 小说工作流,结果却不如回家种田
人工智能
叠层归一研究院6 小时前
AGI 系统(八):符号范畴嵌入函子 — SymCat ↪ C_M107 严格化
c语言·开发语言·人工智能·算法·transformer·agi
2601_964840276 小时前
4G云门禁普惠化技术实践:基于边缘计算破解成本、隐私、部署三大行业瓶颈
大数据·人工智能·边缘计算
明朝百晓生6 小时前
Deep RL learning[2026/8]
开发语言·javascript·人工智能