CENTRAL SOUTH UNIVERSITY
题 目 姓 名 班 级 任课老师 实验日期
课题二
王雨、李蕾、刘勇飞 电气工程及其自动化0904班
鲁五一
实验目的:
1.学习和掌握matlab在数字信号处理中的应用; 2.学习matlab中函数的调用;
实验内容:
(2.4.6)
m=1….,M,M
编写相应Matlab程序,画出图象,写出实习报告。
实验步骤
(1)、产生输入序列x(n)
代码及注释如下:
r=unifrnd(-0.5,0.5,8,8);
%生成-0.5到0.5(连续)均匀分布的随机数
n=1:64;
x(n)=reshape(r,1,64);
%将上述8x8分布的随机数转化成1x64分布的随机数 stem(n,x(n),'filled');
%绘制以n为横轴,x(n)为纵轴的脉冲杆图图形 xlabel('时间(n)'); ylabel('幅度x(n)');
(2)、计算输出序列y(n)
代码及注释如下:
r=unifrnd(-0.5,0.5,8,8); %生成-0.5到0.5(连续)均匀分布的随机数
n=1:64;
x(n)=reshape(r,1,64); %将上述8x8分布的随机数转化成1x64分布的随机数 a=[1,-0.9]; %输入差分方程的系数 b=[1,0];
x01=0;y01=0; %输入初始条件
xi=filtic(b,a,0,0); %计算初始状态 y(n)=filter(b,a,x(n),xi); %求输出序列y(n) stem(n,y(n),'filled'); xlabel('时间(n)'); ylabel('幅度y(n)');
(3)、求相关函数
根据课题所给公式可知,这里采用的是无偏估计,因此调用matlab中的
Xcorr(A,’ unbiased’);
Rx=xcorr(x(n),'unbiased'); %求自相关函数(无偏估计方式) stem(Rx,'filled');
Ry=xcorr(y(n),'unbiased'); stem(Ry,'filled');
(4)、求功率谱
根据课题所给公式可知,这里采用的是间接法(自相关法)进行功率谱估计; Fs=100; %采样频率
nFFT=256; %进行FFT变换的长度 Lx=fft(Rx,nFFT); Ly=fft(Ry,nFFT);
Pxx1=abs(Lx); %求解PSD Pxx2=abs(Ly);
t=0:round(nFFT/2-1); Kx=t*Fs/nFFT; Ky=t*Fs/nFFT;
Px=10*log10(Pxx1(t+1)); %纵坐标的单位为dB subplot(2,1,1); plot(Kx,Px);
Py=10*log10(Pxx2(t+1)); subplot(2,1,2); plot(Ky,Py);
(5)、完整代码:
r=unifrnd(-0.5,0.5,8,8); %生成-0.5到0.5(连续)均匀分布的随机数
n=1:64;
x(n)=reshape(r,1,64); %将上述8x8分布的随机数转化成1x64分布的随机数
subplot(3,2,1);
stem(n,x(n),'filled'); %绘制以n为横轴,x(n)为纵轴的脉冲杆图图形
title('输入序列x(n)'); xlabel('时间(n)'); ylabel('幅度x(n)');
a=[1,-0.9]; %输入差分方程的系数 b=[1,0];
x01=0;y01=0; %输入初始条件
xi=filtic(b,a,0,0); %计算初始状态 y(n)=filter(b,a,x(n),xi); %求输出序列y(n) subplot(3,2,2);
stem(n,y(n),'filled'); title('输出序列y(n)'); xlabel('时间(n)'); ylabel('幅度y(n)');
Rx=xcorr(x(n),'unbiased'); %求自相关函数(无偏估计方式) subplot(3,2,3); stem(Rx,'filled'); title('自相关函数Rx'); Ry=xcorr(y(n),'unbiased');
subplot(3,2,4); stem(Ry,'filled'); title('自相关函数Ry'); Fs=50; %采样频率
nFFT=256; %进行FFT变换的长度 Lx=fft(Rx,nFFT); Ly=fft(Ry,nFFT);
Pxx1=abs(Lx); %求解PSD Pxx2=abs(Ly);
t=0:round(nFFT/2-1); Kx=t*Fs/nFFT; Ky=t*Fs/nFFT;
Px=10*log10(Pxx1(t+1)); %纵坐标的单位为dB subplot(3,2,5); plot(Kx,Px); title('功率谱估计X') Py=10*log10(Pxx2(t+1)); subplot(3,2,6); plot(Ky,Py);
title('功率谱估计y');
实验总结
本次学术周的课题活动使我更加熟练的掌握了matlab的相关功能(函数的调用),及matlab在数字信号处理中的应用,特别是运用matlab求自相关函数和功率谱的估计。
CENTRAL SOUTH UNIVERSITY
题 目 姓 名 班 级 任课老师 实验日期
课题二
王雨、李蕾、刘勇飞 电气工程及其自动化0904班
鲁五一
实验目的:
1.学习和掌握matlab在数字信号处理中的应用; 2.学习matlab中函数的调用;
实验内容:
(2.4.6)
m=1….,M,M
编写相应Matlab程序,画出图象,写出实习报告。
实验步骤
(1)、产生输入序列x(n)
代码及注释如下:
r=unifrnd(-0.5,0.5,8,8);
%生成-0.5到0.5(连续)均匀分布的随机数
n=1:64;
x(n)=reshape(r,1,64);
%将上述8x8分布的随机数转化成1x64分布的随机数 stem(n,x(n),'filled');
%绘制以n为横轴,x(n)为纵轴的脉冲杆图图形 xlabel('时间(n)'); ylabel('幅度x(n)');
(2)、计算输出序列y(n)
代码及注释如下:
r=unifrnd(-0.5,0.5,8,8); %生成-0.5到0.5(连续)均匀分布的随机数
n=1:64;
x(n)=reshape(r,1,64); %将上述8x8分布的随机数转化成1x64分布的随机数 a=[1,-0.9]; %输入差分方程的系数 b=[1,0];
x01=0;y01=0; %输入初始条件
xi=filtic(b,a,0,0); %计算初始状态 y(n)=filter(b,a,x(n),xi); %求输出序列y(n) stem(n,y(n),'filled'); xlabel('时间(n)'); ylabel('幅度y(n)');
(3)、求相关函数
根据课题所给公式可知,这里采用的是无偏估计,因此调用matlab中的
Xcorr(A,’ unbiased’);
Rx=xcorr(x(n),'unbiased'); %求自相关函数(无偏估计方式) stem(Rx,'filled');
Ry=xcorr(y(n),'unbiased'); stem(Ry,'filled');
(4)、求功率谱
根据课题所给公式可知,这里采用的是间接法(自相关法)进行功率谱估计; Fs=100; %采样频率
nFFT=256; %进行FFT变换的长度 Lx=fft(Rx,nFFT); Ly=fft(Ry,nFFT);
Pxx1=abs(Lx); %求解PSD Pxx2=abs(Ly);
t=0:round(nFFT/2-1); Kx=t*Fs/nFFT; Ky=t*Fs/nFFT;
Px=10*log10(Pxx1(t+1)); %纵坐标的单位为dB subplot(2,1,1); plot(Kx,Px);
Py=10*log10(Pxx2(t+1)); subplot(2,1,2); plot(Ky,Py);
(5)、完整代码:
r=unifrnd(-0.5,0.5,8,8); %生成-0.5到0.5(连续)均匀分布的随机数
n=1:64;
x(n)=reshape(r,1,64); %将上述8x8分布的随机数转化成1x64分布的随机数
subplot(3,2,1);
stem(n,x(n),'filled'); %绘制以n为横轴,x(n)为纵轴的脉冲杆图图形
title('输入序列x(n)'); xlabel('时间(n)'); ylabel('幅度x(n)');
a=[1,-0.9]; %输入差分方程的系数 b=[1,0];
x01=0;y01=0; %输入初始条件
xi=filtic(b,a,0,0); %计算初始状态 y(n)=filter(b,a,x(n),xi); %求输出序列y(n) subplot(3,2,2);
stem(n,y(n),'filled'); title('输出序列y(n)'); xlabel('时间(n)'); ylabel('幅度y(n)');
Rx=xcorr(x(n),'unbiased'); %求自相关函数(无偏估计方式) subplot(3,2,3); stem(Rx,'filled'); title('自相关函数Rx'); Ry=xcorr(y(n),'unbiased');
subplot(3,2,4); stem(Ry,'filled'); title('自相关函数Ry'); Fs=50; %采样频率
nFFT=256; %进行FFT变换的长度 Lx=fft(Rx,nFFT); Ly=fft(Ry,nFFT);
Pxx1=abs(Lx); %求解PSD Pxx2=abs(Ly);
t=0:round(nFFT/2-1); Kx=t*Fs/nFFT; Ky=t*Fs/nFFT;
Px=10*log10(Pxx1(t+1)); %纵坐标的单位为dB subplot(3,2,5); plot(Kx,Px); title('功率谱估计X') Py=10*log10(Pxx2(t+1)); subplot(3,2,6); plot(Ky,Py);
title('功率谱估计y');
实验总结
本次学术周的课题活动使我更加熟练的掌握了matlab的相关功能(函数的调用),及matlab在数字信号处理中的应用,特别是运用matlab求自相关函数和功率谱的估计。