%width为矩形脉冲宽度
% 函数调用格式:[t,y]=exp1_rectimpulse(10,1,-10,10,0.1,2); t=t1:dt:t2;
y=E*rectpuls(t-t0,width);%标准矩形脉冲,有个t0的时移 plot(t,y); xlabel('t') ylabel('y(t)')
title('矩形脉冲信号') xy_axis=axis;
axis([xy_axis(1:2) 1.5*xy_axis(3:4)-0.1])
实验要求:1)要求产生矩形脉冲幅值为X,脉宽为2,脉冲中心点为X的矩形脉冲信号,其中X为自己的学号中最后两位;(2)要求画出图形
(5)正弦信号
function [t,y]=exp1_sin(t1,t2,dt,A,w)
%正弦信号,其中t1,t2,dt分别为起始时间、终止时间和时间间隔 %A,W为幅度和角频率参数
% 函数调用格式:[t,y]=exp1_sin(-10,10,0.1,10,1); t=t1:dt:t2; y=A*sin(w*t); plot(t,y)
title('正弦信号') xlabel('t') ylabel('y(t)')
实验要求:1)要求产生幅值为X,角频率为3.14的正弦信号,其中X为自己的学号中最后两位;(2)要求画出图形
(6)单位脉冲序列
function [n,y]=exp1_dimpluse(k1,k2,dt,k0)
%离散单位冲激信号,其中k1,k2,dt分别为起始时间、终止时间和时间间隔,dt要求为整数 %k0为冲激点
% 函数调用格式:[n,y]=exp1_dimpluse(-10,10,1,0); n=k1:dt:k2; nl=length(n); y=zeros(1,nl);
y(1,round((k0-k1)/dt)+1)=1; stem(n,y,'filled')
6
title('单位冲激序列')
实验要求:1)要求产生冲激点在X处的单位冲激函数,其中X为自己的学号中最后两位;2)要求画出图形
(7)单位阶跃序列
function [n,y]=exp1_dstep(k1,k2,k0)
%离散单位阶跃信号,其中k1,k2分别为起始时间、终止时间,默认时间间隔为1 %k0为阶跃跳变点
% 函数调用格式:[n,y]=exp1_dstep(-10,10,3); k=k1:k0-1; kk=k0:k2; n=length(k); nn=length(kk); u=zeros(1,n); uu=ones(1,nn); n=[k kk];y=[u uu]; stem(n,y,'filled') title('单位阶跃序列')
实验要求:1)要求产生阶跃跳变点在X处的单位阶跃函数,其中X为自己的学号中最后两位;(2)要求画出图形
(8)单位矩形序列
function [n,y]=exp1_drectimpulse(k1,k2,k0,width,E)
%离散矩形脉冲信号,其中k1,k2分别为起始时间、终止时间,默认时间间隔为1 %k0为阶跃跳变点 %E高度,width脉宽
% 函数调用格式:[n,y]=exp1_drectimpulse(-10,10,0,1,3); k=k1:k0-1;
kk=k0:width+k0; kkk=width+k0+1:k2 n=length(k); nn=length(kk); nnn=length(kkk); u=zeros(1,n); uu=E*ones(1,nn); uuu=zeros(1,nnn);
n=[kk k kkk];y=[uu u uuu];
7
stem(n,y,'filled') title('单位矩形序列')
实验要求:1)要求产生矩形脉冲幅值为X,脉宽为2,脉冲中心点为X的矩形脉冲信号,其中X为自己的学号中最后两位;(2)要求画出图形
(9)指数序列
function exp1_dexp(c,a,k1,k2) %c: 指数序列的幅度 %a: 指数序列的底数
%k1: 绘制序列的起始序号 %k2: 绘制序列的终止序号 %例如c=1;a=2;k1=-2;k2=10; k=k1:k2; x=c*(a.^k);
stem(k,x,'filled') title('指数序列') xlabel('n') ylabel('f(n)')
实验要求:1)请大家自己写一下函数调用格式,并在分别用红、黄、蓝、绿四种颜色在图上画出a<-1, -11时指数函数波形。
(10)正弦序列
function exp1_dsin(A,w,k1,k2)
%离散正弦信号,其中k1,k2分别为起始时间、终止时间,默认时间间隔为1 %A,W为幅度和角频率参数
% 函数调用格式:exp1_dsin(5,0.25,-30,30); k=k1:k2;
stem(k,A*sin(k*w),'filled')
title('离散时间正弦序列f(n)=Asin(wn)') xlabel('n') ylabel('f(n)')
实验要求:1)要求产生幅值为X,角频率为0.25的正弦序列,其中X为自己的学号中最后两位;(2)要求画出图形
3 连续和离散信号的卷积表示方法 (1)连续时间信号卷积
function [f,k]=exp1_sconv(f1,f2,k1,k2,p)
8
%计算连续信号卷积积分f(t)=f1(t)*f2(t) %f:卷积积分f(t)对应的非零样值向量 %k: f(t)的对应时间向量 ?: f1(t)的非零样值向量 ò: f2(t)的非零样值向量
%K1: 序列f1(t)的对应时间向量 %K2: 序列f2(t)的对应时间向量 %p: 取样时间间隔 %调用格式:
% f1=0.5*(0:0.01:2);f2=0.5*(0:0.01:2);k1=0:0.01:2;k2=0:0.01:2;p=0.01; % [f,k]=exp1_sconv(f1,f2,k1,k2,p)
f=conv(f1,f2); %计算序列1与序列2的卷积和 k0=k1(1)+k2(1); %计算序列f非零样值的起点位置
k3=length(f1)+length(f2)-2; %计算卷积和f非零样值得宽度 k=k0:p:(k0+k3*p); %确定卷积和f非零样值的时间向量 subplot(3,1,1)
plot(k1,f1) %在子图1绘制f1(t)时域波形图; xlabel('t');ylabel('f1(t)');title('f1(t)') subplot(3,1,2)
plot(k2,f2); %在子图2绘制f2(t)时域波形图 xlabel('t');ylabel('f2(t)');title('f2(t)') subplot(3,1,3)
plot(k,f); %画卷积f(t)的时域波形
xlabel('t');ylabel('f(t)');title(' f(t)=f1(t)*f2(t)')
要求: 已知f1(t)?2eu(t),f2(t)?u(t)?u(t?2),求g(t)?f1(t)*f2(t),并画图
?t(2)离散时间信号卷积
function [f,k]=exp1_dconv(f1,f2,k1,k2) %The function of compute f=f1*f2
%f: 卷积和序列f(k)对应的非零样值向量 %k: 序列f(k)的对应序号向量 ?: 序列f1(k)非零样值向量 ò: 序列f2(k)非零样值向量 %k1: 序列f1(k)的对应序号向量 %k2: 序列f2(k)的对应序号向量
%调用例子:?=[1,2,1];f2=ones(1,5);k1=[-1 0 1];k2=-2:2;[f,k]=exp1_dconv(f1,f2,k1,k2) f=conv(f1,f2) %计算序列f1与f2的卷积和f
9
k0=k1(1)+k2(1); %计算序列f非零样值的起点位置
k3=length(f1)+length(f2)-2; %计算卷积和f的非零样值的宽度 k=k0:k0+k3 %确定卷积和f非零样值得序号向量 subplot(3,1,1)
stem(k1,f1) %在子图1绘制序列f1(k)时域波形图 xlabel('n');ylabel('f1(n)') title('f1(n)') subplot(3,1,2)
stem(k2,f2) %在子图2绘制序列f2(k)时域波形图 xlabel('n');ylabel('f2(n)') title('f2(n)') subplot(3,1,3)
stem(k,f) %在子图3绘制序列f(k)时域波形图 xlabel('n');ylabel('f(n)')
title('f1(n)与f2(n)的卷积和f(n)')
要求:已知f1[n]?2nu[n],f2[n]?3nu[n],求g[n]?f1[n]*f2[n],并画图
四 实验要求:
1.熟悉MATLAB软件使用环境、启动及退出等;熟悉MATLAB软件的常用命令的使用; 2.按照要求实现实验内容;
3.规范化地书写实验报告(包括四部分:实验目的、实验原理、实验内容、实验结果及分析)。
补充:
有两个有限长序列x[n],y[n],设x[n]区间为A?n?B,长度为Lx,y[n]区间为C?n?D,长度为Ly,则x[n]和y[n]的卷积为:
x[n]*y[n]?{x[A]?[n?A]?...?x[B]?[n?B]}*{y[C]?[n?C]?...?y[D]?[n?D]}
根据卷积分配率和?[n?n1]*?[n?n2]??[n?n1?n2]得:
x[n]*y[n]?{x[A]?[n?A]?...?x[B]?[n?B]}*{y[C]?[n?C]?...?y[D]?[n?D]}
?x[A]y[C]?[n?A?C]?...?x[B]y[D]?[n?B?D]可见,卷积后序列的起始点为:n?A?C,终点为n?B?D。
长度为(B?D)?(A?C)?1?(B?A?1)?(D?C?1)?1?Lx?Ly?1。
10