数字信号处理第三次实验代码及波形图Word格式文档下载.docx

上传人:b****2 文档编号:839815 上传时间:2023-04-29 格式:DOCX 页数:10 大小:863.43KB
下载 相关 举报
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第1页
第1页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第2页
第2页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第3页
第3页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第4页
第4页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第5页
第5页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第6页
第6页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第7页
第7页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第8页
第8页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第9页
第9页 / 共10页
数字信号处理第三次实验代码及波形图Word格式文档下载.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数字信号处理第三次实验代码及波形图Word格式文档下载.docx

《数字信号处理第三次实验代码及波形图Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数字信号处理第三次实验代码及波形图Word格式文档下载.docx(10页珍藏版)》请在冰点文库上搜索。

数字信号处理第三次实验代码及波形图Word格式文档下载.docx

%m=移位样点数

%N=圆周缓冲器长度

%方法:

y(n=x((n-mmodN

%checkforlengthofx

iflength(x>

N

error('

N必须>

=x的长度'

end

x=[xzeros(1,N-length(x];

%将x补零到长度为N

n=[0:

1:

N-1];

n=mod(n-m,N;

y=x(n+1;

%主函数.m

clc;

clearall;

x=[9876543];

y1=cirshift(x,4,8;

y2=cirshift(x,-5,8;

2.开发一个圆周翻转的matlab函数cirflip.m并测试:

设x(n=[987654321],求x(n的16点圆周翻转x((-n16R16(n。

functiony=cirfilp(x,N

nx=[0:

y=x(mod(-nx,N+1;

x=[987654321];

N=16;

nx=0:

N-1;

y=cirfilp(x,16;

subplot(121,stem([0:

N-1],x;

title('

原序列'

;

xlabel('

n'

ylabel('

x(n'

grid;

subplot(122,stem([0:

N-1],y;

圆周翻褶序列'

x((n16r16(n'

3.开发一个分解圆周奇偶对称序列的matlab函数cirevod.m并测试:

设x(n=[987654321],将x(n分解圆周奇偶对称序列

xep(n、xop(n。

function[xep,xop]=circevod(x

%将实序列分解为圆周偶和圆周奇两部分

%------------------------------------

%[xep,xop]=circevod(x

ifany(imag(x~=0

x非实序列'

N=length(x;

n=0:

xep=0.5*(x+x(mod(-n,N+1;

xop=0.5*(x-x(mod(-n,N+1;

[xep,xop]=circevod(x;

4.开发一个实现DFT矩阵的函数wN=dftmtx(N并测试N=4,8,16的DFT矩阵,在此基础上寻求IDFT矩阵wNI的编程方法并测试N=4,8,16的IDFT矩阵

%这是matlab自带的函数命令行输入type+dftmtx可查看源代码。

functionD=dftmtx(n

n=signal.internal.sigcasttofloat(n,'

double'

'

dftmtx'

N'

...

'

allownumeric'

D=fft(eye(n;

命令行输入:

wN=dftmtx(N;

wNI=conj(dftmtx(N/N

DFT

N=4

N=8

N=16

IDFT:

N=4

5.自编工具函数XK=dft(xn,N实现DFT以及IDFT,并测试x(n=[987654321]的DFT。

function[Xk]=dft(xn,N

k=n;

WN=exp(-j*2*pi/N;

nk=n'

*k;

WNnk=WN.^(nk;

Xk=xn*WNnk;

%主函数

xn=[987654321]

y=dft(x,9;

function[Xk]=idft(xn,N

WNnk=WN.^(-nk;

Xk=(xn*WNnk/N;

6.开发一个圆周卷积计算的matlab函数y=circonvt(x1,x2,N,并测试x1(n=[12349],x2=[7654321],求8点圆周卷积。

functiony=circonvt(x1,x2,N

iflength(x1>

=x1的长度'

iflength(x2>

=x2的长度'

x1=[x1zeros(1,N-length(x1];

x2=[x2zeros(1,N-length(x2];

m=[0:

x2=x2(mod(-m,N+1;

H=zeros(N,N;

forn=1:

H(n,:

=cirshift(x2,n-1,N;

end

y=x1*H'

%test.6

x1=[12349];

x2=[7654321];

y=circonvt(x1,x2,8;

7.教材P212习题3.36.余弦频率是正弦频率的两倍,故正弦周期是预先周期的两倍。

T=0.5s抽样间隔T=0.01s,故N=50;

clearall;

N=50;

n=[0:

k=n;

xn=2*sin(0.04*pi*n+5*cos(0.08*pi*n;

WN=exp(-j*2*pi/N;

nk=n'

WNnk=WN.^(nk;

Xk=xn*WNnk;

magX=abs(Xk;

angX=angle(Xk;

subplot(121;

stem(k,magX,'

.'

xlabel('

k'

幅度谱曲线'

X(k'

subplot(122;

stem(k,angX,'

相位谱曲线'

弧度'

第11页共12页

因为抽样频率不变,要增大N才能减少谱泄露,故N=99;

N=99;

第12页共12页

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2