北邮信号与系统matlab实验作业:习题1 绘制典型信号及其频谱图

合集下载

北京邮电大学_dsp_matlab实验报告

北京邮电大学_dsp_matlab实验报告

数字信号处理实验报告实验名称:数字信号处理实验学生姓名:班级:班内序号:1.实验要求假设信号x(n) 由下述信号组成:请选择合适的长度N 和窗函数,用DFT 分析其频谱,得到清楚的三根谱线。

2.实验代码和实验结果N = 1000; % Length of DFTn = [0:1:N-1];xn = 0.001*cos(0.45*n*pi)+sin(0.3*n*pi)-cos(0.302*n*pi-pi/4);Xk = fft(xn,N);k=[0:1:N-1];subplot(5,1,1);stem(k,abs(Xk(1:1:N)));title('DFT x(n)');xlabel('k');axis([140,240,0,6])subplot(5,1,2);stem(k, abs(Xk(1:1:N)),'r');%画出sin(0.3npi)-cos(0.302npi-pi/4) axis([140,160,0,6]);title('sin(0.3*pi*n)-cos(0.302*pi*n) ');xlabel('k');subplot(5,1,3);stem(k, 1000*abs(Xk(1:1:N)),'g');%画出0.001*cos(0.45npi)axis([220,230,0,6]);title('cos(0.45*pi*n) ');xlabel('k');subplot(5,1,4);stem(k,0.01*abs(Xk(1:1:N)),'k');%画%sin(0.3npi)-cos(0.302npi-pi/4)axis([140,160,0,6]);title('sin(0.3*pi*n)-cos(0.302*pi*n) ');xlabel('k');subplot(5,1,5);stem(k, 10*abs(Xk(1:1:N)),'m');%画出0.001*cos(0.45npi)axis([220,230,0,6]);title('cos(0.45*pi*n) ');xlabel('k');结论:由上图及过程可知,当DFT变换长度为1000时所得到的谱线非常理想。

信号与系统实验(MATLAB版) (1)

信号与系统实验(MATLAB版) (1)

《信号与系统MATLAB实现》实验指导书电气信息工程学院2014年2月长期以来,《信号与系统》课程一直采用单一理论教学方式,同学们依靠做习题来巩固和理解教学内容,虽然手工演算训练了计算能力和思维方法,但是由于本课程数学公式推导较多,概念抽象,常需画各种波形,作题时难免花费很多时间,现在,我们给同学们介绍一种国际上公认的优秀科技应用软件MA TLAB,借助它我们可以在电脑上轻松地完成许多习题的演算和波形的绘制。

MATLAB的功能非常强大,我们此处仅用到它的一部分,在后续课程中我们还会用到它,在未来地科学研究和工程设计中有可能继续用它,所以有兴趣的同学,可以对MATLAB 再多了解一些。

MATLAB究竟有那些特点呢?1.高效的数值计算和符号计算功能,使我们从繁杂的数学运算分析中解脱出来;2.完备的图形处理功能,实现计算结果和编程的可视化;3.友好的用户界面及接近数学表达式的自然化语言,易于学习和掌握;4.功能丰富的应用工具箱,为我们提供了大量方便实用的处理工具;MATLAB的这些特点,深受大家欢迎,由于个人电脑地普及,目前许多学校已将它做为本科生必须掌握的一种软件。

正是基于这些背景,我们编写了这本《信号与系统及MATLAB实现》指导书,内容包括信号的MA TLAB表示、基本运算、系统的时域分析、频域分析、S域分析、状态变量分析等。

通过这些练习,同学们在学习《信号与系统》的同时,掌握MATLAB的基本应用,学会应用MATLAB的数值计算和符号计算功能,摆脱烦琐的数学运算,从而更注重于信号与系统的基本分析方法和应用的理解与思考,将课程的重点、难点及部分习题用MATLAB进行形象、直观的可视化计算机模拟与仿真实现,加深对信号与系统的基本原理、方法及应用的理解,为学习后续课程打好基础。

另外同学们在进行实验时,最好事先预习一些MATLAB的有关知识,以便更好地完成实验,同时实验中也可利用MATLAB的help命令了解具体语句以及指令的使用方法。

(完整版)信号与系统Matlab实验作业

(完整版)信号与系统Matlab实验作业

(完整版)信号与系统Matlab实验作业实验一典型连续时间信号和离散时间信号一、实验目的掌握利用Matlab 画图函数和符号函数显示典型连续时间信号波形、典型时间离散信号、连续时间信号在时域中的自变量变换。

二、实验内容1、典型连续信号的波形表示(单边指数信号、复指数信号、抽样信号、单位阶跃信号、单位冲击信号)1)画出教材P28习题1-1(3) ()[(63)(63)]t f t e u t u t =----的波形图。

function y=u(t) y=t>=0; t=-3:0.01:3;f='exp(t)*(u(6-3*t)-u(-6-3*t))'; ezplot(f,t); grid on;2)画出复指数信号()()j t f t e σω+=当0.4, 8σω==(0<t<10)时的实部和虚部的< p="">波形图。

t=0:0.01:10;f1='exp(0.4*t)*cos(8*t)'; f2='exp(0.4*t)*sin(8*t)'; figure(1) ezplot(f1,t); grid on; figure(2) ezplot(f2,t); grid on;t=-10:0.01:10; f='sin(t)/t'; ezplot(f,t); grid on;t=0:0.01:10;f='(sign(t-3)+1)/2'; ezplot(f,t);grid on;5)单位冲击信号可看作是宽度为?,幅度为1/?的矩形脉冲,即t=t 1处的冲击信号为11111()()0 t t t x t t t otherδ??<<+?=-=画出0.2?=, t 1=1的单位冲击信号。

t=0:0.01:2;f='5*(u(t-1)-u(t-1.2))'; ezplot(f,t); grid on;axis([0 2 -1 6]);2、典型离散信号的表示(单位样值序列、单位阶跃序列、实指数序列、正弦序列、复指数序列)编写函数产生下列序列:1)单位脉冲序列,起点n0,终点n f,在n s处有一单位脉冲。

信号与系统matlab实验 典型信号的表示和运算

信号与系统matlab实验 典型信号的表示和运算

信号与系统matlab 实验典型信号的表示和运算本练习利用MATLAB 进行信号的表示和运算。

主要内容包括离散时间信号的表示,连续时间信号的数值表示,连续时间信号的符号表示和信号的运算。

1.1 离散时间信号的表示1.1.1 有限长序列一个时间序列可用一个序列数组和一个时间标号数组来表示。

例1-1:利用MATLAB 表示序列。

01,2,4,2,3n ↑=⎧⎫⎪⎪⎨⎬⎪⎪⎩⎭% 序列数组(纵坐标)x=[0 0 0 1 2 4 2 3 0 0 0]; % 时间标号数组(横坐标)n=[-5 -4 -3 -2 -1 0 1 2 3 4 5];% 绘制序列对应的波形stem(n,x); xlabel('n');ylabel('x');由stem 绘制的波形图如图1-1所示。

nx图1-1 一个序列的波形图注意:命令的尾部用了分号,用以除掉MATLAB 不必要的回响。

1.1.2 单位样值序列单位样值序列可以表示为(1-1)0,0()1,0nnnδ≠⎧=⎨=⎩它可以用只有一个元素为1其余元素均为0的数组表示,如例1-3所示。

例1-3:n=[-5:5];x=[zeros(1,5) 1 zeros(1,5)];stem(n,x);xlabel('n');ylabel('x');单位样值序列波形图如图1-2所示。

nx图1-2 单位样值序列波形图1.1.3 由已知序列得到另一个序列(1) 取长序列中的一部分例1-3:nx=0:10;x=nx;% 取序列nx的前5个值ny=nx(1:5);% 取序列x的前5个值y=x(1:5);subplot(2,1,1);stem(nx,x);xlabel('nx'); ylabel('x');axis([0 10 0 10]); subplot(2,1,2);stem(ny,y);xlabel('ny'); ylabel('y'); axis([0 10 0 5]); MATLAB执行结果见图1-3。

DSP软件实验MATLAB----北邮

DSP软件实验MATLAB----北邮

MATLAB仿真实验报告学院:电子工程学院专业:电子科学与技术班级:2011211207学号:2011211077姓名:班内序号:MatLab 仿真试验实验一:数字信号的 FFT 分析1.实验目的通过本次实验,应该掌握:(a) 用傅立叶变换进行信号分析时基本参数的选择。

(b) 经过离散时间傅立叶变换(DTFT )和有限长度离散傅立叶变换(DFT )后信号频谱上的区别,前者 DTFT 时间域是离散信号,频率域还是连续的,而 DFT 在两个域中都是离散的。

s(c) 离散傅立叶变换的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。

(d) 获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。

(e) 建立 DFT 从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用是数字音频压缩中的分析滤波器,例如 DVD AC3 和MPEG Audio 。

2.实验内容及要求(1) 离散信号的频谱分析:设信号 此信号的0.3pi 和 0.302pi 两根谱线相距很近,谱线 0.45pi 的幅度很小,请选择合适的序列长度 N 和窗函数,用 DFT 分析其频谱,要求得到清楚的三根谱线。

设计思路:输入x(n)表达式,利用fft(x(n),N)函数进行傅里叶变换,再用subplot 函数进行图形绘制。

本题的关键在于N 的确定,只有合适的大小才能满足题目要求,本题中取N=5000。

代码:clear;close all ;N=5000;n=1:1:N;x=0.001*cos(0.45*n*pi)+sin(0.3*n*pi)-cos(0.302*n*pi-pi/4); y=fft(x,N);a=abs(y(1:1:N/2+1));%取绝对值k=0:1:N/2;w=2*pi/N*k;%w 与k 的关系stem(w/pi,a);%绘制火柴杆图axis([0.29,0.46,0,10]);%设置坐标轴范围实验结果:00010450303024().*cos(.)sin(.)cos(.)x n n n n ππππ=+--(2) DTMF 信号频谱分析用计算机声卡采用一段通信系统中电话双音多频(DTMF)拨号数字0~9的数据,采用快速傅立叶变换(FFT)分析这10个号码DTMF拨号时的频谱。

信号与系统matlab实验 典型信号的表示和运算

信号与系统matlab实验 典型信号的表示和运算

信号与系统matlab 实验 典型信号的表示和运算本练习利用MATLAB 进行信号的表示和运算。

主要内容包括离散时间信号的表示,连续时间信号的数值表示,连续时间信号的符号表示和信号的运算。

1.1 离散时间信号的表示 1.1.1 有限长序列一个时间序列可用一个序列数组和一个时间标号数组来表示。

例1-1:利用MATLAB 表示序列01,2,4,2,3n ↑=⎧⎫⎪⎪⎨⎬⎪⎪⎩⎭。

% 序列数组(纵坐标)x=[0 0 0 1 2 4 2 3 0 0 0]; % 时间标号数组(横坐标)n=[-5 -4 -3 -2 -1 0 1 2 3 4 5]; % 绘制序列对应的波形stem(n,x); xlabel('n');ylabel('x');由stem 绘制的波形图如图1-1所示。

图1-1 一个序列的波形图注意:命令的尾部用了分号,用以除掉MATLAB 不必要的回响。

1.1.2 单位样值序列单位样值序列可以表示为nx0,0()1,0n n n δ≠⎧=⎨=⎩ (1-1)它可以用只有一个元素为1其余元素均为0的数组表示,如例1-3所示。

例1-3:n=[-5:5];x=[zeros(1,5) 1 zeros(1,5)]; stem(n,x);xlabel('n');ylabel('x');单位样值序列波形图如图1-2所示。

图1-2 单位样值序列波形图1.1.3 由已知序列得到另一个序列(1) 取长序列中的一部分 例1-3:nx=0:10;x=nx; % 取序列nx 的前5个值 ny=nx(1:5); % 取序列x 的前5个值 y=x(1:5);subplot(2,1,1);stem(nx,x);xlabel('nx'); ylabel('x');axis([0 10 0 10]); subplot(2,1,2);stem(ny,y);xlabel('ny'); ylabel('y'); axis([0 10 0 5]);MATLAB 执行结果见图1-3。

北邮数字信号处理MATLAB实验报告

北邮数字信号处理MATLAB实验报告

数字信号处理软件实验——MatLab仿真实验报告学院:电子工程学院班级:2013211202姓名:学号:实验一:数字信号的 FFT 分析1、实验内容及要求(1) 离散信号的频谱分析:设信号 此信号的0.3pi 和 0.302pi 两根谱线相距很近,谱线 0.45pi 的幅度很小,请选择合适的序列长度 N 和窗函数,用 DFT 分析其频谱,要求得到清楚的三根谱线。

(2) DTMF 信号频谱分析用计算机声卡采用一段通信系统中电话双音多频(DTMF )拨号数字 0~9的数据,采用快速傅立叶变换(FFT )分析这10个号码DTMF 拨号时的频谱。

2、实验目的通过本次实验,应该掌握:(a) 用傅立叶变换进行信号分析时基本参数的选择。

(b) 经过离散时间傅立叶变换(DTFT )和有限长度离散傅立叶变换(DFT ) 后信号频谱上的区别,前者 DTFT 时间域是离散信号,频率域还是连续的,而 DFT 在两个域中都是离散的。

(c) 离散傅立叶变换的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。

(d) 获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。

(e) 建立 DFT 从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用是数字音频压缩中的分析滤波器,例如 DVD AC3 和MPEG Audio 。

3.设计思路及实验步骤1)离散信号的频谱分析:该信号中要求能够清楚的观察到三根谱线。

由于频率0.3pi 和0.302pi 间隔非常小,要清楚的显示,必须采取足够大小的N ,使得分辨率足够好,至少到0.001单位级,而频率0.45pi 的幅度很小,要清楚的观察到它的谱线,必须采取幅度够大的窗函数,使得它的频谱幅度变大一些。

同时还要注意频谱泄漏的问题,三个正弦函数的周期(2pi/w )分别为20,40,1000,所以为了避免产生频谱泄漏(k=w/w0为整数),采样点数N 必须为1000的整数倍。

信号与系统matlab实验1

信号与系统matlab实验1

实验一 典型连续时间信号描述及运算二、典型连续信号波形的绘制 2、典型连续时间信号波形绘制 2)正弦信号 )0.2s i n ()(θ+⋅⋅⋅=Ttpi E t f 程序如下:t=-250:1:250;f1=150.0*sin(2.0.*t.*pi./100.00); f2=150.0*sin(2.0.*t.*pi./200.00);f3=150.0*sin((2.0.*t.*pi./200.00)+(pi./5.0)); plot(t,f1,'-',t,f2,'--',t,f3,'-.') 图形如下:3)衰减正弦信号 )()e x p ()0.2s i n ()(t u tT t pi E t f ⋅-⋅⋅⋅⋅=τ程序如下:t=0:1:500;f=200.0*sin(2.0.*t.*pi./100.00).*exp(-1.*t./250.0); plot(t,f); 图形如下:4)钟型信号 )e x p ()(22τt E t f -⋅=程序如下:t=-250:1:250;f1=400.0*exp(-1.*t.^2./100.0^2); f2=400.0*exp(-1.*t.^2./150.0^2); f3=400.0*exp(-1.*t.^2./250.0^2); plot(t,f1,'-',t,f2,'--',t,f3,'-.'); 图形如下:3、奇异信号波形绘制 1)符号函数 ⎩⎨⎧<->=011)s g n (t t t 程序如下:t=-5:0.01:5;f=sign(t); plot(t,f); 图形如下:2)阶跃信号 ⎩⎨⎧<>=01)(t t t u 程序如下:t=-5:0.01:5;f=0.5+0.5.*sign(t); plot(t,f); 图形如下:三、连续时间信号的运算已知)]4()()[4()(1--+-=t u t u t t f 及信号)2sin()(2t t f π=,用MATLAB 绘出满足下列要求的信号波形。

实验1用MATLAB进行信号频谱分析

实验1用MATLAB进行信号频谱分析

实验1用MATLAB进行信号频谱分析提供一个实验步骤,帮助您用MATLAB进行信号频谱分析。

以下是一个详细步骤,您可以按照提示进行操作。

1.准备信号数据选择一个信号数据,可以是一个音频文件或一个由数字数据表示的信号。

确保该文件位于MATLAB当前工作目录下,或者提供文件的完整路径。

2.导入信号数据在MATLAB命令窗口中键入以下命令,将信号数据导入到MATLAB中:`data = audioread('filename.wav');`或者,如果信号数据是数字数据矩阵,可以直接将其赋值给变量:`data = your_signal_data;`3.绘制时域波形图使用以下命令可以绘制信号的时域波形图:`plot(data);`这将绘制出信号的波形图。

可以使用音频播放器在MATLAB环境中播放信号,以便更好地了解信号特征:`sound(data, Fs);`这里的Fs是信号的采样率,通常以赫兹(Hz)为单位。

4.计算信号的频谱频谱可以通过对信号进行傅里叶变换来获得。

在MATLAB中,可以使用fft函数执行傅里叶变换。

使用以下命令来计算信号的频谱:`N = length(data); %获取信号数据的长度``Y = fft(data); %执行傅里叶变换``P = abs(Y/N); %计算信号的频谱(单侧幅度谱)`5.绘制频谱图使用以下命令可以绘制信号的频谱图:`f=(0:N-1)*(Fs/N);%计算频率轴``plot(f, P); %绘制频谱图``xlabel('频率(Hz)');``ylabel('幅度');`6.可选步骤:去除直流分量信号的频谱通常包含一个直流分量(频率为0Hz),可以通过以下步骤将其去除:`P(1)=0;%设置直流分量的幅度为0``plot(f, P); %绘制修正后的频谱图`到此为止,我们已经使用MATLAB完成了信号频谱分析的基本步骤。

北邮matlab实验一实验报告

北邮matlab实验一实验报告

数字信号处理实验报告实验名称:实验一,数字信号的产生和基本运算学生姓名:XXXXX班级:XXXXXXX班内序号:XXXXX学号:XXXxxxx日期:2014年3月22日1.实验要求因为现实世界里存在的是模拟信号,因此数字信号处理的第一个问题是将信号离散化,得到一个数字信号,然后再进行数字处理。

(1) 常用数字信号序列的产生:熟悉 Matlab 产生数字信号的基本命令,加深对数字信号概念的理解,并能够用 Matlab 产生和绘制出一些常用离散信号序列。

请用 Matlab 画出下列序列的波形(-10<n<10):a) δ(n)b) 单位阶跃序列 2 u(n-5)c) 矩形序列 R(n)d) y(n)=2sin(0.3πn)+ 0.5cos2(0.6πn)(2) 数字信号的基本运算:加、减、尺度(乘除)和移位是数字信号处理中最基本的算术运算,将上述基本序列进行这些基本运算,得到多个序列构成的组合序列。

请用您的计算机声卡采用一段您自己的声音 x(n),长度为 45秒,单声道,取样频率 44.1kHz,16bit/样值,然后与给定的一段背景音乐 y(n) 按下式叠加为一个声音信号 z(n):z(n) = 0.7x(n) + 0.3y(n)2.实验代码及图像1.产生冲击序列:代码:function[x,n]=impseq(n0,n1,n2)if ((n0<n1)|(n0>n2)|(n1>n2))error('Arguements must satisfy n1<=n0<=n2')endn=[n1:n2];x=[(n-n0)==0];x=impseq(0,-10,10);n=[-10:10];stem(n,x);2.产生阶跃序列:代码:function[x,n]=stepseq(n0,n1,n2)if ((n0<n1)|(n0>n2)|(n1>n2))error('Arguements must satisfy n1<=n0<=n2')endn=[n1:n2];x=[(n-n0)>=0];y=2*stepseq(5,-10,10);n=[-10:10];stem(n,y);3.产生矩形序列:代码:z=stepseq(0,-10,10)-stepseq(5,-10,10);stem(n,z);4.产生三角函数序列:代码:n=[-10:0.1:10];k=2*sin(0.3*pi*n)+ 0.5*cos(0.6*pi*n).^2 stem(n,k);5.加、减、移位、尺度变化:加法:y(n)=δ(n)+2u(n-5)减法:y(n)=δ(n)-2Rn(4)移位:y(n)=2u((n-5)+3)尺度变换:y=2u((n-3)/2)6.音频信号处理代码:[an,fs,nbits]=wavread('E:\sanzijing.wav'); a=an(:,1)size(a)n=[0:2254847][bn,fs,nbits]=wavread('E:\background.wav'); b=bn(:,1);c=b(1:2254848);b=0.7*a+0.3*c;wavwrite(b,44100,'E:/b.wav');subplot(3,1,1);plot(a);title('orgin');subplot(3,1,2);plot(c);title('background');subplot(3,1,3);plot(b);title('mixed');。

(完整版)习题1绘制典型信号及其频谱图

(完整版)习题1绘制典型信号及其频谱图

习题一绘制典型信号及其频谱图电子工程学院 202班一、单边指数信号单边指数信号的理论表达式为对提供的MATLAB程序作了一些说明性的补充,MATLAB程序为1 / 16调整,将a分别等于1、5、10等值,观察时域波形和频域波形。

由于波形较多,现不失代表性地将a=1和a=5时的各个波形图列表如下进行对比,其他a值的情况类似可推知。

2 / 16域图像幅频特性3 / 16频特性/dB相频特性分析:由上表中a=1和a=5的单边指数信号的波形图和频谱图的对比可以发现,当a值增大时,信号的时域波形减小得很快,而其幅频特性的尖峰变宽,相频特性的曲线趋向平缓。

4 / 16二、矩形脉冲信号矩形脉冲信号的理论表达式为MATLAB程序为:5 / 16F=E*width*sinc(w.*width/2);figure(1);plot(t,f);xlabel(’t');ylabel(’f(t)');title('信号时域图像’);figure(2);plot(w,abs(F));xlabel('\omega');ylabel(’|F(\omega)|');title(’幅频特性');figure(3);plot(w,20*log10(abs(F)));xlabel('\omega');ylabel(’|F(\omega)|in dB’);title('幅频特性/dB’);figure(4);plot(w,angle(F));xlabel(’\omega');ylabel('\phi(\omega)');title(’相频特性');调整,将分别等于1、4等值,观察时域波形和频域波形。

由于波形较多,现不失代表性地将a=1和a=4时的各个波形图列表如下进行对比,其他值的情况类似可推知。

146 / 16域图像幅频特性幅频特性/dB7 / 16频特性分析:由以上的图标对比可知,(1)解释“幅值特性/dB”中许多向下跳变的尖峰这是由于求取分贝数要用lg函数,lg0为负无穷,所以出现了图像中的很多向下跳变的尖峰.实际上,矩形脉冲信号一般不看以分贝为单位的幅频特性曲线。

实验1 用MATLAB进行信号频谱分析

实验1  用MATLAB进行信号频谱分析

实验1 用MATLAB进行信号频谱分析实验1 用MATLAB 进行信号频谱分析一、实验目的㈠ 初步掌握MATLAB 产生常用离散时间信号的编程方法。

㈡ 学习编写简单的FFT 算法程序,对离散信号进行幅频谱分析。

㈢ 观察离散时间信号频谱的特点。

二、实验原理㈠ 常用的离散时间信号在 MATLAB 语言主要是研究离散信号的。

常用的离散信号有:1.单位取样序列⎩⎨⎧≠==0001)(n n n δ 2.单位阶跃序列⎩⎨⎧<≥=0001)(n n n u3.实指数序列R a n a n x n∈∀=;)( 4.复指数序列n e n x nj ∀=+)(0)(ωσ5.正(余)弦序列)cos()(0θω+=n n x n ∀6.周期序列n N n x n x ∀+=)()(㈡ 离散信号的产生离散信号的图形显示使用stem 指令。

在 MATLAB 中的信号处理工具箱中,主要提供的信号是离散信号。

20由于MATLAB 对下标的约定为从1开始递增,例如x=[5,4,3,2,1,0],表示x(1)=5,x(2)=4,X(3)=3…因此要表示一个下标不由1开始的数组x(n),一般应采用两个矢量,如 n=[-3,-2,-1,0,l ,2,3,4,5];x=[1,-l ,3,2,0,4,5,2,1];这表示了一个含9个采样点的矢量:X(n)={x(-3),x(-2),x(-1),x(0),x(1),x(2),x(3),x(4),x(5)}。

1.单位取样序列⎩⎨⎧≠==δ0001)(n n n 这一函数实现的方法有二:方法一:可利用MATLAB 的zeros 函数。

x=zeros(1,N); %建立一个一行N 列的全零数组x(1)=1; %对X (1)赋1方法二:可借助于关系操作符实现n=1:N;x=[n==1]; %n 等于1时逻辑关系式结果为真,x=1;n 不等于1时为假,x=0如要产生 ⎪⎩⎪⎨⎧≤<<=≤≤=-δ202100100)(10)(n n n n n n n n n n n n则可采用MATLAB 实现:n=n1:n2;x=[(n-n0)==0];%n=n0时逻辑关系式结果为真,x=1;n ≠n0时为21假,x=02.单位阶跃序列⎩⎨⎧<≥=0001)(n n n u这一函数可利用MATLAB 的ones 函数实现:x=ones(1,N);还可借助于关系操作符“>=”来实现。

信号与系统实验(MATLAB版)(1)

信号与系统实验(MATLAB版)(1)

信号与系统实验(MATLAB版)(1)《信号与系统MATLAB实现》实验指导书电⽓信息⼯程学院2014年2⽉长期以来,《信号与系统》课程⼀直采⽤单⼀理论教学⽅式,同学们依靠做习题来巩固和理解教学内容,虽然⼿⼯演算训练了计算能⼒和思维⽅法,但是由于本课程数学公式推导较多,概念抽象,常需画各种波形,作题时难免花费很多时间,现在,我们给同学们介绍⼀种国际上公认的优秀科技应⽤软件MA TLAB,借助它我们可以在电脑上轻松地完成许多习题的演算和波形的绘制。

MATLAB的功能⾮常强⼤,我们此处仅⽤到它的⼀部分,在后续课程中我们还会⽤到它,在未来地科学研究和⼯程设计中有可能继续⽤它,所以有兴趣的同学,可以对MATLAB 再多了解⼀些。

MATLAB究竟有那些特点呢?1.⾼效的数值计算和符号计算功能,使我们从繁杂的数学运算分析中解脱出来;2.完备的图形处理功能,实现计算结果和编程的可视化;3.友好的⽤户界⾯及接近数学表达式的⾃然化语⾔,易于学习和掌握;4.功能丰富的应⽤⼯具箱,为我们提供了⼤量⽅便实⽤的处理⼯具;MATLAB的这些特点,深受⼤家欢迎,由于个⼈电脑地普及,⽬前许多学校已将它做为本科⽣必须掌握的⼀种软件。

正是基于这些背景,我们编写了这本《信号与系统及MATLAB实现》指导书,内容包括信号的MA TLAB表⽰、基本运算、系统的时域分析、频域分析、S域分析、状态变量分析等。

通过这些练习,同学们在学习《信号与系统》的同时,掌握MATLAB的基本应⽤,学会应⽤MATLAB的数值计算和符号计算功能,摆脱烦琐的数学运算,从⽽更注重于信号与系统的基本分析⽅法和应⽤的理解与思考,将课程的重点、难点及部分习题⽤MATLAB进⾏形象、直观的可视化计算机模拟与仿真实现,加深对信号与系统的基本原理、⽅法及应⽤的理解,为学习后续课程打好基础。

另外同学们在进⾏实验时,最好事先预习⼀些MATLAB 的有关知识,以便更好地完成实验,同时实验中也可利⽤MATLAB的help命令了解具体语句以及指令的使⽤⽅法。

习题一 绘制典型信号及其频谱图

习题一 绘制典型信号及其频谱图

习题一绘制典型信号及其频谱图(1)绘制单边指数信号及其频谱图的MATLAB程序如下:close all;E=1;a=1;t=0:0.01:4;w=-30:0.01:30;f=E*exp(-a*t);F=E./(a+j*w);plot(t,f);xlabel('t');ylabel('f(t)');figure;plot(w,abs(F));xlabel('\omega');ylabel('|F(\omega)|');figure;plot(w,20*log10(abs(F)));xlabel('\omega');ylabel('|F(\omega)| in dB'); figure;plot(w,angle(F));xlabel('\omega');ylabel('\phi(\omega)');请更改参数,调试此程序,绘制单边指数信号的波形图和频谱图。

观察参数a对信号波形及其频谱的影响。

上述代码(E=1;a=1)的图形如下所示:现改变参数再绘制图形:①E=1;a=2;图形如下所示:②E=2;a=1; 图形如下所示:③E=2;a=2; 图形如下所示:由图可知,a越大,单边指数信号的波形图f(t)-t下降越快,其频谱图|F(ω)|-ω、|F(ω)| in dB-ω在ω=0处的峰值越小,φ(ω)-ω的初始近似水平段的值也越小。

(2)绘制矩形脉冲信号、升余弦脉冲信号和三角脉冲信号的波形图和频谱图,观察并对比各信号的频带宽度和旁瓣的大小。

①矩形脉冲代码如下:close all;E=1;tau=1;t=-4:0.1:4;w=-30:0.1:30;f=E*(t>-tau/2&t<tau/2)+0*(t<=-tau/2&t>=tau/2);F=(2*E./w).*sin(w*tau/2);plot(t,f);xlabel('t');ylabel('f(t)');figure;plot(w,abs(F));xlabel('\omega');ylabel('|F(\omega)|');figure;plot(w,20*log10(abs(F)));xlabel('\omega');ylabel('|F(\omega)| in dB'); figure;plot(w,angle(F));xlabel('\omega');ylabel('\phi(\omega)');图形如下所示:②升余弦脉冲代码如下:clear all; E=1;tau=1;t=-3:0.1:3;w=-30:0.1:30;f=(E/2*(1+cos(2*pi*t/tau))).*(t>-tau/2&t<tau/2)+0*(t>=tau/2|t<=-tau/2 );Sa=sin(w*tau/2)./(w*tau/2);F=E*tau/2*Sa./(1-(w*tau/2/pi).^2);plot(t,f);xlabel('t');ylabel('f(t)');figure;plot(w,abs(F));xlabel('\omega');ylabel('|F(\omega)|');figure;plot(w,20*log10(abs(F)));xlabel('\omega');ylabel('|F(\omega)| in dB'); figure;plot(w,angle(F));xlabel('\omega');ylabel('\phi(\omega)');图形如下所示:③三角脉冲代码如下:close all;E=1;tau=1;t=-3:0.1:3;w=-30:0.1:30;f=E*(1-2*abs(t)/tau).*(t<tau/2&t>-tau/2)+0*(t>=tau/2|t<=-tau/2);Sa=sin(w*tau/4)./(w*tau/4);F=E*tau/2*Sa.^2;plot(t,f);xlabel('t');ylabel('f(t)');figure;plot(w,abs(F));xlabel('\omega');ylabel('|F(\omega)|');figure;plot(w,20*log10(abs(F)));xlabel('\omega');ylabel('|F(\omega)| in dB'); figure;plot(w,angle(F));xlabel('\omega');ylabel('\phi(\omega)');图形绘制如下:由图可知,三种信号中矩形脉冲相对频带宽度最小,升余弦脉冲和三角脉冲的频带宽度较为接近;旁瓣大小比较结果为:矩形脉冲>三角脉冲>升余弦脉冲。

北邮《数字信号处理》Matlab实验——周期序列的谱分析

北邮《数字信号处理》Matlab实验——周期序列的谱分析
figure(8); M = 8; x4n = xn(1:M); stem(0:M-1, x4n); title('x(n)*R8(n)'); ylabel('x4(n)'); xlabel('n'); figure(9); Xk = fft(x4n, M); stem(0:M-1, abs(Xk)); title('|DFT(x4(n))|'); ylabel('X4(k)'); xlabel('k');
所得 X4(k)是非周期整数倍点数的 DFT,不是清晰谱线。因为选取了 1.3 个周期,不是周 期的整数倍,选取的 x4(n)没有体现出 x(n)的周期特性,所以得到的谱线的形状特征必然与 X1(k)、X2(k)、X3(k)不同。
所得 X2(k)取值与 x(n)主值序列 DFT 结果相同。因为 DFT 是反映信号的频域特性,所以 同为一个周期,频域特性一定相同,无论起始位置如何,其 DFT 情况都相同。
6、令 x3(n)表示 x(n)的 2 个周期,绘制|DFT(x3(n)|,解释取值情况
figure(6); x3n = xn(1:2*N); stem(0:2*N-1, x3n); title('x(n)的 2 个周期'); ylabel('x3(n)'); xlabel('n'); figure(7); Xk = fft(x3n, 2*N); stem(0:2*N-1, abs(Xk)); title('|DFT(x3(n))|'); ylabel('X3(k)'); xlabel('k');
因为 x(n) cos(
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学院:电子工程学院
班级:2018211205班
姓名:赵依然
学号:2018212048
信号与系统matlab实验第一题a=1时图像
a=5时图像
a=10图像
a=20图像
单边指数信号随着a不断增大,发生了如下变化:
f(t)随着a增大而急剧减小,斜率变化很快,趋于0的时间减少。

|F(W)|则变得平缓一些,频域增大。

转换成db也是一样的规律。

而phi(w)则随着变小,随着a增大,曲线变得平缓,下降速度变得缓慢。

总结起来就是,a越小波形下降越慢,高频成分越少低频成分越多频谱越集中,频谱相位越大。

a越大,波形下降越快,高频成份越多,低频成分越少,频谱越分散,频谱相位越小。

2.矩形脉冲信号:
图像如下
代码如下
3.升余弦脉冲信号
图像如下
代码如下
4.三角脉冲信号:
图像如下:
代码如下
比较图像可知:
矩形脉冲信号的带宽为2π,升余弦脉冲信号和三角脉冲信号的带宽为4π。

旁瓣由小到大依次是升余弦脉冲信号、三角脉冲信号、矩形脉冲信号。

相关文档
最新文档