实验一-基于MATLAB的白噪声信号u(n)、sinc函数、chirp信号产生实验
实验一 基于MATLAB的白噪声信号u(n)、sinc函数、chirp信号产生实验
一、 实验目的:
1. 学会使用MATLAB
2. 通过实验了解MATLAB如何产生各种常用信号
3. 掌握MATLAB的编程方法
二、 实验内容:
1. 用MATLAB编程产生一均匀分布的白噪声信号u(n),画出其波形,并检验其分布情况。
代码:
clear;
N = 50000;
u = rand(1,N);
u_mean = mean(u);
power_u = var(u);
subplot(211);
plot(u(1:100));
grid on;
ylabel('u(n)');
xlabel('n');
subplot(212);
hist(u,100);grid on;
ylabel('histogranm of u(n)');
运行结果:
2. 用MATLAB编程产生一均匀分布、均值为零、功率为0.01的白噪声信号u(n),画出其波形。
代码:
clear;
p = 0.01;
N = 50000;
u = rand(1,N);
u = u - mean(u);
a = sqrt(12*p);
u1 = u*a;
power_u1 = dot(u1,u1)/N;
subplot(111);
plot(u1(1:200));grid on;
ylabel('u(n)');
xlabel('n');
运行结果:
3. 用MATLAB编程产生高斯分布的白噪声信号,使功率为p,并观察数据分布的直方图。
代码:
p = 0.1;
N = 50000;
u = rand(1,N);
a = sqrt(p);
u = u*a;
power_u = var(u);
subplot(211);
plot(u(1:200));grid on;
ylabel('u(n)');
xlabel('n');
subplot(212);
hist(u,50);grid on;
ylabel('histgram of u(n)');
运行结果:
4. 用MATLAB编程产生一sinc函数,画出其波形。
代码:
clear;
clc;
close all;
n = 200;
stept = 4*pi/n;
t = -2*pi:stept:2*pi;
y = sinc(t);
plot(t,y,t,zeros(size(t)));
ylabel('sinc(t)');
xlabel('t = -2*pi~2*pi');
grid on;
运行结果:
5. 用MATLAB编程产生一chirp信号,画出其波形。
代码:
clear;
clc;
close all;
t = 0:0.0001:1;
x = chirp(t,0,1,125);
plot(t,x);
ylabel('x(t)');
xlabel('t');
运行结果:
因篇幅问题不能全部显示,请点此查看更多更全内容