实验一离散序列卷积实验报告.doc实验一:离散时间序列卷积和 MATLAB 实现
简述实验目的及实验原理
1、掌握离散卷积计算方法;
2、学会线性常系数差分方程的迭代解法;
3、学会针对具体系统设计程序;
实验内容
1、用MATLA计算序列{-2 0 1 - 1 3}和序列{1 2 0 -1} 的离散卷积。
首先用手工计算,然后用MATLA函数conv(x,y)编程验证。人工计算序列x(n)、h(n) 的卷积结果并与计算机计算结果相比较, 给出笔算和计算机计算的结果对照表, 画出图 形。
-2 0 1 -1 3
* 1 2 0 -1
2 0 -1 1 -3
-4 0 2 -2 6
-2 0 1 -1 3
-2 -4 1 3 1 5 1 -3
写出程序代码
a=[-2 0 1 -1 3];
b=[1 2 0 -1];
c=conv(a,b); % 对 a,b 序列进行卷积
M=length(c)-1;
n=0:1:M;
stem(n,c); % 画卷积的图
xlabel('n'); ylabel(' 幅度 ');
仿真图形及相关分析 卷积的长度等于两序列的长度相加减一
n
2、参考教材P14页,使用通用卷积convu函数,计算如下卷积
已知h(n)=R6(N-4), x(n)=2R3(N-3),计算y(n)=x(n)*h(n)编程实现并在一幅图内分别画出 h(n),x(n),y(n),标好横坐标与纵坐标。
(1) 写出程序代码
con 文件
function [y,ny]=convu(h,nh,x,nx)% 定义函数 convu
nys=n h(1)+nx(1); nyf=n h(e nd)+nx(e nd);%e nd 表示最后一个元素的下标
y=c on v(h,x); ny=nys:nyf;
程序
h=o nes(1,6); nh=4:9;
x=2*o nes(1,3); nx=3:5;
[y,ny]=con vu(h ,n h,x ,nx) %y(n)=h(x)*x( n)
subplot(3,1,1) % 把画图屏幕分为 3*1,画第一张图
stem( nh,h)
xlabel(' n'),ylabel('h( n)')
subplot(3,1,2)
stem( nx,x)
xlabel(' n'),ylabel('x( n)')
subplot(3,1,3)
stem( ny,y)
xlabel(' n'),ylabel('y( n)')
(2)仿真图形及相关分析
1
(2)仿真图形及相关分析
2
1
0
10
5
0
10
ii
12
13
14
n
4
1
5
1
6
1
n
7
1
8
1
9
-
1
1
]
1
1
1
||
1
1
屮
3
4
n
5
0
1
(2)仿真图形及相关分析
3、编写教材P31第15题的MATLAB?序,标出关键语句的含义,并画出输入和输出图 形。
(1)写出
实验一离散序列卷积实验报告 来自淘豆网m.daumloan.com转载请标明出处.