加性高斯白噪声信道:MATLAB小例题
1.dB
(1)dB 是一个纯计数单位:dB = 10logX;
X = 1000000000000000 = 10logX = 150 dB
X = 0.000000000000001 = 10logX = -150 dB
dB的引入是为了把乘除关系变换为加减,便于工程中的运算。
(2)dB是一个表征相对值的值,当考虑甲的功率相比于乙功率大或小多少个dB时,按下面计算公式:
10lg(甲功率/乙功率)
甲功率=乙功率: 10lg(1)=0dB;
甲功率=2*乙功率:10lg(2)=3dB;
2.dBw:以1W为基准
3.dBm:以1mW为基准
由此可见,0dBw是一个比0dBm大得多的多的单位,功率上相差1000倍。
dBm 减 dBm 实际上是两个功率相除。比如:
(信号)30dBm - (噪声)0dBm = (信号功率)1000mW/1mW(噪声功率) = 1000 = 30dB。(式1)
4.SNR(信噪比=信号功率/噪声功率)(信噪比SNR(dB)=信号功率(dBW)-噪声功率(dBW))
本来2个数相除((SNR)1000W/1W)转化为2个数相减30dBW-0dBW=30dB(SNR)
若信号功率为0dBW,因此,噪声的实际功率-SNRdBW。(式1)
例题一:
在正弦信号上叠加功率为-20dBW的高斯白噪声。
clear all
t = 0:0.001:10;
x = sin(2*pi*t);
snr = 20; %设定加性高斯白噪声功率
y = awgn(x,snr); %正弦信号上叠加高斯白噪声
subplot(2,1,1);plot(t,x);title('正弦信号x');
subplot(2,1,2);plot(t,y);title('叠加高斯白噪声的正弦信号');
z = y-x;
var(z) %计算噪声功率(方差)
ans = 0.01
函数awgn(x,snr)把加性高斯白噪声叠加到输入信号x中,snr以dB的形式指定噪声的功率。
这种情况下,信号的功率假设为0dBW(其实信号功率并不是0dBW,原来此处是假设!),噪声的功率实际上等于-snrdBW。于是,snr的值为20。
结果显示噪声功率为0.01,该值是由snr决定的。
例题二:
clear all
t = 0:0.001:10;
x = sin(2*pi*t);
snr = 20; %设定加性高斯白噪声功率
y = awgn(x,snr,10); %正弦信号上叠加高斯白噪声
subplot(2,1,1);plot(t,x);title('正弦信号x');
subplot(2,1,2);plot(t,y);title('叠加高斯白噪声的正弦信号');
z = y-x;
var(z) %计算噪声功率(方差)
函数awgn(x,snr,sigpower):假设输入信号的功率为sigpower(单位:dBW)(原来都是假设!)
10dBW-噪声功率=20dB,噪声功率=-10dBW
结果恰好:ans = 0.100。
例题三:终于计算信号功率了:awgn(x,snr,'measured')
clear all
t = 0:0.001:10;
x = sin(2*pi*t);
snr = 20; %设定加性高斯白噪声功率
y = awgn(x,snr,'measured'); %正弦信号上叠加高斯白噪声
subplot(2,1,1);plot(t,x);title('正弦信号x');
subplot(2,1,2);plot(t,y);title('叠加高斯白噪声的正弦信号');
z = y-x;
var(z) %计算噪声功率(方差)
ans = 0.005
实际信号功率为0.5(sum(abs(x).^2)/length(x)),snr=20dB,噪声功率0.005,结果也验证了这一点。
例题四:用randn函数产生加性高斯白噪声
randn(n):返还一个n行n列的随机矩阵,每一行每一列都服从均值为0,方差为1的正态分布;
randn(m,n):返还一个m行n列的随机矩阵,每一行每一列都服从均值为0,方差为1的正态分布;
clear all
t = 0:0.001:10;
x = sin(2*pi*t);
px = norm(x).^2/length(x); %计算信号x的功率
snr = 20; %信噪比,dB形式
pn = px./(10.^(snr./10)); %根据snr计算噪声功率
n = sqrt(pn)*randn(1,length(x)); %根据噪声功率产生相应的高斯白噪声序列
y = x+n;
subplot(2,1,1);plot(t,x);title('正弦信号x')
subplot(2,1,2);plot(t,y);title('叠加了高斯白噪声后的正弦信号')
var(n)
ans = 0.005
x为一向量,norm(x)=norm(x,2)返回向量的2范数:即sum(abs(x).^2)^1/2;
根据噪声功率产生相应的高斯白噪声序列,要对噪声功率进行开方运算。(D(CX)=C^2D(X))
加性高斯白噪声信道:MATLAB小例题相关推荐
- 《通信原理》加性高斯白噪声信道
实验一:在正弦信号上叠加功率为-20dBW的高斯白噪声. 1.实验代码 %加性高斯白噪声信道-用awgn(x,snr)实现t=0:0.001:10; %产生时间矢量t x=sin(2*pi*t); % ...
- 【信道模型分析1】通过伪码相关峰分析信道模型对信号的影响——高斯白噪声信道/瑞丽多径信道
目录 一.理论基础 二.核心程序 三.仿真测试结果 3.1高斯白噪声信道模型
- Matlab高斯白噪声信道仿真
信号叠加一个均值为0.2,方差为0.5的高斯噪声后进行信号和噪声功率谱密度分析 信道噪声 Matlab含有高斯白噪声的函数库,可以直接调用: u = normrnd(0.2,sqrt(0.5),[1, ...
- 高斯白噪声及matlab语言,matlab 给信号加高斯白噪声
满意答案 wkchen1221 推荐于 2017.09.13 采纳率:47% 等级:11 已帮助:10513人 最低0.27元开通文库会员,查看完整内容> 原发布者:854076811 M ...
- 高斯白噪声及Matlab常用实现方法
http://blog.sina.com.cn/s/blog_4d7c97a00101cv5h.html 一.概念 英文名称:white Gaussian noise; WGN 定义:均匀分布于给定频 ...
- 均匀分布白噪声和高斯白噪声及其matlab产生方式
白噪声(white noise)是指功率谱密度在整个频域内均匀分布的噪声. 所有频率具有相同功率密度的随机噪声称为白噪声. 按幅度分布方式又可以分为均匀分布和高斯分布. 1.均匀分布的白噪声 1.1均 ...
- 高斯噪声、高斯白噪声解析
如何用matlab 产生 均值为0,方差为5的高斯噪声 2011-07-15 19:36 y=randn(1,2500); y=y/std(y); y=y-mean(y); a=0; b=5; y=a ...
- python 高斯白噪声-python高斯白噪声
广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 白噪声时间序列的例子在本节中,我们将使用python创建一个高斯白噪声序 ...
- 高斯噪声、高斯白噪声、SNR、噪声方差
如何用matlab 产生 均值为0,方差为5的高斯噪声 2011-07-15 19:36 y=randn(1,2500); y=y/std(y); y=y-mean(y); a=0; b=5; y=a ...
最新文章
- 零基础学习Java培训有什么攻略
- Sum All Numbers in a Range
- MapReduce提交作业常见问题
- 形态数轴的非递进现象
- [Go] golang的MPG调度模型
- 程序员父亲的遗产——编程十诫
- Chapter7-9_Deep Learning for Dependency Parsing
- php火车订票系统设计论文,基于JSP的火车票订票系统 JSP146(毕业设计+论文)
- Mysql5.0中文乱码解决方案
- Oracle数据库中IN参数个数超过1000的问题
- java沙盒模式_JavaScript学习笔记(二十五) 沙箱模式
- php如何隐藏入口文件,php怎么隐藏入口文件
- 米家扫地机器人尘盒怎么取_米家扫地机器人1S:从里到外全面提升 拥有超高性价比...
- 计算机函数乘法word,【2人回答】Word里相乘的函数是什么?-3D溜溜网
- 什么是gpo,gpt,gpc(活动目录组策略)
- HTML5七夕情人节表白网页制作【樱花雨+爱心3D相册】HTML+CSS+JavaScript
- Ceph 线程池与工作队列
- Linux查询一个进程是被那个启动项启动的
- Django之破解数独
- 小米手机部和平台部组织调整 前者设参谋部、触控部