MATLAB wgn函数产生高斯白噪声程序

2025-10-19 00:43:48

1、产生高斯白噪声信号

信号参数:时宽5s。

MATLAB程序:

fs=100;

T=5;

n=round(T*fs);%采样点个数

t=linspace(0,T,n);

y=wgn(1,n,0);%LFM信号

注:这边wgn函数中前两个参数分别为要产生的信号矩阵的行数与列数,第三个参数为噪声信号的功率,这边设置为0就是0dbW。

2、高斯白噪声信号时域频域波形:

在设置的0~5s时宽范围内,是杂乱无章的噪声。这边幅度并不为1,因为我们设置的0dbW(相当于1W)是统计意义上的噪声功率,每个时刻的瞬时功率不一定为1.

MATLAB程序:

figure;

plot(t,y);

title('高斯白噪声信号时域');

xlabel('t/s');

ylabel('幅度');

运行结果:

MATLAB wgn函数产生高斯白噪声程序

3、高斯白噪声频谱:

可以看到,频谱分量铺满了整个频带,但由于只是对一个样本作频谱分析,并没有得到统计意义上均匀的功率谱。

MATLAB程序:

fft_y=fftshift(fft(y));

f=linspace(-fs/2,fs/2,n);

figure;

plot(f,abs(fft_y));

title('高斯白噪声信号频谱');

xlabel('f/Hz');

ylabel('幅度');

运行结果:

MATLAB wgn函数产生高斯白噪声程序

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢