用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx

上传人:b****5 文档编号:27895534 上传时间:2023-07-06 格式:DOCX 页数:20 大小:172.32KB
下载 相关 举报
用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx_第1页
第1页 / 共20页
用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx_第2页
第2页 / 共20页
用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx_第3页
第3页 / 共20页
用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx_第4页
第4页 / 共20页
用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx

《用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx》由会员分享,可在线阅读,更多相关《用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx(20页珍藏版)》请在冰豆网上搜索。

用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等.docx

用matlab绘制差分方程Z变换反变换zplaneresidueztf2zpzp2tftf2sossos2tf幅相频谱等等

《数字信号处理》

(一)实验目的

使用ztrans,iztrans函数分别求出离散时间信号的Z变换和Z反变换的结果,并用pretty函数进行结果美化。

编写函数时养成良好的注释习惯,有利于对函数的理解。

复习MATLAB的基本应用,如:

help,可以帮助查询相关的函数的使用方法,巩固理论知识中的离散时间信号的传递函数与二次项式之间的转换,以及使用zplane函数画出相关系统的零极点分布图,根据零极点的分布情况估计系统的滤波特性。

(二)程序的运行与截图

实验项目一Z变换

(1)求

Z变换

clearall;closeall;clc;

symsn

f=0.5^n+(1/3)^n;%定义离散信号

F=ztrans(f)%z变换

pretty(F);

运算结果

F

(2)

Z变换

clearall;closeall;clc;

symsn

f=n^4;%定义离散信号

F=ztrans(f)%Z变换

pretty(F)

运算结果

(3)

Z变换

clearall;closeall;clc;

symsabn

f=sin(a*n+b)%定义离散信号

F=ztrans(f)%Z变换

pretty(F)

运算结果

实验项目二Z反变换

(1)

Z反变换

clearall;closeall;clc;

symskz

Fz=2*z/(z-2)^2;%定义Z反变换表达式

fk=iztrans(Fz,k)%Z反变换

pretty(fk);

运算结果

(2)

Z反变换

clearall;closeall;clc;

symskz

Fz=z*(z-1)/(z^2+2*z+1);%定义Z反变换表达式

fk=iztrans(Fz,k)%Z反变换

pretty(fk);

运算结果

f

(3)

Z反变换

clearall;closeall;clc;

symskzw

Fz=(1+z^(-1))/(1-2*z^-1*cos(w)+z^-2);%定义Z反变换表达式

fk=iztrans(Fz,k)%Z反变换

pretty(fk);

运算结果

实验项目三各种模型之间的变换

=

(1)clearall;closeall;clc;

b=[00100];%分子的系数数组

a=[1-58-4];%分母的系数数组

zplane(b,a)%使用zplane函数绘制如下系统的零极点分布图

运算结果

(2)clearall;closeall;clc;

b=[00100];%分子的系数数组

a=[1-58-4];%分母的系数数组

[r,p,c]=residuez(b,a)%使用matlab中的residuez函数,将

分解成为多个简单有理分式之和

运算结果

r=

-15.0000

5.0000

10.0000

 

p=

2.0000

2.0000

1.0000

 

c=

 

0

(3)clearall;closeall;clc;

b=[00100];%分子的系数数组

a=[1-58-4];%分母的系数数组

[z,p,k]=tf2zp(b,a)%使用tf2zp求出系统函数的零、极点和增益

运算结果

z=

0

 

p=

2.0000

2.0000

1.0000

 

k=

10

(4)clearall;closeall;clc;

z=[1;-3];%零点,列向量

p=[2;-4];%极点,列向量

k=5;%增益

[b,a]=zp2tf(z,p,k)%根据求出的零、极点和增益,然后自学使用zp2tf还原出分子和分母的系数

运算结果

(5)clearall;closeall;clc;

b=[00100];%分子的系数数组

a=[1-58-4];%分母的系数数组

[sos,g]=tf2sos(b,a)%使用tf2sos将系统函数分解成一系列二阶子系统的级联形式

运算结果

sos=

01.000001.0000-2.00000

01.000001.0000-3.00002.0000

 

g=

10

(6)clearall;closeall;clc;

sos=[01.000001.0000-2.00000;

01.000001.0000-3.00002.0000];

g=10;%增益

[b,a]=sos2tf(sos,g)%根据求出的一系列二阶子系统,使用sos2tf还原出

分子和分母的系数

运算结果

b=

00100

 

a=

1-58-4

(7)clearall;closeall;clc;

b=[00100];%分子的系数数组

a=[1-58-4];%分母的系数数组

n=(0:

500)*pi/500;%在pi范围内取501个采样点

[h,w]=freqz(b,a,n);%求系统的频率响应

subplot(2,1,1),plot(n/pi,abs(h));grid%作系统的幅度频响图

axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);

ylabel(‘幅度’);

subplot(2,1,2),plot(n/pi,angle(h));grid%作系统的相位频响图

axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);

ylabel(‘相位’);xlabel(‘以pi为单位的频率’);

运行结果

(1)clearall;closeall;clc;

b=[0111];%分子的系数数组

a=[1222];%分母的系数数组

zplane(b,a)%使用zplane函数绘制如下系统的零极点分布图

运行结果

(2)clearall;closeall;clc;

b=[0111];%分子的系数数组

a=[1222];%分母的系数数组

[r,p,k]=residuez(b,a)%使用matlab中的residuez函数,将

分解成为多个简单有理分式之和

运行结果

r=

-0.4006

-0.0497-0.1609i

-0.0497+0.1609i

 

p=

-1.5437

-0.2282+1.1151i

-0.2282-1.1151i

 

k=

0.5000

(3)clearall;closeall;clc;

b=[0111];%分子的系数数组

a=[1222];%分母的系数数组

[z,p,k]=tf2zp(b,a)%使用tf2zp求出系统函数的零、极点和增益

运行结果

z=

-0.5000+0.8660i

-0.5000-0.8660i

 

p=

-1.5437

-0.2282+1.1151i

-0.2282-1.1151i

 

k=

1

(4)clearall;closeall;clc;

z=[-0.5000+0.8660i

-0.5000-0.8660i];

p=[-1.5437

-0.2282+1.1151i

-0.2282-1.1151i];

k=1;

[b,a]=zp2tf(z,p,k)%根据求出的零、极点和增益,使用zp2tf还原出

分子和分母的系数

运行结果

b=

01.00001.00001.0000

 

a=

1.00002.00012.00011.9999

(5)clearall;closeall;clc;

b=[0111];%分子的系数数组

a=[1222];%分母的系数数组

[sos,g]=tf2sos(b,a)%使用tf2sos将系统函数分解成一系列二阶子系统的级联形式

运行结果

sos=

01.000001.00001.54370

1.00001.00001.00001.00000.45631.2956

 

g=

1

(6)clearall;closeall;clc;

sos=[01.000001.00001.54370;

1.00001.00001.00001.00000.45631.2956];

g=1;

[b,a]=sos2tf(sos,g)%根据求出的一系列二阶子系统,自学使用sos2tf还原出

分子和分母的系数

运行结果

b=

0111

 

a=

1.00002.00002.00002.0000

 

(7)clearall;closeall;clc;

b=[0111];%分子的系数数组

a=[1222];%分母的系数数组

n=(0:

500)*pi/500;%在pi范围内取501个采样点

[h,w]=freqz(b,a,n);%求系统的频率响应

subplot(2,1,1),plot(n/pi,abs(h));grid%作系统的幅度频响图

axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);

ylabel('幅度');

subplot(2,1,2),plot(n/pi,angle(h));grid%作系统的相位频响图

axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);

ylabel('相位');xlabel('以pi为单位的频率');

运行结果

实验项目四根据零极点分布图估计系统的滤波特性。

(1)

clearall;closeall;clc;

b=[1111];%分子的系数数组

a=[4000];%分母的系数数组

subplot(3,1,1);

zplane(b,a);%画零极点图

num=[1111];

den=[4000];

[H,w]=freqz(num,den)%求出频率响应

subplot(3,1,3);

plot(w,abs(H))

xlabel('频率(Hz)');

ylabel('幅度');

title('幅频特性')%画出幅度频率响应

运算结果:

由零极点分布及幅频特性可知,本系统为带阻

(2)

clearall;closeall;clc;

b=[1-0.10];%分子的系数数组

a=[1-0.20.65];%分母的系数数组

subplot(3,1,1);

zplane(b,a);%画零极点图

num=[1-0.10];

den=[1-0.20.65];

[H,w]=freqz(num,den)%求出频率响应

subplot(3,1,3);

plot(w,abs(H))

xlabel('频率(Hz)');

ylabel('幅度');

title('幅频特性')%画出幅度频率响应

运算结果:

由零极点分布及幅频特性可知,本系统为带通

(3)

clearall;closeall;clc;

b=[1-0.1];%分子的系数数组

a=[1-0.2];%分母的系数数组

subplot(3,1,1);

zplane(b,a);%画零极点图

num=[1-0.1];

den=[1-0.2];

[H,w]=freqz(num,den)%求出频率响应

subplot(3,1,3);

plot(w,abs(H))

xlabel('频率(Hz)');

ylabel('幅度');

title('幅频特性')%画出幅度频率响应

运算结果:

由零极点分布及幅频特性可知,本系统为低通

(三)实验小结与讨论

本实验项目通过使用ztrans,iztrans函数分别求出离散时间信号的Z变换和Z反变换的结果,并用pretty函数进行结果美化。

复习MATLAB的基本应用,使用tf2zp,zp2tf对离散时间信号的传递函数,零极点增益之间进行转换,使用sos2tf,tf2sos函数进行传递函数与二次项式之间的转换,以及使用zplane函数画出相关系统的零极点分布图,根据零极点的分布情况估计系统的滤波特性。

虽然这些函数都是第一次接触,但是都能通过MATLAB中的help了解相关函数的使用方法,本实验项目需要注意的地方有:

(1)用syms把一些字符定义成基本的字符对象,如离散信号的变量n,和一些系数等等,不然运行不出来,这是我遇到的第一个问题,最后用syms定义之后顺利通过.

(2)在知道增益,零极点的情况下求系统分子分母的系数出现了问题

例子clearall;closeall;clc;

z=[1;-3];%零点,列向量

p=[2;-4];%极点,列向量

k=5;%增益

[b,a]=zp2tf(z,p,k)%根据求出的零、极点和增益,然后自学使用zp2tf还原出分子和分母的系数

我将z=[1,-3];%零点,p=[2,-4];%极点写成了行向量,结果出错,在将零极点都改为列向量z=[1;-3];%零点,p=[2;-4];%极点,或者

z=[1

-3];%零点,列向量

p=[2

-4];%极点,列向量

之后,实验顺利通过.

(3)我遇到的第三个问题是不会通过零极点的分布估计滤波特性,于是我将幅频特性画出

从图上的幅频特性可以很好的看出该系统的滤波特性,实验醒目顺利通过.

(4)个人心得

每次做实验,我都不是一下子就成功的,但是我都从失败的例子中汲取经验,从新再来,最终完成目标,失败不可怕,可怕的是不想面对它.

 

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

当前位置:首页 > 幼儿教育 > 育儿知识

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

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