燕山大学教务系统

更新时间:2022-12-28 14:58:00 阅读: 评论:0


2022年12月28日发(作者:连邦教育)

燕山大学课程设计---移位与卷

LT

燕山大学课程设计说明书

燕山大学课程设计说明书

燕山大学课程设计说明书

燕山大学课程设计说明书

(1)绘出x1(n)及其移位与循环移位

序列波形(mod等)

(2)绘出x1、x2波形,并完成有限长

序列x1和x2的卷积与循环卷积并

显示出结果,并验证线性卷积与循

环卷积的关系(circonv等)

数字信号处理方面资料

MATLAB方面资料

周次前半周后半周

收集消化资料、学习

MATLAB软件,进

行相关参数计算

编写仿真程序、调

燕山大学课程设计说明书

6

指导

师签

基层

教学

单位

主任

签字

说明:1、此表一式四份,系、指导教师、学生各一份,报送院教务科一份。

2、学生那份任务书要求装订到课程设计报告前面。

电气工程学院教务科

燕山大学课程设计说明书

目录

第一章、MATLAB简述·························1

第二章、基本原理介绍························2

第三章、命令介绍、仿真及结论················4

3.1命令介绍·······························4

3.2仿真···································4

3.2.1仿真总程序···························4

3.2.2仿真图·························8

3.3从程序仿真与仿真图得出的结论···········9

第四章、心得体会··························10

参考文献··································11

燕山大学课程设计说明书

0

第一章MATLAB简述

MATLAB是一个可视化的计算程序,被广

泛地应用在科学运算领域里。它具有功能强大、

使用简单等特点,内容包括:数值计算、符号

计算、数据拟合、图形图像处理、系统模拟和

仿真分析等功能。此外,用Matlab还可以进

行动画设计、有限元分析等。

MATLAB系统包括五个主要部分:

开发环境:这是一组帮助你使用MATLAB

的函数和文件的工具和设备。这些工具大部分

是图形用户界面。它包括MATLAB桌面和命令

窗口,命令历史,和用于查看帮助的浏览器,

工作空间,文件和查找路径。

MATLAB数学函数库:这里汇集了大量计算

的算法,范围从初等函数如:求和,正弦,余

弦和复数的算术运算,到复杂的高等函数如:

矩阵求逆,矩阵特征值,贝塞尔(Besl)函数

和快速傅立叶变换等。

MATLAB语言:这是一种高水平的矩阵/数

燕山大学课程设计说明书

1

组语言,含有控制流语句,函数,数据结构,

输入/输出,和面向对象编程特征。它允许“小

型编程”以迅速创立快速抛弃型程序,以及“大

型编程”以创立完整的大型复杂应用程序。

句柄制图:这是MATLAB制图系统。它包

括高级别的二维、三维数据可视化,图像处理,

动画,以及表现图形的命令。它还包括低级别

的命令,这使你不但能在MATLAB的应用中建

立完整的图形用户界面,而且还能完全定制图

形的外观。

MATLAB应用程序界面(API):这是使你编

写与MATLAB相合的C或Fortran程序的程序

库。它包括从MATLAB中调用程序(动态链接),

调用MATLAB为计算引擎,和读写MAT-文件的

设备。

MATLAB的重要作用与此次课程设计的关系

MATLAB是一款在数学类科技应用软件中

特别是在数值计算方面首屈一指的软件,它可

以进行矩阵运算、绘制函数和数据、实现算法、

燕山大学课程设计说明书

2

创建用户界面、连接其他编程语言的程序等,

主要应用于工程计算、控制设计、信号处理与

通讯、图像处理、信号检测、金融建模设计与

分析等领域。而线性卷积和循环卷积在工程上

的应用亦非常广泛,在MATLAB软件处理下,

实现任意两个序列的线性和循环卷积对于工程

上的辅助是相当重要的。卷积关系最重要的一

种情况,就是在信号与线性系统或数字信号处

理中的卷积定理。利用该定理,可以将时间域

或空间域中的卷积运算等价为频率域的相乘运

算,从而利用FFT等快速算法,实现有效的计

算,节省运算代价。

第二章基本原理介绍

2.1移位定义

燕山大学课程设计说明书

3

如果有限长序列为x(n),则序列()xnm表示

将序列x(n)进行移位。当m>0时,x(n-m)

表示将序列x(n)依次右移m位;x(n+m)表

示将序列x(n)依次左移m位。

2.2循环移位定义

如果有限长序列为x(n),长度为N,将x(n)

左移m位,则y(n)=x((n+m)

L

)R

L

(n)。x(n)

左移m位的过程可由以下步骤获得:

(1)将()xn以N为周期进行周期延拓,得到

()(())

L

xnxn;

(2)将(n)x

~左移m位,得到m)(nx

~

;

(3)取m)(nx

~

的主值序列,得到x(n)循环移

位序列y(n)。

有限长序列的移位也称为循环移位,原因

是将x(n)左移m位时,移出的m位又依次从右

端进入主值区。

2.3线性卷积的定义与计算

这里先介绍系统的单位取样响应:设系统

的输入x(n)=δ(n),系统输出y(n)的初始状

燕山大学课程设计说明书

4

态为零,定义这种条件下系统输出称为系统的

单位取样响应,用h(n)表示。换句话说,单位

取样响应即是系统对于δ(n)的零状态响应。

用公式表示为:h(n)=T[δ(n)]。

设系统的输入用x(n)表示,表示成单位采

样序列移位加权和为:

()()()

m

xnXmnm





那么系统输出为:

()[()()]

m

ynTXmnm





根据线性系统的叠加性质:

()()[()]

m

ynXmTnm





又根据时不变性质:

()()()()*()

l

m

ynXmhnmxnhn





(2-3-1)

式中的符号“*”表示卷积运算,由式

(1-3-1)可见在这类卷积运算中有翻转、移

位、相乘和相加,因此称这类卷积为线性卷积,

简称卷积。式(1-3-1)表示线性是不变系统

燕山大学课程设计说明书

5

的输出等于输入序列的该系统的单位取样响应

的卷积。只要知道系统的单位取样响应,按照

式(1-3-1),对于任意输入x(n)都可以求出系

统的输出。下面介绍图解法求解卷积运算的过

程。

按照(1-3-1)可得,1)将x(n)和h(n)用x(m)

和h(n)表示,并将h(n)进行翻转,形成h(-m)。

2)将h(-m)移位n,得到h(n-m)。当n>0时,

序列x(m)右移;n<0时,序列左移。3)x(m)

和h(n-m)相同m的序列值对应相乘后相加。按

照以上三个步骤可得到卷积结果y(n)。为计算

所有时刻的y(n),必须对所有的n,重复上述

2)、3)步骤。

2、4循环卷积定理

两个序列离散傅里叶变换的乘积等于此

两个序列的循环卷积的离散傅里叶变换,如果

x1(n)和x2(n)满足

X1(k)=DFT[x1(n)],X2(k)=DFT[x2(n)],且

X(k)=X1(k)X2(k),N>max[N1,N2],则

燕山大学课程设计说明书

6

1

12

0

1

21

0

()[()]()(())()

[()(())]()

N

cLL

m

N

LL

m

ynIDFTXkxmxnmRn

xmxnmRn





(2-4-1)

一般称上式所表示的运算为x1(n)和x2(n)的

循环卷积。还可记为:

x(n)=x1(n)x2(n)=x2x1(n)。

根据(2-4-1),L称为循环卷积区间长度。

n和m的变化区间均是[0,L-1],直接计算该式

比较麻烦。计算机中采用矩阵相乘或快速傅里

叶变换(FFT)的方法计算循环卷积。用矩阵

相乘的方法计算两个序列的循环卷积,这里关

键是先形成循环卷积矩阵。如果h(n)的长度

N

3)线性卷积与循环卷积的关系

()()()

L

cl

q

nnqLnyy

R





上式说明,yc(n)等于yl(n)以L为周期的

周期延拓序列的主值序列。yl(n)的长度为

N+M-1,因此仅当循环卷积长度L≥N+M-1时,

燕山大学课程设计说明书

7

yl(n)以L为周期进行周期延拓才无混叠。因

此取其主值序列就满足yc(n)=yl(n)。即满足

L≥N+M-1。

第三章命令介绍及仿真

3.1命令介绍

1)zeros是用来表示线性代数的0矩阵。比

如:zeros(3,3)表示3行3列0矩阵。

2)mod(a,b)就是求的是a除以b的余数。

比方mod(100,3)=1,mod(17,6)=5。

3)length是求某一个矩阵或者向量的长度。

4)conv是系统自带的函数,用来卷积运算,

同时也可以做多项式的乘法。

5)stem构建一组横轴和纵轴数据,方便画

图。

6)subplot(a,b,c)函数,对图像空间进行

子图划分,a表示行数,b表示列数,,c表示

子图序号。

燕山大学课程设计说明书

8

7)figure(n),为当前工作空间的第n个图像。

8)title('x1序列'),是规定子图名称,在图

正中显示序列名称。xlabel('n')和ylabel('

幅度'),规定图的横纵坐标。

3.2仿真

3.2.1仿真程序

(1)仿真总程序

clearall

cloall

clc

figure(1)

n=0:1:9;

x1=(0.8).^n;

subplot(3,3,1);

stem(n,x1);

title('x1原图');

xlabel('n');

ylabel('x1(n)');

n=0:1:9;

x1=(0.8).^n;

subplot(3,3,2);%移位

stem(n+2,x1);

title('x1(n-2)');

xlabel('n');

ylabel('x1(n-2)');

subplot(3,3,3);

stem(n-2,x1);

title('x1(n+2)');

xlabel('n');

ylabel('x1(n+2)');

y1=xuhuanyiwei(x1,2,15);%循环移位

燕山大学课程设计说明书

9

y2=xuhuanyiwei(x1,-2,15);

y3=xuhuanyiwei(x1,2,19);

y4=xuhuanyiwei(x1,-2,19);

y5=xuhuanyiwei(x1,2,20);

y6=xuhuanyiwei(x1,-2,20);

n1=0:1:14;

subplot(3,3,4);

stem(n1,y1);

title('x1循环移位m=-2N=15');

xlabel('n');

ylabel('y1');

subplot(3,3,5);

stem(n1,y2);

title('x1循环移位m=2N=15');

xlabel('n');

ylabel('y2');

n2=0:1:18;

subplot(3,3,6);

stem(n2,y3);

title('x1循环移位m=-2N=19');

xlabel('n');

ylabel('y3');

subplot(3,3,7);

stem(n2,y4);

title('x1循环移位m=2N=19');

xlabel('n');

ylabel('y4');

n3=0:1:19;

subplot(3,3,8);

stem(n3,y5);

title('x1循环移位m=-2N=20');

xlabel('n');

ylabel('y5');

subplot(3,3,9);

stem(n3,y6);

title('x1循环移位m=2N=20');

xlabel('n');

ylabel('y6');%移位程序结束

燕山大学课程设计说明书

10

figure(2)

x1=(0.8).^n;

subplot(2,3,1);

stem(n,x1);

title('x1原图');

xlabel('n');

ylabel('x1(n)');

x2=0.6.^n;

subplot(2,3,2);

stem(n,x2);

title('x2原图');

xlabel('n');

ylabel('x2(n)');

n1=0:1:18;

y1=conv(x1,x2);%卷积

subplot(2,3,3);

stem(n1,y1);

title('x1和x2线性卷积');

xlabel('n');

ylabel('y1(n)');

N=length(x1)+length(x2);%N=20,循环卷积

y2=xunhuanjuanji(x1,x2,N-1);%19

y3=xunhuanjuanji(x1,x2,N);%20

y4=xunhuanjuanji(x1,x2,N-5);%15

n2=0:1:N-2;

n3=0:1:N-1;

n4=0:1:N-6;

subplot(2,3,4);

stem(n2,y2);

title('x1和x2对N=19的循环卷积');

xlabel('n');

ylabel('y2(n)');

subplot(2,3,5);

stem(n3,y3);

title('x1和x2对N=20的循环卷积');

xlabel('n');

ylabel('y3(n)');

subplot(2,3,6);

stem(n4,y4);

燕山大学课程设计说明书

11

title('x1和x2对N=15的循环卷积');

xlabel('n');

ylabel('y4(n)');%卷积结束

(2)循环卷积函数

function[y]=xunhuanjuanji(x1,x2,N)

%N点循环卷积

%y输出

%x1输入1

%x2输入2

iflength(x1)>N

error('N必须>=x1的长度')

end

iflength(x2)>N

error('N必须>=x2的长度')

end

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

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

m=[0:1:N-1];

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

H=zeros(N,N);

forn=1:1:N

H(n,:)=xuhuanyiwei(x2,n-1,N);

end

y=x1*H';

End

(3)循环移位函数

function[y]=xuhuanyiwei(x,m,N)

%y为输出

%x=长度<=N的序列

%m=移位

%N=周期

iflength(x)>N

燕山大学课程设计说明书

12

error('N必须>=x的长度')

end

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

n=[0:1:N-1];

y=x(mod(n-m,N)+1);

End

3.2.2仿真图

图3.1移位与循环移位图

图3.2卷积与循环卷积图

燕山大学课程设计说明书

13

3.3从程序仿真与仿真图得出的结论

从3.2的程序仿真与仿真图中可以得出下

面结论:

设两个序列的长度分别为N和M,设较大

的是N,则循环卷积区间长度L必须大于N,在

仿真的过程中尝试L取N+1、N+2····、N+M-1、

N+M、N+M+1等等。可以得到当N

时,两个序列的循环卷积和线性卷积是不一样

的。当L≥N+M-1时,两个序列的循环卷积和

线性卷积是一样的。

燕山大学课程设计说明书

14

第四章心得体会

这次的课程设计比较和以往的不同,不一

样就在于:设计的工具与课程是分离的,就是

一门课程的设计需要另外的一门课程做辅助,

现在的辅助工具是MATLAB,由于以前没有接触

过MATLAB,刚开始拿到这个课题时,心里没底,

这使得我在拿到了课题后一段时间没法开始我

的课题,于是努力查阅资料,不论是网上的资

料或者是图书馆借的关于MATLAB的书都能让

我学到许多知识,渐渐的找到了上手的感觉了。

但是,就是在这样的课程设计的过程中让我更

好的学好,加深对数字信号处理这门课程的理

解及也对MATLAB有了比较深的体会。

燕山大学课程设计说明书

15

在做这个课程设计过程中走了不少的弯

路。但是我认为,每个软件,每个语言对于同

一结果的实验都是有不同的方案可以选择,不

同的路径可以走,那是毫无疑问的。所以对于

初学者这也是必然的,捷径也都是靠自己摸索

出来的,我所说的更深的体会也就体现在这个

环节上的。

我知道虽然我做完了这个设计,但是我的

程序还是有许多需要改进的地方,但是,经过

这次我已经对MATLAB和数字信号处理这门课

程有了一点点的理解,相信在以后学习和工作

的过程的中,我会比较轻松的掌握好MATALB

和数字信号处理的模拟,以及MATLAB在其他

数字信号方面的运用的。

燕山大学课程设计说明书

16

参考文献

[1]谢平,王娜,林洪彬.信号处理原理及应

用.机械工业出版社

[2]张德丰.详解MATLAB数字信号处理.电

子工业出版社

[3]郭仕剑.MATLAB7.X数字信号处理.人民

邮电出版社

燕山大学课程设计说明书

17

燕山大学课程设计说明书

燕山大学课程设计评审意见表

指导教师评语:

①该生学习态度(认真较认真不认真)

②该生迟到、早退现象(有无)

③该生依赖他人进行设计情况(有无)

平时成绩:

年月日

图面及其它成绩:

答辩小组评语:

①设计巧妙,实现设计要求,并有所创新。

②设计合理,实现设计要求。

③实现了大部分设计要求。

④没有完成设计要求,或者只实现了一小部分的设计要求。

答辩成绩:

年月日

课程设计总成绩:

答辩小组成员签字:

月日

本文发布于:2022-12-28 14:58:00,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/47245.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

下一篇:河大教务处
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图