完整版离散LSI系统的时域分析.docx

上传人:b****5 文档编号:7558519 上传时间:2023-01-25 格式:DOCX 页数:8 大小:88.34KB
下载 相关 举报
完整版离散LSI系统的时域分析.docx_第1页
第1页 / 共8页
完整版离散LSI系统的时域分析.docx_第2页
第2页 / 共8页
完整版离散LSI系统的时域分析.docx_第3页
第3页 / 共8页
完整版离散LSI系统的时域分析.docx_第4页
第4页 / 共8页
完整版离散LSI系统的时域分析.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

完整版离散LSI系统的时域分析.docx

《完整版离散LSI系统的时域分析.docx》由会员分享,可在线阅读,更多相关《完整版离散LSI系统的时域分析.docx(8页珍藏版)》请在冰豆网上搜索。

完整版离散LSI系统的时域分析.docx

完整版离散LSI系统的时域分析

 

实验二:

离散LSI系统的时域分析

 

一、实验内容

1.知描述某离散LSI系统的差分方程为2y(n)-3y(n-1)+y(n-2)=x(n-1),分别用impz和dstep函数、filtic和filter函数两种方法求解系统的单位序列响应和单位阶跃响应。

用impz和dstep函数求解系统的单位序列响应和单位阶跃响应如下

a=[1,-3/2,1/2];

b=[0,1/2,0];

N=32;

n=0:

N-1;

hn=impz(b,a,n);

gn=dstep(b,a,n);

subplot(1,2,1);stem(n,hn,'k');

title('系统的单位序列响应');

ylabel('h(n)');xlabel('n');

axis([0,N,1.1*min(hn),1.1*max(hn)]);

subplot(1,2,2);stem(n,gn,'k');

title('系统的单位阶跃响应');

ylabel('g(n)');xlabel('n');

axis([0,N,1.1*min(gn),1.1*max(gn)]);

用函数filtic和filter求解离散系统的单位序列响应和单位阶跃

解:

x01=0;y01=0;

a=[1,-3/2,1/2];

b=[1/2,0,0];

N=32;n=0:

N-1;

xi=filtic(b,a,0);

x1=[n==0];

hn=filter(b,a,x1,xi);

x2=[n>=0];

gn=filter(b,a,x2,xi);

subplot(1,2,1);stem(n,hn,'k');

title('系统的单位序列响应');

ylabel('h(n)');xlabel('n');

axis([0,N,1.1*min(hn),1.1*max(hn)]);

subplot(1,2,2);stem(n,gn,'k');

title('系统的单位阶跃响应');

ylabel('g(n)');xlabel('n');

axis([0,N,1.1*min(gn),1.1*max(gn)]);

2.写程序描绘下列序列的卷积波形:

(1)f1(n)=u(n),f2(n)=u(n-2),(0≤n<10)

n1=0:

10;

nt=length(n1);

f1=ones(1,nt);

n2=2:

12;

nt=length(n2);

f2=ones(1,nt);

[y,ny]=convu(f1,n1,f2,n2);

subplot(2,2,1);stem(n1,f1);

subplot(2,2,2);stem(n2,f2);

subplot(2,1,2);stem(ny,y);

定义函数文件调用部分:

function[y,ny]=convu(f1,n1,f2,n2)

nys=n1

(1)+n2

(1);nyf=n1(end)+n2(end);

y=conv(f1,f2);ny=nys:

nyf;

(2)x(n)=sin(n/2),h(n)=(0.5)n(-3≤n≤4П)

n1=-3:

4*pi;

f1=0.8.^n1;

f2=sin(n2/2);

[y,ny]=convu(f1,n1,f2,n2);

subplot(2,2,1);stem(n1,f1);

subplot(2,2,2);stem(n2,f2);

subplot(2,1,2);stem(ny,y);

定义函数文件调用部分:

function[y,ny]=convu(f1,n1,f2,n2)

nys=n1

(1)+n2

(1);nyf=n1(end)+n2(end);

y=conv(f1,f2);ny=nys:

nyf;

3.知某离散LSI系统的单位序列响应为h(n)=3δ(n-3)+0.5δ(n-4)+0.2δ(n-5)+0.7δ(n-6)-0.8δ(n-7)

求输入为x(n)=e-0.5nu(n)时的系统响应。

N=16;

n=0:

N-1;

x=exp(-0.5*n);

subplot(2,2,1);stem(n,x);

a=1;

b=[0,0,0,3,0.5,0.2,0.7,0.8];

hn=impz(b,a,n);

subplot(2,2,2);stem(n,hn)

y=conv(x,hn);

subplot(2,1,2);stem(y);

4.描述某离散LSI系统的差分方程为y(n)=0.7y(n-1)+2x(n)-x(n-2),求输入为x(n)=u(n-3)时的系统响应。

N=16;n1=3:

N+2;

f1=[zeros(1,3),ones(1,(N-3))];

subplot(2,2,1);stem(n1,f1);

a=[1,0,-0.7,0];

b=[2,0,-1,0];

f2=impz(b,a,n1);

subplot(2,2,2);stem(n1,f2);

[y,ny]=convu(f1,n1,f2,n1);

subplot(2,1,2);stem(ny,y);

定义函数文件调用部分:

function[y,ny]=convu(f1,n1,f2,n2)

nys=n1

(1)+n2

(1);nyf=n1(end)+n2(end);

y=conv(f1,f2);ny=nys:

nyf;

二、思考题答案

思考本实验提出的有关MATLAB函数在调用时应注意哪些问题。

调用自定意函数时按照以下代码

在自定义函数的取值不是从0开始时就引用一下函数:

function[y,ny]=convu(h,nh,x,nx)

nys=nh

(1)+nx

(1);nyf=nh(end)+nx(end);

y=conv(h,x);ny=nys:

nyf;

里面的变量要一一对应

代码写到function的文件里面

调用时convu与文件命名一致!

三、实验小结

(1)遇到问题及解决方法

注意函数的定义出现问题及时问老师

(2)学到的新的函数及其用法

由离散时间系统的时域分析方法可知,一个离散LSI系统的响应与激励可以用如下框图表示:

其输入

2、用函数impz和dstep求解离散系统的单位脉冲响应和单位阶跃响应。

、输出关系可用以下差分方程描述:

3、用函数filtic和filter求解离散系统的单位序列响应和单位阶跃响应。

4、用MATLAB实现线性卷积

1)用函数conv进行卷积运算:

求解两个序列的卷积和,关键在于如何确定卷积结果的时宽区间。

MATLAB提供的求卷积函数conv默认两个序列的序号均从n=0开始,卷积结果y对应的序列的序号也从n=0开始。

2)非零起始序列的卷积运算:

当两个序列不是从0开始时,必须对conv函数稍加扩展。

由卷积原理可知,若待卷积的两个序列序号分别为{x(n);nx=nxs:

nxf},{h(n);nh=nhs:

nhf},则卷积和y(n)的序号起点和终点分别为:

nys=nxs+nhs,nyf=nxf+nhf。

据此可定义通用卷积函数convu:

function[y,ny]=convu(h,nh,x,nx)

nys=nh

(1)+nx

(1);nyf=nh(end)+nx(end);

y=conv(h,x);ny=nys:

nyf;

3)卷积积分的动态过程

5、离散LSI系统时域响应的求解:

MATLAB提供了多种方法求解离散LSI系统的响应:

1)用conv函数进行卷积积分,求任意输入的系统零状态响应;

2)用dlsim函数求任意输入的系统零状态响应;

3)用filtic和filter函数求任意输入的系统完全响应。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 判决书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1