MATLAB实验报告卷积
实验三 信号卷积的MATLAB实现

实验三信号卷积的MATLAB实现一、实验名称:信号卷积的MATLAB实现二、实验目的:1.增加学生对卷积的认识2.了解MATLAB这个软件的一些基础知识3.利用MATLAB计算信号卷积4.验证卷积的一些性质三、实验原理:用MATLAB实现卷积我们先必须从信号下手,先把信号用MATLAB语句描述出来,然后再将这些信号带入到我们写好的求卷积的函数当中来计算卷积。
在本章中我们将信号分为连续信号和离散序列两种来实现卷积并验证卷积的一些性质。
MATLAB强大的图形处理功能及符号运算功能,为我们实现信号的可视化提供了强有力的工具。
在MATLAB中通常有两种方法来表示信号,一种是用向量来表示信号,另一种则是用符号运算的方法来表示信号。
用适当的MATLAB 语句表示出信号后,我们就可以利用MATLAB的绘图命令绘制出直观的信号波形。
连续时间信号,是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干不连续点以外,信号都有确定的值与之对应的信号。
从严格意义上来讲,MATLAB并不能处理连续信号,在MATLAB中,是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。
在MATLAB中连续信号可用向量或符号运算功能来表示。
1.向量表示法对于连续时间信号f(t),我们可以用两个行向量f和t来表示,其中向量t是行如t=t1:p:t2的MATLAB命令定义的时间范围向量,t1为信号起始时间,t2为中止时间,p为时间间隔。
向量f为连续信号f(t)在向量t所定义的时间点上的样值。
例如对于连续信号f(t)=sin(t),我们可以用如下两个向量来表示:t=-10:1.5:10;f=sin(t)用上述向量对连续信号表示后,就可以用plot命令来绘出该信号的时域波形。
Plot命令可将点与点间用直线连接,当点与点间的距离很小时,绘出的图形就成了光滑的曲线。
命令如下:plot(t,f)title(‘f(t)=sint’)xlabel(‘t’)axis([-10,10,-1.1,1.1])绘制的信号波形如图3.1所示,当把时间间隔p取得更小(如0.01)时,就可得到sint较好的近似波形,如图3.2所示。
离散序列卷积(matlab实现)

数字信号处理实验报告实验一 离散时间序列卷积和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 )所卷积的结果相同。
实验报告信号卷积实验

一、实验目的1. 理解卷积的概念及其物理意义。
2. 掌握卷积运算的原理和方法。
3. 通过实验加深对卷积运算在实际应用中的理解。
二、实验原理1. 卷积的定义:卷积是一种线性运算,它描述了两个信号在时域上的相互作用。
对于两个连续时间信号f(t)和g(t),它们的卷积定义为:F(t) = ∫f(τ)g(t-τ)dτ其中,F(t)是卷积结果,f(τ)是信号f(t)的任意时刻的值,g(t-τ)是信号g(t)在时刻t-τ的值。
2. 卷积的性质:卷积具有交换律、结合律和分配律等性质。
其中,交换律是指f(t)和g(t)的卷积与g(t)和f(t)的卷积相等;结合律是指三个信号f(t)、g(t)和h(t)的卷积可以分别进行两两卷积后再进行一次卷积;分配律是指一个信号与两个信号的卷积等于该信号分别与两个信号卷积后的和。
三、实验内容1. 实验一:连续时间信号卷积实验(1)选用信号:选取两个连续时间信号f(t)和g(t),其中f(t)为矩形脉冲信号,g(t)为指数衰减信号。
(2)卷积计算:根据卷积的定义,计算f(t)和g(t)的卷积F(t)。
(3)结果分析:观察F(t)的波形,分析卷积结果的物理意义。
2. 实验二:离散时间信号卷积实验(1)选用信号:选取两个离散时间信号f[n]和g[n],其中f[n]为单位阶跃信号,g[n]为矩形脉冲信号。
(2)卷积计算:根据离散时间信号卷积的定义,计算f[n]和g[n]的卷积F[n]。
(3)结果分析:观察F[n]的波形,分析卷积结果的物理意义。
3. 实验三:MATLAB仿真实验(1)选用信号:选取两个连续时间信号f(t)和g(t),其中f(t)为正弦信号,g(t)为余弦信号。
(2)MATLAB编程:利用MATLAB的信号处理工具箱,编写程序实现f(t)和g(t)的卷积运算。
(3)结果分析:观察MATLAB仿真得到的卷积结果,分析其物理意义。
四、实验结果与分析1. 实验一:连续时间信号卷积实验(1)实验结果:通过计算得到f(t)和g(t)的卷积F(t)的波形。
matlab卷积实验的内容

matlab卷积实验的内容卷积是数学和信号处理领域中常用的运算方法,可以用于信号滤波、图像处理、模拟电路等方面。
在Matlab中,卷积是一个常见的操作,可以利用卷积函数对信号进行处理。
在Matlab中,可以使用conv函数进行卷积运算。
conv函数的基本语法是:y = conv(x1, x2)其中x1和x2是要进行卷积运算的两个向量,y是卷积运算的结果。
卷积运算的结果长度是两个向量长度之和减1。
在进行卷积运算之前,我们先来了解一下卷积的原理。
数学上,卷积运算可以通过对两个函数进行积分得到。
对于离散信号来说,卷积运算可以通过对两个向量进行逐点相乘然后求和得到。
在Matlab中,我们可以通过创建两个向量来进行卷积运算的实验。
下面是一个简单的示例:x1 = [1 2 3 4];x2 = [0.1 0.2 0.3 0.4];y = conv(x1, x2)运行上述代码得到的结果是:y = [0.1 0.4 0.8 1.3 1.6 1.2]可以看到,卷积运算的结果是一个长度为6的向量。
这个结果的计算过程是:0.1*1 + 0.2*2 + 0.3*3 + 0.4*4 = 0.1 + 0.4 + 0.9 + 1.6 = 1.2。
除了使用conv函数外,Matlab还提供了一个更高级的卷积函数,即conv2函数。
conv2函数可以进行二维卷积运算,常用于图像处理。
假设我们有一个2x2的图像矩阵和一个3x3的卷积核,我们可以使用conv2函数对图像进行卷积运算。
下面是一个简单的示例:image = [1 2; 3 4];kernel = [0.1 0.2 0.3; 0.4 0.5 0.6; 0.7 0.8 0.9];result = conv2(image, kernel)运行上述代码得到的结果是:result = [4.0000 5.8000 7.0000; 7.6000 11.0000 9.8000;7.3000 10.2000 9.2000]可以看到,卷积运算的结果是一个3x3的矩阵。
用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 ; 实验结果:nx (n)nh (n)ny (n )分析实验结果:根据实验结果分析可知,实验所得的数值跟x (n )与y (n )所卷积的结果相同。
离散序列卷积(matlab实现)

离散序列卷积(matlab实现)————————————————————————————————作者:————————————————————————————————日期:数字信号处理实验报告实验一 离散时间序列卷积和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 ;实验结果:2400.511.522.533.544.55nx (n )5123456nh (n )510010203040506070ny (n )分析实验结果:根据实验结果分析可知,实验所得的数值跟x (n )与y (n )所卷积的结果相同。
信号分析与处理MATLAB仿真实验报告

信号分析与处理MATLAB仿真实验报告2009.12.25院系:电气工程学院专业: 自动化班级:姓名:学号:实验7 离散时间序列的卷积实验目的:学会用MATLAB实现对离散时间序列的卷积,掌握利用h(n) 与输入x(n)卷积来求系统零状态响应的方法。
实验要求:使用MATLAB中求卷积函数的conv(),并对结果分析总结。
实验内容:LTI系统的单位脉冲响应为h(n)=(0.9)n ε(n),输入序列为x(n)=ε(n)- ε(n-10),求系统的输出y(n)。
程序function [y,ny]=conv_m(x,nx,h,nh);y=conv(x(5:45),h);ny=nh;y=y(1:41);subplot(3,1,1);stem(nx,x,'filled');axis([-4,40,0,1]);title('x[n]');subplot(3,1,2);stem(nh,h,'filled');axis([-4,40,0,1]);title('h[n]');subplot(3,1,3);stem(ny,y,'filled');axis([-4,40,0,8]);title('y[n]');实验结果:结果分析:改变参数以后的程序:function [y,ny]=conv_m(x,nx,h,nh);y=conv(x(5:45),h);ny=nh;y=y(1:41);subplot(3,1,1);stem(nx,x,'filled');axis([-4,40,0,1]);title('x[n]'); subplot(3,1,2);stem(nh,h,'filled');axis([-4,40,0,1]);title('h[n]'); subplot(3,1,3);stem(ny,y,'filled');axis([-4,40,0,2]);title('y[n]');输出结果:实验8 连续时间信号的卷积实验目的:学会用MATLAB实现对连续时间信号的卷积,掌握利用卷积的方法求系统零状态响应,并与离散系统比较。
卷积编码实验报告

实验名称:___ 卷积编码_______1、使用MATLAB进行卷积编码的代码编写、运行、仿真等操作;2、熟练掌握MATLAB软件语句;3、理解并掌握卷积编码的原理知识。
二、实验原理卷积码是由Elias于1955 年提出的,是一种非分组码,通常它更适用于前向纠错法,因为其性能对于许多实际情况常优于分组码,而且设备较简单。
卷积码的结构与分组码的结构有很大的不同。
具体地说,卷积码并不是将信息序列分成不同的分组后进行编码,而是将连续的信息比特序列映射为连续的编码器输出符号。
卷积码在编码过程中,将一个码组中r 个监督码与信息码元的相关性从本码组扩展到以前若干段时刻的码组,在译码时不仅从此时刻收到的码组中提取译码信息,而且还可从与监督码相关的各码组中提取有用的译码信息。
这种映射是高度结构化的,使得卷积码的译码方法与分组译码所采用的方法完全不同。
可以验证的是在同样复杂度情况下,卷积码的编码增益要大于分组码的编码增益。
对于某个特定的应用,采用分组码还是卷积码哪一种更好则取决于这一应用的具体情况和进行比较时可用的技术。
(一)卷积编码的图形表示卷积码的编码器是由一个有k 个输人位,n 个输出位,且有m 个移位寄存器构成的有限状态的有记忆系统,其原理如图1所示。
图1 卷积码编码器的原理图描述这类时序网络的方法很多,它大致可分为两大类型:解析表示法与图形表示法。
在解析法中又可分为离散卷积法、生成矩阵法、码多项式法等;在图形表示法中也可分为状态图法、树图法和网络图法等。
图2给出的是一个生成编码速率为1/2 卷积码的移位寄存器电路。
输人比特在时钟触发下从左边移人到电路中,每输入一位,分别去两个模2加法器的输出值并复用就得到编码器的输出。
对这一编码,每输入一比特就产生两个输出符号,故编码效率为1/2。
可以看出,每个特定的输入比特不仅影响本时间间隔内的编码器输出,同时还影响紧接着的下两个输入比特时间间隔的编码器输出。
卷积编码由移位寄存器的阶数、输出的数量(即模2加法器的个数)和移位寄存器与模2 加法器间的连接所决定。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
学院:机电班级:姓名:学号:
实验名称:连续时间信号卷积运算的MATLAB实现
1.实验目的:掌握卷积的概念及计算方法
2.熟悉通过调用conv()函数求解连续时间信号卷积的数值分析
法
实验环境:MATLAB 6.5.1软件
实验要求:
1、已知信号f1(t)=t/2*[ε(t)- ε(t-2)], f2(t)= [ε
(t)- ε(t-1)],通过调用conv()函数编程实现卷积计算y(t)= f1(t)* f2(t),画出波形。
2、已知信号f(t)=e-t *ε(t), h(t)= t2 *e-2t *ε(t),y(t)=
f(t)* h(t)
(1)用符号分析法编程实现计算y(t)的理论解;
(2)过调用conv()函数编程实现卷积计算y(t)的数值解并画图
实验程序及结果:
第一题:
M文件
(1) function f=uCT(t)
f=(t>=0);
主程序:
k1=0:p:2;
k2=0:p:1;
f1=k1/2.*[uCT(k1)-uCT(k1-2)]; f2=uCT(k2)-uCT(k2-1);
y=conv(f1,f2)*p;
k0=k1(1)+k2(1);
k3=length(f1)+length(f2)-2; k=k0:p:k3*p+k0;
subplot(311)
plot(k1,f1);
xlabel('t')
ylabel('f1(t)')
axis([-0.5 2.5 -0.5 1.5])
grid on
subplot(312);
plot(k2,f2)
grid on
axis([-0.5 2.5 -0.5 1.5]) xlabel('t')
ylabel('f2(t)')
subplot(313)
axis([-0.5 4 -0.5 1.5])
grid on
xlabel('t')
ylabel('f1(t)*f2(t)')
实验结果:
第二题:
M文件
function f=uCT(t)
f=(t>=0);
主程序:
syms tao
>> t=sym('t','positive');
>> f=exp(-t);
>> h=t^2*exp(-2*t);
>> fh_tao=subs(f,t,tao)*subs(h,t,t-tao); >> yt=int(fh_tao,0,t)
yt =
-(-2*exp(t)+t^2+2*t+2)/exp(t)^2
p=0.01;
k1=0:p:3;
k2=0:p:12;
f=exp(-k1).*uCT(k1);
h=(k2).^2.*exp(-2.*k2).*uCT(k2);
y=conv(f,h)*p;
k0=k1(1)+k2(1);
k3=length(f)+length(h)-2;
k=k0:p:k3*p+k0;
subplot(221)
plot(k1,f);
xlabel('t')
ylabel('f(t)')
grid on
axis([-0.5 3.5 -0.5 1.5])
subplot(222)
plot(k2,h);
xlabel('t')
ylabel('h(t)')
grid on
axis([-0.5 11 -0.05 0.2])
subplot(223)
plot(k,y);
grid on
xlabel('t')
ylabel('f(t)*h(t)数值')
axis([-0.5 15 -0.01 0.1])
subplot(224)
yt =-(-2.*exp(k)+k.^2+2.*k+2)./exp(k).^2; plot(k,yt);
grid on
xlabel('t')
ylabel('f(t)*h(t)理论') axis([-0.5 15 -0.01 0.1]) 实验结果:。