离散序列的卷积和系统差分方程的MATLAB实现
离散序列卷积(matlab实现)
![离散序列卷积(matlab实现)](https://img.taocdn.com/s3/m/04b2a749866fb84ae55c8d20.png)
数字信号处理实验报告实验一 离散时间序列卷积和MATLAB 实现(一)实验目的:学会用MATLAB 对信号与系统分析的方法,理解离散序列卷积和的计算对进行离散信号与系统分析的重要性。
(二)实验原理:1、离散时间序列f1(k)和f2(k)的卷积和定义:f(k)=f1(k)*f2(k)=∑∞-∞=-•i i k f i f )(2)(12、在离散信号与系统分析中有两个与卷积和相关的重要结论:a 、f(k)=∑∞-∞=-•i i k i f )()(δ=f(k)* δ(k)即离散序列可分解为一系列幅度由f(k)决定的单位序列δ(k)及其平移序列之积。
b 、对线性时不变系统,设其输入序列为f(k),单位响应为h(k),其零状态响应为y(k),则有:y(k)=∑∞-∞=-•i i k h i f )()(3、上机:conv.m 用来实现两个离散序列的线性卷积。
其调用格式是:y=conv(x,h)若x 的长度为N ,h 的长度为M ,则y 的长度L=N+M-1。
(三)实验内容1、题一:令x(n)= {}5,4,3,2,1,h(n)={}246326,,,,,,y(n)=x(n)*h(n),求y(n)。
要求用subplot 和stem 画出x(n),h(n),y(n)与n 的离散序列图形。
源程序: N=5; M=6;L=N+M-1; x=[1,2,3,4,5]; h=[6,2,3,6,4,2]; y=conv(x,h); nx=0:N-1; nh=0:M-1; ny=0:L-1;subplot(131); stem(nx,x,'*k'); xlabel('n'); ylabel('x(n)'); grid on ;subplot(132); stem(nh,h,'*k'); xlabel('n'); ylabel('h(n)'); grid on ;subplot(133); stem(ny,y,'*k'); xlabel('n'); ylabel('y(n)'); grid on ;实验结果:24nx (n)5nh (n )510ny (n )分析实验结果:根据实验结果分析可知,实验所得的数值跟x (n )与y (n )所卷积的结果相同。
基于MATLAB离散卷积的实现和源代码
![基于MATLAB离散卷积的实现和源代码](https://img.taocdn.com/s3/m/0c743577f242336c1eb95e65.png)
figure(1);
subplot(411)
stem(n,signal1);
title('原信号1');
xlabel('n');ylabel ('y(n)');
axis([0 18 -25 25])
long_M=5;
signal2=2*ones(1,long_M);
if ((k-long_N+i>long_M)) %判断翻转序列是否超过自身的长度
fk(k)=a;
else
fk(k)=a+signal2(k-long_N+i)*signal1(long_N-i+1);
a=fk(k);
end
end
end
end
end
subplot(414)
stem(fk);
title('重新卷积函数的实现');
在序列比较长时FFT是一种最合适的方法,可以快速得出仿真运算的结果。选择圆周卷积或FFT运算线性离散卷积可提高DSP设计的效率。
通过对离散卷积的实现,加深了对卷积的理解,卷积的实现方式,卷积和FFT对应的关系。
附件:
clc;
clear;
close all;
N=14;
n=[1:N-1];
f=1/16;
4离散卷积分析的结果
图1
图1为Matlab的程序仿真图,第三个序列为调用函数conv()实现的线性卷积,第四个序列为自编线性卷积函数。可以从两图中看到序列是相同的,从而说明自编的线性卷积函数是正确的。
图2
matlab差分方程
![matlab差分方程](https://img.taocdn.com/s3/m/1456ab1811661ed9ad51f01dc281e53a580251f7.png)
matlab差分方程MATLAB是一种广泛使用的计算机辅助工具,其中包含了许多实用算法和解决方案。
差分方程是MATLAB中非常重要的一种工具,可以用于模拟和解决各种差分方程问题。
下面将介绍如何使用MATLAB来解决差分方程问题。
首先在MATLAB窗口中打开一个新的脚本文件(Ctrl+N),左侧显示脚本编辑器的窗口。
在窗口中输入以下内容:function dy = diffeq(t,y)dy = zeros(2,1);dy(1) = y(2);dy(2) = -0.1*y(2) - y(1) - 10*(y(1)^3);在这个脚本中,我们定义了一个名为“diffeq”的函数,它有两个参数(t和y)。
该函数返回一个长度为2的dy向量,dy是y的导数(dy/dt)。
在本例中,我们使用了系统描述的常见方法:x'=f(x,t),y是系统状态向量。
换句话说,我们将梯度设置为我们想要模拟的方程。
一旦函数被定义,我们现在可以开始运行模拟。
接下来,我们将使用MATLAB的ODE求解器来解决我们的差分方程问题。
我们可以这样编写代码:[t,y] = ode45(@diffeq,[0 30],[1 0]);在这里,ode45是MATLAB中用于解决常微分方程的函数,它需要三个参数。
第一个参数是定义我们的方程的函数(即我们之前声明的diffeq函数),第二个参数是我们期望的时间范围(从0到30,单位为秒),第三个参数是初值(在这个例子中,我们使用y(0)=1和y'(0)=0作为初值)。
运行后,MATLAB会将结果存储在两个向量t和y中,我们可以使用下面的代码来显示不同时间点t的y值:plot(t,y(:,1),'-')在此代码中,我们使用plot函数来绘制y的前一个元素(我们的状态向量正在被建模)以及时间t之间的关系。
结果应该是一个类似于与时间的函数y(t)的曲线。
这个值可以根据不同的初值和系统变量被改变。
数字信号处理matlab实验2 离散系统的时域分析
![数字信号处理matlab实验2 离散系统的时域分析](https://img.taocdn.com/s3/m/14f074c46137ee06eef91804.png)
实验2离散系统的时域分析实验目的:加深对离散系统的差分方程、冲激响应和卷积分析方法的理解。
实验原理:离散系统][n x ][n y Discrete-timesystme其输入、输出关系可用以下差分方程描述:∑∑==-=-Mk k Nk kk n x p k n y d][][输入信号分解为冲激信号,∑∞-∞=-=m m n m x n x ][][][δ。
记系统单位冲激响应][][n h n →δ,则系统响应为如下的卷积计算式:∑∞-∞=-=*=m m n h m x n h n x n y ][][][][][当N k d k ,...2,1,0==时,h[n]是有限长度的(n :[0,M]),称系统为FIR 系统;反之,称系统为IIR 系统。
在MATLAB 中,可以用函数y=filter(p,d,x)实现差分方程的仿真,也可以用函数 y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统的冲激响应。
实验内容和要求:1、以下程序中分别使用conv 和filter 函数计算h 和x 的卷积y 和y1,运行程序,并分析y 和y1是否有差别,为什么要使用x[n]补零后的x1来产生y1;具体分析当h[n]有i 个值,x[n]有j 个值,使用filter 完成卷积功能,需要如何补零? % Program P2_7 clf;h = [3 2 1 -2 1 0 -4 0 3]; % impulse response x = [1 -2 3 -4 3 2 1];% input sequencey = conv(h,x); n = 0:14; subplot(2,1,1); stem(n,y);xlabel('Time index n'); ylabel('Amplitude'); title('Output Obtained by Convolution'); grid; x1 = [x zeros(1,8)]; y1 = filter(h,1,x1); subplot(2,1,2); stem(n,y1);xlabel('Time index n'); ylabel('Amplitude'); title('Output Generated by Filtering'); grid; 程序运行结果:2468101214-20-1001020Time index nA m p l i t u d e Output Obtained by Convolution2468101214-20-1001020Time index nA m p l i t u d eOutput Generated by Filtering由图可看出,y 与y1并无差别。
离散信号的产生、显示及离散序列的卷积和matlab实现
![离散信号的产生、显示及离散序列的卷积和matlab实现](https://img.taocdn.com/s3/m/e8d4e3210a4e767f5acfa1c7aa00b52acfc79c80.png)
离散信号的产生、显示及离散序列的卷积和matlab实现离散信号的产生可以通过一个生成离散序列的函数来实现。
Matlab提供了一些内置的函数来生成常见的离散信号,例如单位阶跃函数(heaviside)、单周期方波(square)、正弦信号(sin)、脉冲(impulse)等。
离散信号的显示可以使用Matlab的plot函数来实现。
将离散序列作为函数的输入参数,然后使用plot函数绘制出序列的图像。
离散序列的卷积可以使用conv函数来实现。
conv函数接受两个输入信号,并返回它们的离散卷积结果。
下面是一个示例代码演示离散信号的产生、显示和离散序列的卷积:```matlab% 产生离散信号n = 0:1:9; % 定义离散点的范围x1 = heaviside(n-2); % 单位阶跃函数x2 = square(n); % 单周期方波x3 = sin(n); % 正弦信号% 显示离散信号figure;subplot(3,1,1);stem(n, x1);title('单位阶跃函数');subplot(3,1,2);stem(n, x2);title('单周期方波');subplot(3,1,3);stem(n, x3);title('正弦信号');% 离散序列的卷积h = [1, 2, 1]; % 卷积核y = conv(x3, h); % 卷积运算figure;subplot(2,1,1);stem(x3);title('输入信号');subplot(2,1,2);stem(y);title('卷积结果');```在上面的代码中,首先定义了离散序列的范围n,然后使用内置函数生成了三个不同的离散信号x1、x2和x3。
接下来,使用subplot函数将三个离散信号的图像显示在一个图形窗口中。
最后,定义了一个卷积核h,并使用conv函数对x3进行卷积运算,得到卷积结果y。
实验一:离散时间序列卷积和MATLAB实现
![实验一:离散时间序列卷积和MATLAB实现](https://img.taocdn.com/s3/m/8172725b3c1ec5da50e27080.png)
实验一:离散时间序列卷积和MATLAB 实现(一)实验目的1、掌握离散卷积计算方法;2、学会线性常系数差分方程的迭代解法;3、学会针对具体系统设计程序;(二)实验内容1、用MATLAB 画出如下表达式的脉冲序列()8.0() 3.4(1) 1.8(2) 5.6(3) 2.9(4)0.7(5)f n n n n n n n δδδδδδ=+-+-+-+-+-例如:x(1)=8.0; n=0:5;fn=[8.0 3.4 1.8 5.6 2.9 0.7]; stem(n,fn); xlabel('n'); ylabel('fn');nf n2、 计算卷积用MATLAB 计算序列{1 2 3 3 2 1 1}和序列{-1 2 0 1}的离散卷积。
首先用手工计算,然后用MATLAB 函数conv(x,y)编程验证。
MATLAB 部分参考程序如下: a=[1 2 3 3 2 1 1]; c=conv(a,b); M=length(c)-1; stem(n,c);xlabel('n'); ylabel('幅度');subplot(3,1,1); a=[1 2 3 3 2 1 1]; stem(a); subplot(3,1,2)b=[-1 2 0 1]; stem(b); subplot(3,1,3); c=conv(a,b); M=length(c)-1;stem(c);xlabel('n'); ylabel('幅度');3、参考教材P14页,使用通用卷积convu 函数,计算如下卷积已知h(n)=R 5(n+2),x(n)=3R 4(n-3),计算y(n)=x(n)*h(n)编程实现并在一幅图内分别画出h(n),x(n),y(n),标好横坐标与纵坐标。
subplot(3,1,1); h=ones(1,5);nh=-2;2; stem(h);xlabel('n'); ylabel('幅度'); subplot(3,1,2);x=3*ones(1,4);nx=3:6; stem(x);xlabel('n'); ylabel('幅度'); subplot(3,1,3); [y,ny]=convu(h,nh,x,nx); stem(y);xlabel('n'); ylabel('幅度');4、编写教材P31第15题的MATLAB 程序。
Matlab中的差分方程求解
![Matlab中的差分方程求解](https://img.taocdn.com/s3/m/c5fc96bad5d8d15abe23482fb4daa58da1111c69.png)
Matlab中的差分方程求解差分方程是微分方程的离散形式,常常在计算机科学、物理学、经济学等领域中广泛应用。
而Matlab作为一种数值计算软件,提供了强大的工具和函数用于差分方程的求解和分析。
本文将介绍Matlab中差分方程求解的基本方法和常见应用。
一、差分方程的基本概念差分方程是一种通过递归关系描述变量之间关系的数学表达式。
与微分方程不同,差分方程是以离散时间点为基础的,适用于描述离散系统的动态行为。
一般来说,差分方程可以分为线性差分方程和非线性差分方程两类。
线性差分方程的一般形式为:y[n] = a*y[n-1] + b*y[n-2] + ... + c*x[n],其中y[n]为方程的解,x[n]为给定的输入,a、b、c为系数。
而非线性差分方程则没有这种简单的表达形式,通常需要通过迭代或数值方法求解。
二、在Matlab中,可以利用函数和工具箱来求解差分方程。
下面将介绍几种常见的求解方法。
1. 符号计算方法Matlab的符号计算工具箱提供了一系列用于求解差分方程的函数,例如dsolve()函数。
这些函数可以根据给定的差分方程自动进行符号运算,得到方程的解析解。
符号计算方法适用于简单的线性差分方程,对于复杂的非线性差分方程则很难求解。
2. 数值迭代方法对于非线性差分方程,常常采用数值迭代的方法来求解。
Matlab提供了多种迭代函数,例如fsolve()函数和fminsearch()函数。
这些函数可以根据给定的差分方程和初始值,通过迭代计算得到方程的数值解。
数值迭代方法适用于各种类型的差分方程,但需要注意选择合适的初始值和迭代算法以确保收敛。
3. 差分方程求解函数除了符号计算和数值迭代方法,Matlab还提供了一些专门用于求解差分方程的函数,例如ode23()函数和ode45()函数。
这些函数可以根据给定的差分方程和初始条件,通过数值方法求解方程的数值解。
相比于数值迭代方法,差分方程求解函数更加高效和稳定,适用于大规模的复杂差分方程。
差分方程的解法分析及MATLAB实现
![差分方程的解法分析及MATLAB实现](https://img.taocdn.com/s3/m/a6bceb8488eb172ded630b1c59eef8c75fbf9588.png)
差分方程的解法分析及MATLAB实现差分方程是描述离散时序系统行为的数学工具。
在离散时间点上,系统的行为由差分方程给出,这是一个递归方程,其中当前时间点的状态取决于之前的状态和其他外部因素。
解差分方程的方法可以分为两类:直接解法和转化为代数方程的解法。
直接解法通过求解差分方程的递归形式来得到解析或数值解。
转化为代数方程的解法则将差分方程转化为代数方程进行求解。
一、直接解法的步骤如下:1.将差分方程表示为递归形式,即将当前时间点的状态表示为之前时间点的状态和其他外部因素的函数。
2.根据初始条件,确定初始时间点的状态。
3.根据递归形式,计算出后续时间点的状态。
以下是一个简单的差分方程的例子:y(n)=2y(n-1)+1,其中n为时间点。
按照上述步骤求解该差分方程:1.将差分方程表示为递归形式:y(n)=2y(n-1)+12.根据初始条件,假设y(0)=1,确定初始时间点的状态。
3.根据递归形式,计算出后续时间点的状态:y(1)=2y(0)+1=2*1+1=3y(2)=2y(1)+1=2*3+1=7y(3)=2y(2)+1=2*7+1=15...依此类推计算出所有时间点的状态。
二、转化为代数方程的解法的步骤如下:1.假设差分方程的解具有指数形式,即y=r^n,其中r为待定参数。
2.将差分方程代入上述假设中,得到r的方程。
3.解得r的值后,再根据初始条件求解出常数值。
4.得到差分方程的解析解。
以下是一个复杂一些的差分方程的例子:y(n)=2y(n-1)+3y(n-2),其中y(0)=1,y(1)=2按照上述步骤求解该差分方程:1.假设差分方程的解具有指数形式:y=r^n。
2.代入差分方程得到:r^n=2r^(n-1)+3r^(n-2)。
3.整理得到:r^2-2r-3=0。
4.解得r的值为:r1=-1,r2=35.根据初始条件求解出常数值:y(0)=c1+c2=1,y(1)=c1-c2=2、解得c1=1.5,c2=-0.56.得到差分方程的解析解:y(n)=1.5*(-1)^n+-0.5*3^n。
matlab实验二 离散信号的卷积和
![matlab实验二 离散信号的卷积和](https://img.taocdn.com/s3/m/d7fcbe6af5335a8102d220da.png)
(数字信号处理)实验报告实验名称 实验二 离散信号的卷积和 实验时间 年 月 日专业班级 学 号 姓 名成 绩 教师评语: 一、 实验目的1、掌握两个离散信号卷积和的计算方法和编程技术。
2、进一步熟悉用MATLAB 描绘二维图像的方法。
二、 实验原理与计算方法两个离散序列x(n)与y(n)的卷积和f(n)定义为∑∞-∞=-=*=m m n y m x n y n x n f )()()()()(由于通常信号处理中所碰到的都是有始信号或有限时间信号,因此在实际计算卷积和时,求和是在有限范围内进行的。
计算过程中上下限的选取和所得结果的分布区间取决于参与卷积的两个序列,下面将分别进行讨论: 1、两个从n = 0开始的序列)()()(n u n x n x =和)()()(n u n y n y =的卷积和∑∑=∞-∞=-=--=nm m n u m n y m x m n u m n y m u m x n f 0)()]()([)()()()()( (1)上式右边因子u(n)表示卷积和的结果也是一个从n = 0开始的序列。
2、从n = n1开始的序列)()()(1n n u n x n x -=和从n = n2开始的序列)()()(2n n u n y n y -=的卷积和,其中n1和n2为任意整数。
∑∑-=∞-∞=---=----=21)()]()([)()()()()(2121n n n m m n n n u m n y m x n m n u m n y n m u m x n f (2)上式右边因子u(n-n1-n2)表示卷积和是一个从n = n1+n2开始的序列。
3、从n = n1开始的长度为N1的加窗序列)()()(1n w n x n x N =和从n = n2开始的长度为N2的加窗序列)()()(2n w n y n y N =的卷积和,其中⎩⎨⎧-+≤≤=otherwise 0 1 1 )(1111N n n n n w N⎩⎨⎧-+≤≤=o t h e r w i s e 0 11 )(2222N n n n n w N则∑∞-∞=--=m N N m n w m n y m wm x n f )()()()()(21(3)所得卷积和也是一个加窗序列,从n = n1+ n2开始,长度为N1+ N2-1。
离散信号的MATLAB实现
![离散信号的MATLAB实现](https://img.taocdn.com/s3/m/7708c4f5f61fb7360b4c65d5.png)
1.9离散信号和系统分析的MATLAB实现1.9.1利用MATLAB产生离散信号用MATLAB表示一离散序列x[k]时,可用两个向量来表示。
其中一个向量表示自变量k的取值范围,另一个向量表示序列x[k]的值。
例如序列x[k]={2,1,1,-1,3,0,2}可用 MATLAB表示为K=-2:4;x=[2,1,1,-1,3,0,2]可用stem(k,f)画出序列波形。
当序列是从k=0开始时,可以只用一个向量x来表示序列。
由于计算机内寸的限制,MATLAB无法表示一个无穷长的序列。
例1-38利用MATLAB计算单位脉冲序4δ-k在-k≤]24[≤范围内各点的取值。
解:%progran 1_1 产生单位脉冲序列Ks=-4;ke=4;n=2;K=[ks:ke];X=[(k-n)==0];Stem(k,x):xlabel(‘k’);程序产生的序列波形如图1-49所示。
例1-39利用MATLAB画出信号X[k]=10sin(0.02kπ)+n[k], 1000≤≤k的波形。
其中n[k]表示为均值为0方差为1的Gauss分布随机信号。
解:MALAB提供了两个产生(伪)随机序列的函数。
Rand(1,N)产生1行N列的[0,1]均匀分布随机数。
Randn(1,N)产生1行N列均值为0方差为1的Gauss分布随机数。
%program 1_2 产生受噪声干扰的正弦信号N=100;k=0:N;X=10*sin(0.02*pi*k)+randn(1,N+1);Plot(k,x);Xlabel(‘k’);Ylabel(‘x[k]’);程序产生序列如图1-50所示。
1.9.2 离散卷积的计算离散卷积是数字信号处理中的一个基本运算,MTLAB提供的计算两个离散序列卷积的函数是conv,其调用方式为y=conv(x,h)其中调用参数x,h为卷积运算所需的两个序列,返回值y是卷积结果。
MATLAB函数conv的返回值y中只有卷积的结果,没有y的取值范围。
用MATLAB仿真离散系统差分方程
![用MATLAB仿真离散系统差分方程](https://img.taocdn.com/s3/m/8ad5ef00561252d380eb6ea3.png)
用MATLAB仿真离散系统差分方程1、设计题目f-nn+f-ynyyn=n-)2+())1(5.0())1.0(-(25系统输入序列为。
nf nε(n=))()5.0(2、设计要求1、试用MATLAB绘出输入序列的时域波形;2、用MATLAB求出该系统0~20区间的样值;3、用MATLAB画出系统的零状态响应波形。
3、功能分析差分方程反映的是关于离散变量的取值与变化规律。
通过建立一个或几个离散变量取值所满足的平衡关系,从而建立差分方程。
差分方程就是针对要解决的目标,引路系统或过程中的离散变量,根据实际背景的规律、性质、平衡关系,建立离散变量所满足的平衡关系等式,从而建立差分方程。
通过求出和分析方程的解,或者分析得到方程解的特别性质(平衡性、稳定性、渐近性、振动性周期性等),从而把握这个离散变量的变化过程的规律,进步再结合其他分析,得到原问题的解。
4、设计原理分析1、差分方程定义含有未知函数yt=f(t)以及yt的差分Dyt, D2yt,…的函数方程,称为常差分方程(简称差分方程);出现在差分方程中的差分的最高阶数,称为差分方程的阶。
n阶差分方程的一般形式为F(t,yt,Dyt,…,Dnyt)=0,其中F是t,yt, Dyt,…, Dnyt的已知函数,且Dnyt一定要在方程中出现。
含有两个或两个以上函数值yt,yt+1,…的函数方程,称为(常)差分方程,出现在差分方程中未知函数下标的最大差,称为差分方程的阶。
n阶差分方程的一般形式为F(t,yt,yt+1,…,yt+n)=0,其中F为t,yt,yt+1,…,yt+n 的已知函数,且yt和yt+n一定要在差分方程中出现。
2、差分方程的意义与应用差分方程模型有着广泛的应用。
实际上,连续变量可以用离散变量来近似逼近,从而微分方程模型就可以近似于某个差分方程模型。
差分方程模型有着非常广泛的实际背景。
在经济金融保险领域、生物种群数量结构规律分析、疫病和病虫害的控制与防治、遗传规律的研究等许许多多的方面都有着非常重要的的作用。
matlab离散循环卷积
![matlab离散循环卷积](https://img.taocdn.com/s3/m/0003b4b0bb0d4a7302768e9951e79b8969026865.png)
matlab离散循环卷积离散循环卷积是信号处理和数字信号处理中的一个重要概念。
在MATLAB中,可以使用内置函数`cconv`来实现离散循环卷积。
这个函数的语法为:matlab.c = cconv(a, b, N)。
其中,`a`和`b`是长度为`N`的向量,表示输入的两个信号;`N`是信号的长度;`c`是长度为`N`的向量,表示输出的卷积结果。
在MATLAB中,离散循环卷积的计算可以使用`cconv`函数,也可以手动编写代码来实现。
一种常见的实现方式是使用循环来计算离散循环卷积的结果。
下面是一个简单的示例代码:matlab.function c = my_cconv(a, b, N)。
c = zeros(1, N);for n = 1:N.for k = 1:N.j = mod(n k, N) + 1;c(n) = c(n) + a(k) b(j);end.end.end.这段代码实现了离散循环卷积的计算过程,首先创建一个长度为`N`的全零向量`c`,然后使用双重循环遍历输入信号`a`和`b`,根据离散循环卷积的定义进行计算,并将结果保存在向量`c`中。
除了使用`cconv`函数和手动编写代码,还可以使用快速傅立叶变换(FFT)来计算离散循环卷积,这种方法通常比直接计算更高效。
MATLAB中提供了`fft`和`ifft`函数来进行快速傅立叶变换和逆变换,可以利用这些函数来实现离散循环卷积的计算。
总之,离散循环卷积在信号处理和数字信号处理中具有重要的应用,MATLAB提供了多种方式来实现离散循环卷积的计算,包括使用`cconv`函数、手动编写计算代码以及利用快速傅立叶变换。
根据具体的应用场景和需求,可以选择合适的方法来实现离散循环卷积。
离散卷积的算法分析及MATLAB实现(程序实例)
![离散卷积的算法分析及MATLAB实现(程序实例)](https://img.taocdn.com/s3/m/dbf9da14c5da50e2524d7fbf.png)
离散卷积的算法分析及MATLAB实现(实例程序)摘自:张登奇,陈佳.离散卷积的算法分析及MATLAB实现[J].湖南理工学院学报(自然科学版). 2013(02)摘要:离散卷积是信号处理的基本运算,快速卷积和分段卷积是计算离散卷积的重要算法.文章以离散线性卷积的概念为基础,介绍了计算卷积的常用方法和运算流程,列举了MATLAB实现的程序.这些程序能动态演示卷积运算的全部过程,既可帮助理解卷积运算的原理流程,也可作为教学讲解的演示工具. 1、离散卷积常规算法的动态演示程序clear;clc;close all;format compact;xn=[5,4,3,2,1],M=length(xn),%输入任意序列并计算长度Mhn=[1,1,1],N=length(hn),%输入任意脉冲响应并计算长度Nm=[-(M-1):M+N-2],%设置代换变量的范围以便x(m)翻转和移位xm=[zeros(1,M-1),xn,zeros(1,N-1)],%补零以便与m对应绘图subplot(4,1,1);stem(m,xm,'r.'),%%绘输入序列x(m)ylabel('x(m)'), grid,title('(a) 输入序列x(m)'),%%加标签网格和标题hm=[zeros(1,M-1),hn,zeros(1,M-1)],%补零以便与m对应绘图subplot(4,1,2);stem(m,hm,'r.'),%%绘脉冲响应ylabel('h(m)'),grid,title('(b) 脉冲响应h(m)'),%%加标签网格和标题yn=zeros(1,2*M+N-2);%卷积输出初始化for n=0:M+N-2,%逐个计算卷积输出if n==0;xmfy=[fliplr(xn),zeros(1,M+N-2)],%实现翻转else for k=M:-1:1; xmfy(k+n)=xmfy(k+n-1);end ; xmfy(n)=0; xmfy,%实现翻转后移位并显示endsubplot(4,1,3);stem(m,xmfy,'b.'),%%绘制翻转移位序列ylabel('x(n-m)'), grid,title('(c) 翻转移位x(n-m)'),%%加标签网格和标题yn(M+n)=sum(xmfy.*hm);%计算第n位输出并与m位置对应subplot(4,1,4);stem(m,yn,'r.'),%%绘制卷积输出序列axis([min(m),max(m),min([0,conv(xn,hn)]),max([0,conv(xn,hn)])]),%%控制绘图坐标ylabel('y(n)'), grid,title('(d) 卷积输出y(n)'),%%加标签网格和标题pause,%每算完一位卷积输出后暂停,按任意键继续endyn, %显示线性卷积结果2、循环卷积运算过程的动态演示程序clc;close all;clear;format compact;xn=[5,4,3,2,1],M=length(xn),%输入任意序列并计算长度Mhn=[1,1,1],N=length(hn),%输入任意脉冲响应并计算长度NL=8,if L<max(M,N); L=max(M,N),end,%输入循环卷积的长度m=0:L-1,%设置代换变量并与两圆周上的编号对应xm=[xn,zeros(1,L-M)],%按圆周编号方向排列不足补零subplot(4,1,1);stem(m,xm,'r.'),%%绘输入序列x(m)ylabel('x(m)'),grid,title('(a) 输入序列x(m)'),%%加标签网格和标题hm=[hn,zeros(1,L-N)],%按圆周编号方向排列不足补零subplot(4,1,2);stem(m,hm,'r.'),%%绘脉冲响应h(m)ylabel('h(m)'),grid,title('(b) 脉冲响应h(m)'),%%加标签网格和标题ycn=zeros(1,L);%循环卷积输出初始化for n=0:L-1%逐个计算循环卷积xn_m=xm(mod(n-m,L)+1),%按圆周编号方向反排后正转n位subplot(4,1,3);stem(m,xn_m,'b.'),%%绘反排正转序列ylabel('x((n-m))L'),grid,title('(c) 反排正转x((n-m))L'),%%加标签网格和标题ycn(n+1)=sum(xn_m.*hm);%计算第n位循环卷积输出subplot(4,1,4);stem(m,ycn,'r.'),%%绘循环卷积输出序列axis([min(m),max(m),min([0,conv(xn,hn)]),max([0,conv(xn,hn)])]) %%控制绘图坐标ylabel('yc(n)'),grid,title('(d) 循环卷积yc(n)'),%%加标签网格和标题pause,%每算完一位循环卷积后暂停,按任意键继续endycn, %显示循环卷积结果3、快速算法计算线性卷积的程序clc;close all;clear;format compact;xn=[5,4,3,2,1], M=length(xn),%输入任意序列并计算长度Mhn=[1,1,1], N=length(hn),%输入任意脉冲响应并计算长度NL=2^nextpow2(M+N-1),%确定适合基2-FFT算法的长度xnL=[xn,zeros(1,L-M)], hnL=[hn,zeros(1,L-N)],%序列补零至L长Xk=fft(xnL); Hk=fft(hnL);%快速傅里叶变换Yk=Xk.*Hk; ycn=ifft(Yk),%对应相乘后求逆输出yn=conv(xn,hn),%与直接线性卷积结果对比4、重叠相加法进行线性卷积的动态演示程序clc;close all;clear;format compact;xn=[4,3,2,1,1,2,3,4,4,3,2,1,1,2],Lx=length(xn),%输入任意序列并计算长度Lxhn=[1,1,1,1],N=length(hn),%输入任意脉冲响应并计算长度NL=2^nextpow2(2*N),%确定适合基2-FFT算法的长度M=L-N+1,T=ceil(Lx/M),%计算每段的点数M及总段数Lxn=[xn,zeros(1,(T+1)*M-Lx)],%输入补零至最后缓存数据可以输出yn=zeros(1,(T+1)*M);%卷积输出变量初始化tn=zeros(1,N-1);%缓存变量初始化n=0:(T+1)*M-1,%序列号赋值nmin=min(n)-0.01;nmax=max(n)+0.01;%%确定绘图横坐标并保证能绘出首尾数据xnmin=min([0,xn]);xnmax=max([0,xn]);%%确定输入序列绘图纵坐标hnmin=min([0,hn]);hnmax=max([0,hn]);%%确定脉冲响应绘图纵坐标ynmin=min([0,conv(xn,hn)]);ynmax=max([0,conv(xn,hn)]); %%确定输出序列绘图纵坐标subplot(6,1,1);stem(n,xn,'r.'),%%绘输入序列x(n)axis([nmin,nmax,xnmin,xnmax]);%%控制绘图坐标ylabel('x(n)'),grid,title('(a) 输入序列x(n)'),%%加标签网格和标题subplot(6,1,2);stem(n,[hn,zeros(1,(T+1)*M-N)],'r.'),%%绘脉冲响应axis([nmin,nmax,hnmin,hnmax]);%%控制绘图坐标ylabel('h(n)'),grid,title('(b) 脉冲响应h(n)'),%%加标签网格和标题for i=0:T;disp('分段卷积段号:'),i, %依次分段处理并显示段号ix=i*M+1,%各段在MATLAB变量中的起始位置xi_seg=xn(ix:ix+M-1),%从输入序列中取出一段xin=zeros(1,(T+1)*M);%%为了只绘第i段输入序列先置零处理subplot(6,1,3);xin(ix:ix+M-1)=xn(ix:ix+M-1);stem(n,xin,'b.'), %% 绘第i段输入axis([nmin,nmax,xnmin,xnmax]);%%控制绘图坐标ylabel('xi(n)'),grid,title('(c)第i段输入xi(n)'),%%加标签网格和标题yi_seg=conv(xi_seg,hn),%分段卷积实际上是用快速算法且X(k)在循环前算出保存yin=zeros(1,(T+1)*M);%%为了只绘第i段输出序列先置零处理if i<T; yin(ix:ix+L-1)=yi_seg(1:L);else yin(ix:ix+M-1)=0;end,%%最后段输出特殊处理subplot(6,1,4);stem(n,yin,'b.'),%% 绘第i段输出axis([nmin,nmax,ynmin,ynmax]); %%控制绘图坐标ylabel('yi(n)'),grid,title('(d)第i段输出yi(n)'),%%加标签网格和标题tin=zeros(1,(T+1)*M);%%为了只绘前段缓存序列先置零处理subplot(6,1,5);tin(ix:ix+N-2)=tn(1:N-1);stem(n,tin,'b.'),%%绘前段缓存序列axis([nmin,nmax,ynmin,ynmax]); %%控制绘图坐标ylabel('t(n)'),grid,title('(e)前段缓存t(n)'),%%加标签网格和标题yi_seg(1:N-1)=yi_seg(1:N-1)+tn(1:N-1),%重叠相加运算yn(ix:ix+M-1)=yi_seg(1:M),tn(1:N-1)=yi_seg(M+1:L),%取前M个数据输出取后N-1个数据缓存subplot(6,1,6);stem(n,yn,'r.'),%%绘输出序列y(n)axis([nmin,nmax,ynmin,ynmax]); %%控制绘图坐标ylabel('y(n)'),grid,title('(f)卷积输出y(n)'),%%加标签网格和标题pause,%每算完一段后暂停,按任意键继续endyn=yn(1:Lx+N-1),conv(xn,hn),%取出线性卷积结果并与直算结果对比。
实验二离散序列卷积及及系统时域响应分析
![实验二离散序列卷积及及系统时域响应分析](https://img.taocdn.com/s3/m/6763582902020740be1e9b6c.png)
实验二 离散序列卷积及及系统时域响应分析一.实验目的学会运用MATLAB求解离散时间系统的零状态响应;学会运用MATLAB求解离散时间系统的单位脉冲响应;学会运用MATLAB求解离散时间系统的卷积和。
二.实验原理及实例分析1. 离散时间系统的响应离散时间LTI系统可用线性常系数差分方程来描述,即(2-1)其中,(,1,…,N)和(,1,…,M)为实常数。
MATLAB中函数filter可对式(2-1)的差分方程在指定时间范围内的输入序列所产生的响应进行求解。
函数filter的语句格式为y=filter(b,a,x)其中,x为输入的离散序列;y为输出的离散序列;y的长度与x的长度一样;b与a分别为差分方程右端与左端的系数向量。
由离散时间系统的频域分析法可知,线性时不变离散系统也可以用系统函数来表示:(2-2)其中a0=1。
MATLAB信号处理工具箱提供了一个dlsim( )函数,通过H(z)来求解任意输入的系统的零状态响应。
其调用方式为:y=dlsim(b,a,x);式中,b,a分别为系统函数H(z)中,由对应的分子项和分母项系数所构成的数组,x为输入序列。
【实例2-1】已知某LTI系统的差分方程为试用MATLAB命令绘出当激励信号为时,该系统的零状态响应。
解:MATLAB源程序为:a=1/3*[3 -4 2];b=1/3*[1 2 0];n=0:30;x=(1/2).^n;y=filter(b,a,x);stem(n,y,'fill'),grid onxlabel('n'),title('系统响应y(n)')程序运行结果如图2-1所示。
参考程序:clfa=[3 -4 2]/3;b=[1 2]/3;n=0:30;x=(1/2).^n;y=dlsim(b,a,x);stem(n,y,'fill');grid on;xlabel('n');title('系统响应y(n)');2 离散时间系统的单位脉冲响应系统的单位取样响应定义为系统在激励下系统的零状态响应,用表示。
离散序列卷积和(用matlab实现)
![离散序列卷积和(用matlab实现)](https://img.taocdn.com/s3/m/25c646926bec0975f465e289.png)
数字信号处理实验报告实验一 离散时间序列卷积和MATLAB 实现(一)实验目的:学会用MATLAB 对信号与系统分析的方法,理解离散序列卷积和的计算对进行离散信号与系统分析的重要性。
(二)实验原理:1、离散时间序列f1(k)和f2(k)的卷积和定义:f(k)=f1(k)*f2(k)=∑∞-∞=-•i i k f i f )(2)(12、在离散信号与系统分析中有两个与卷积和相关的重要结论:a 、f(k)=∑∞-∞=-•i i k i f )()(δ=f(k)* δ(k)即离散序列可分解为一系列幅度由f(k)决定的单位序列δ(k)及其平移序列之积。
b 、对线性时不变系统,设其输入序列为f(k),单位响应为h(k),其零状态响应为y(k),则有:y(k)=∑∞-∞=-•i i k h i f )()(3、上机:conv.m 用来实现两个离散序列的线性卷积。
其调用格式是:y=conv(x,h)若x 的长度为N ,h 的长度为M ,则y 的长度L=N+M-1。
(三)实验内容1、题一:令x(n)= {}5,4,3,2,1,h(n)={}246326,,,,,,y(n)=x(n)*h(n),求y(n)。
要求用subplot 和stem 画出x(n),h(n),y(n)与n 的离散序列图形。
源程序: N=5; M=6;L=N+M-1; x=[1,2,3,4,5]; h=[6,2,3,6,4,2]; y=conv(x,h); nx=0:N-1; nh=0:M-1; ny=0:L-1;subplot(131); stem(nx,x,'*k'); xlabel('n'); ylabel('x(n)'); grid on ;subplot(132); stem(nh,h,'*k'); xlabel('n'); ylabel('h(n)'); grid on ;subplot(133); stem(ny,y,'*k'); xlabel('n'); ylabel('y(n)'); grid on ;实验结果:24nx (n)5nh (n )510ny (n )分析实验结果:根据实验结果分析可知,实验所得的数值跟x (n )与y (n )所卷积的结果相同。
实验2 离散系统的差分方程和卷积
![实验2 离散系统的差分方程和卷积](https://img.taocdn.com/s3/m/6404b9ee524de518964b7dee.png)
实验2 离散系统的差分方程、冲激响应和卷积分析一、 实验目的1、 熟悉并掌握离散系统的差分方程表示法;2、 加深对冲激响应和卷积分析方法的理解。
二、 实验原理(一),1. 单位抽样序列⎩⎨⎧=01)(n δ 00≠=n n在MATLAB 中可以利用zeros()函数实现。
;1)1();,1(==x N zeros x如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ 0≠=n kn2.单位阶越序列⎩⎨⎧01)(n u 00<≥n n在MATLAB 中可以利用ones()函数实现。
);,1(N ones x =3.正弦序列)/2sin()(ϕπ+=Fs fn A n x在MATLAB 中)/***2sin(*1:0fai Fs n f pi A x N n +=-= 4.复正弦序列n j e n x ϖ=)( 在MATLAB 中)**exp(1:0n w j x N n =-= 5.指数序列n a n x =)( 在MATLAB 中na x N n .^1:0=-= (二) 在时域中,离散时间系统对输入信号或者延迟信号进行运算处理,生成具有所需特性的输出信号,具体框图如下其输入、输出关系可用以下差分方程描述:∑=∑=-=-M k k N k k k n x p k n y d 00][][输入信号分解为冲激信号,∑-=∞-∞=m m n m x n x ][][][δ。
记系统单位冲激响应][][n h n →δ,则系统响应为如下的卷积计算式:∑∞-∞=-=*=m m n h m x n h n x n y ][][][][][ 当N k d k ,...2,1,0==时,h[n]是有限长度的(n :[0,M]),称系统为FIR 系统;反之,称系统为IIR 系统。
三、 预习要求(1) 在MATLAB 中,熟悉利用函数y=filter(p,d,x)实现差分方程的仿真;(2) 在MATLAB 中,熟悉用函数 y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统冲激响应的过程。
实验1 利用matlab进行系统的时域分析
![实验1 利用matlab进行系统的时域分析](https://img.taocdn.com/s3/m/f1146ed6852458fb760b565c.png)
实验1 利用matlab进行系统的时域分析一.实验目的:1.了解离散时间序列卷积和的matlab实现;2.利用卷积和求解系统的零状态响应;二.实验原理:1.连续时间系统零状态响应的求解连续时间LTI系统以常系数微分方程描述,系统的零状态响应可通过求解初始状态为零的微分方程得到。
在MATLAB中,控制系统工具箱提供了一个用于求解零初始状态微分方程数值解的函数lsim。
其调用方式为y= lsim( sys,x,t)式中t表示计算系统响应的抽样点向量,x是系统输入信号向量,sys是连续时间LTI系统模型,用来表示微分方程、差分方程、状态方程。
在求解微分方程时,微分方程的连续时间LTI系统模型sys要借助tf函数获得,其调用方式为sys= tf(b,a)式中b和a分别为微分方程右端和左端各项的系数向量。
例如对3阶微分方程+++=+++可用a=[ a3, a2, a1, a0];b=[b3 ,b2, b1,b0]; sys=tf( b,a)获得连续时间LTI模型。
注意微分方程中为零的系数一定要写入向量a和b中。
【例2-1】描述某力学系统中物体位移y(t)与外力f(t)的关系为++y(t)=x(t)物体质量m=l kg,弹簧的弹性系数ks= 100 N/m,物体与地面的摩擦系数fd=2 N·s/m,系统的初始储能为零,若外力x(t)是振幅为10、周期为1的正弦信号,求物体的位移y(t)。
解:由已知条件,系统的输入信号为x(t)=10sin(2πt),系统的微分方程为++100y(t)=x(t)计算物体位移y(t)的MATLAB程序如下:%program2_1微分方程求解ts=0;te=5;dt=0.01;sys=tf([1],[1 2 100]);t=ts:dt:te;x=10*sin(2*pi*t);y=lsim(sys,x,t);plot(t,y);xlabel('Time(sec)') ylabel('y(t)')Time(sec)y (t )图2-1系统的零状态响应2.连续时间系统冲激响应和阶跃响应的求解在MATLAB 中,求解系统冲激响应可应用控制系统工具箱提供的函数impulse ,求解阶跃响应可利用函数step 。
实验2离散序列的卷积和系统差分方程的MATLAB实现示
![实验2离散序列的卷积和系统差分方程的MATLAB实现示](https://img.taocdn.com/s3/m/b68a5c1a4a7302768e993990.png)
信息工程学院实验报告课程名称:数字信号处理实验项目名称:实验2 离散序列的卷积和系统差分方程的MATLAB 实现示 实验时间: 班级: 姓名: 学号:一、实 验 目 的:熟悉序列的卷积运算及其MATLAB 实现;熟悉离散序列的傅里叶变换理论及其MATLAB 实现;加深对离散系统的差分方程和系统频率响应的理解。
二、实 验 设 备 与 器 件MATLAB 2008软件三、实 验 原 理3.1离散序列卷积运算的MATLAB 实现两序列的线性卷积定义为:()*()()()k x n y n x k y n k ∞=-∞=-∑MATLAB 提供了一个内部函数conv(x,h)来计算两个有限长序列之间的卷积。
3.2离散系统差分方程的MATLAB 求解方法对于时域离散系统,可用差分方程描述或研究输入、输出之间的关系。
对于线性时不变系统,经常用的是线性常系数差分方程。
一个N 阶线性常系数差分方程用下式表示:()()N Miii i b y n i a x n i ==-=-∑∑当0,1,2,,i b i N ==时,[]h n 是有限长度的,称系统为FIR 系统;反之,称系统为IIR 系统。
在MATLAB 中,可以用函数filter(a,b,x)求解差分方程,其中参数a,b 分别系统函数的分子和分母多项式的系数。
四、实 验 内 容 与 结 果 分 析4.1已知1(){1,1,1,1,1}x n =,2(){1,1,1,1,1,1,1}x n =,计算12()()*()y n x n x n =。
指令语句如下:N=5;M=7;L=N+M-1;x1=[1,1,1,1,1]; nx1 =0:N-1; x2=[1,1,1,1,1,1,1]; nx2=0:M-1; y=conv(x1,x2); ny=0:L-1;subplot(1,3,1);stem(nx1,nx1,'.');xlabel('n');ylabel('x1(n)');grid on;subplot(1,3,2);stem(nx2,nx2,'.');xlabel('n');ylabel('x2(n)');grid on; subplot(1,3,3);stem(ny,y,'.');xlabel('n');ylabel('y(n)');grid on;执行结果如图4-1所示:图4-14.2 求系统:()0.5((1)(2)(3)(4))y n x n x n x n x n =-+-+-+-的单位冲激响应和阶跃响应。
离散系统的差分方程,冲击响应和卷积分析
![离散系统的差分方程,冲击响应和卷积分析](https://img.taocdn.com/s3/m/48759a6c7e21af45b307a832.png)
实验报告专业:班级:指导老师:姓名:学号:实验室:实验名称:离散系统的差分方程,冲击响应和卷积分析时间:一,实验目的及要求(一)实验目的加深对离散系统的差分方程,冲击响应和卷积分析的理解二,实验要求给出理论计算结果和程序计算结果并讨论(二)实验原理在matlab中,可以用函数y=Filter(p,d,x)求解差分方程,也可以用函数y=Conv(x,h)计算卷积。
三,实验内容(1)卷积的计算n=1:50;hb=zeros(1,50);hb(1)=1;hb(2)=2.5;hb(3)=2.5;hb(4)=1;close allsubplot(3,1,1);stem(hb);title('25FF.系统hb[n]');m=1:50;A=444.128;a=50*sqrt(2.0)*pi;T=0.001;w0=50*sqrt(2.0)*pi;x=A*exp(-a*m*T).*sin(w0*m*T);subplot(3,1,2);stem(x);title('25FF.输入信号x[n]'); y=conv(x,hb);subplot(3,1,3);stem(y);title('25FF.输出信号y[n]'); (2)卷积定律验证k=-25:25;X=x*(exp(-j*pi/12.5)).^(n'*k);magX=abs(X);subplot(3,2,1);stem(magX);title('25FF.输入信号的幅度谱');angX=angle(X);subplot(3,2,2);stem(angX);title('25FF.输入信号的相位谱');Hb=hb*(exp(-j*pi/12.5)).^(n'*k);magHb=abs(Hb);subplot(3,2,3);stem(magHb);title('25FF.系统响应的幅度谱');angHb=angle(Hb);subplot(3,2,4);stem(angHb);title('25FF.系统响应的相位谱');n=1:99;k=1:99;Y=y*(exp(-j*pi/12.5)).^(n'*k);magY=abs(Y);subplot(3,2,5);stem(magY);title('25FF.输出信号的幅度谱');angY=angle(Y);subplot(3,2,6);stem(angY);title('25FF.输出信号的相位谱');XHb=X.*Hb;Subplot(2,1,1);stem(abs(XHb));title('25FF.x(n)的幅度谱与hb(n)幅度谱相乘'); Subplot(2,1,2);stem(abs(Y));title('25FF.y(n)的幅度谱');axis([0,60,0,8000])编制程序求解下列两个系统的单位冲击响应和阶跃响应,并绘出其图形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息工程学院实验报告
课程名称:数字信号处理 实验项目名称:离散序列的卷积和系统差分方程的MATLAB 实现 实验时间:
班级:电信131 姓名: 学号:201311404113
一、 实 验 目 的:
熟悉序列的卷积运算及其MATLAB 实现;熟悉离散序列的傅里叶变换理论及其MATLAB 实现;加深对离散系统的差分方程和系统频率响应的理解。
二、实 验 原 理
1、MA TLAB 提供了一个内部函数conv(x,h)来计算两个有限长序列之间的卷积。
2、对于时域离散系统,可用差分方程描述或研究输入、输出之间的关系。
对于线性时不变系统,经常用的是线性常系数差分方程。
一个N 阶线性常系数差分方程用下式表示:
()()
N M
i
i
i i b y n i a x n i ==-=-∑∑
当
0,1,2,,i b i N == 时,[]h n 是有限长度的,称系统为FIR 系统;反之,称系统为IIR 系统。
在MA TLAB 中,可以用函数filter(a,b,x)求解差分方程,其中参数a,b 分别系统函数的分子和分母多项式的系数。
三、实 验 内 容 与 步 骤
实验内容: 1、已知
1(){1,1,1,1,1}x n =,2(){1,1,1,1,1,1,1}x n =,计算12()()*()y n x n x n =。
2、在0到π区间画出矩形序列
10()R n (其定义见例1-3)的离散时间傅里叶变换(含幅度和相位)。
3、求系统:()0.5((1)(2)(3)(4))y n x n x n x n x n =-+-+-+-的单位冲激响应和阶跃响应。
实验步骤: 1、
2、
-2
2
4
n x (n )
-2
2
4
n h (n )
-5
05
10
00.511.5
22.533.5
44.555.5n y (n )
-8
-6-4-2
02468
Frequency
|X |
-8
-6-4-2
02468
Frequency
A n g l e
3、
n
单位冲激响应
02468
101214161820
n
单位阶跃响应
四、思考题
1什么是共轭对称性?结合例2-3加以分析:
共轭对称性就是正负频率幅度分量是对称的,而其相位分量正好相反。
2理论计算实验内容3.3中的单位冲激响应和阶跃响应,并同实验结果加以比较。
经计算证明,单位冲激响应和阶跃响应理论计算结果和实验结果一样。
3 指出例2.3和例2.5图中横坐标所代表含义的不同。
例2.3中横坐标是以弧度为单位,而例2.5图中横坐标是以数值为单位。