MATLAB环境下的正弦信号及高斯白噪声仿真程序说明

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

姓名:朱奇峰 专业:电子与通信工程

方向:数字广播电视技术 学号:103320430109033

MATLAB 环境下的正弦信号及高斯白噪声仿真程序说明

一、信号的产生及时域观察

1、设定正选信号的频率为10HZ ,抽样频率为100HZ ;

2、设定N(0,0.25)高斯白噪声,及噪声功率为0.25W ;

3、最后将噪声叠加到正弦信号上,观察其三者时域波形。

二、信号频谱及白噪声功率谱的求解与观察

1、对原正弦信号直接进行FFT ,得出其频谱;

2、求白噪声的自相关函数,随机序列自相关函数的无偏估计公式为:

1

^

01()()()N m xx n r m x n x n m N m --==+-∑ 01m N ≤≤- ^^

()()xx xx r m r m =- 01m N <<-

对所求自相关函数进行FFT 变换,求的白噪声的功率谱函数。 三、仿真结果:

附源程序代码:

fs=100;

fc=10;

x=(0:1/fs:2);

n=201;

y1=sin(2*pi*fc*x); %原正弦信号,频率为10 a=0;b=0.5; %均值为a,方差为b^2

subplot(3,2,1);

plot(x,y1,'r');

title('y=sin(20pi*x)');

ylabel('y');

xlabel('x/20pi');

grid;

y2=a+b*randn(1,n); %高斯白噪声

subplot(3,2,2);

plot(x,y2,'r');

title('N(0,0.25)的高斯白噪声');

ylabel('y');

xlabel('x/20pi');

grid;

y=y1+y2; %加入噪声之后的信号

subplot(3,2,3);

plot(x,y,'r');

title('叠加了高斯白噪声的sinx');

ylabel('y');

xlabel('x/20pi');

grid;

FY=fft(y); %傅里叶变换得出频谱函数

FY1=fftshift(FY); %频谱校正

f=(0:200)*fs/n-fs/2;

subplot(3,2,4);

plot(f,abs(FY1),'r');

title('函数频谱图');

ylabel('F(jw)');

xlabel('w');

grid;

%求高斯白噪声的自相关函数

m=50;

i=-0.49:1/fs:0.49;

for j=1:m

R(j)=sum(y2(1:n-j-1).*y2(j:199),2)/(n-j);%无偏自相关函数的估计

Rx(49+j)=R(j);

Rx(51-j)=R(j);

end

subplot(3,2,5);

plot(i,Rx,'r');

%plot(leg*1/fs,Rx,'r');

title('白噪声自相关函数图');

ylabel('Rx');

xlabel('x');

grid;

Fy2=fft(Rx); %傅里叶变换得出白噪声功率谱函数

Fy21=fftshift(Fy2); %功率谱校正

f=(0:98)*fs/99-fs/2;

subplot(3,2,6);

plot(f,abs(Fy21),'r');

axis([-50 50 -0.5 1]);

title('白噪声功率谱函数图');

ylabel('F(Rx)');

xlabel('w');

grid;

(本资料素材和资料部分来自网络,仅供参考。请预览后才下载,期待您的好评与关注!)

相关文档
最新文档