利用MATLAB分析离散系统

主讲人:陈后金电子信息工程学院

利用MATLAB分析离散信号与系统

X(z)部分分式展开的MATLAB实现

H(z)零极点与系统特性的MATLAB计算

[r ,p ,k ]=residuez (num,den)

num 为X (z )分子多项式的系数向量den 为X (z )分母多项式的系数向量

X (z )部分分式展开的MATLAB 实现

120121*********

12num()

()den()

111m

m n

n n n b b z b z b z z X z a a z a z a z z r r r k p z p z p z

---------+++???+==+++???+=+++???+---离散信号的z 变换X (z )通常可用有理分式表示:

[例] 利用MATLAB 实现部分分式展开。num =[18];den =[183-4-1];[r,p,k]=residuez (num,den)

运行结果为:

r =0.3600 , 0.2400 , 0.4000 p =0.5000,-0.3333,-0.3333k =[]

故X (z )可展开为:3

21431818

)(-----+=z

z z z X 2

111)3333.01(4.03333.0124.05.0136.0)(---++++-=z z z z X MATLAB 程序为:

x [k ]可表示为:[]0.36(0.5)0.24(0.3333)0.4(1)(0.3333)k k k

x k k =+-++-

利用impz 函数计算H (z )的单位脉冲响应h [k ],调用形式为

h = impz (num, den, N)

H (z )零极点分布图可用zplane 函数画出,调用形式为:

zplane (num, den)

num 和den 分别为H (z )分子多项式和分母多项式的系数向量。N 表示单位脉冲响应输出序列个数,返回值h 是单位脉冲响应。H (z )零极点与系统特性的MATLAB 计算

1201212012num()

()den()

m m n

n b b z b z b z z H z a a z a z a z z ------+++???+==+++???+离散系统的系统函数H (z )可由有理分式表示:

零极点分布图,求其单位脉冲响应h [k ]和频率响应H (e j W ) 。

MATLAB 程序如下:num =[0121];

den =[1-0.5-0.0050.3];figure(1);zplane (num,den);N =34;

h =impz (num,den,N);figure(2);stem (h);

title ('Impulse Response');w =linspace (0,pi,1000);H =freqz (num,den,w);

figure(3);plot (w/pi,abs(H));xlabel ('Frequency \omega ');title ('Magnitude Response');

运行结果

-1

-0.5

00.5

1

-1

-0.8-0.6-0.4-0.200.20.40.60.812

Real Part

I m a g i n a r y P a r t

51015

20253035

-1-0.500.5

11.522.5k

Impulse Respone

0.2

0.40.60.81

01

23

4

5678Frequency ω

Magnitude Respone

零极点分布图,求其单位冲激响应h [k ]和频率响应H (e j W ) 。

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

h [k ]

Impulse Respone

num = [1];z1 = 1.5;

den = [1, -z1];zplane (num, den);

h = impz (num, den, 11);

1

1()1 1.5 1.5

z

H z z z -==--

h [k ]

Impulse Respone

num = [1];z1 = 1.0;

den = [1, -z1];zplane (num, den);

h = impz (num, den, 11);

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

1

1()111

z

H z z z -==-?-

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

num = [1];z1 = 0.5;

den = [1, -z1];zplane (num, den);

h = impz (num, den, 11);

h [k ]

Impulse Respone

1

1()10.50.5

z

H z z z -==-?-

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

h [k ]

Impulse Respone

num = [1];z1 = -0.5;den = [1, -z1];zplane (num, den);

h = impz (num, den, 11);

1

1()1(0.5)(0.5)0.5

z z

H z z z z -===--?--+

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

h [k ]

Impulse Respone

num = [1];z1 = -1;

den = [1, -z1];zplane (num, den);

h = impz (num, den, 11);

1

1()1(1)(1)1

z z

H z z z z -===--?--+

h [k ]

Impulse Respone

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

num = [1];z1 = -1.5;den = [1, -z1];zplane (num, den);

h = impz (num, den, 11);

1

1()1( 1.5)( 1.5) 1.5

z z

H z z z z -===--?--+

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

r = 0.8;num = [1];

den = [1, 0, r*r];zplane (num, den);

h = impz (num, den, 11);

22

11222

11

()10.8(10.8j )(10.8j )

(0.8j)(0.8j)0.8*0.8

H z z z z z z z z z ---==+-+==-++-0.6

-0.4-0.200.20.4

0.60.81h [k ]

Impulse Respone

2

-0.8

-0.6-0.4-0.200.2

0.40.60.81Impulse Respone

h [k ]

r = 1;

num = [1];

den = [1, 0, r*r];zplane (num, den);

h = impz (num, den, 11);

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

211

22

2

11

()1(1j )(1j )

(j)(j)1

H z z z z z z z z z ---==+-+==-++2

-1-0.500.51

1.5I m a g i n a r y P a r t

zero-pole map

r = 1.5;num = [1];

den = [1, 0, r*r];zplane (num, den);

h = impz (num, den, 11);

-50

-40-30-20-100

102030h [k ]

Impulse Respone

22

1122

2

11

()1 1.5(1 1.5j )(1 1.5j )

( 1.5j)( 1.5j) 1.5*1.5

H z z z z z z z z z ---==+-+==-++2

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

r = 1.5;theta = 5*pi/6;num = [1, -r*cos(theta)];den = [1, -2*r*cos(theta), r*r];zplane (num, den);h = impz (num, den, 11);

[]

11

122j 1j 121cos()1cos()()12cos()(1e )(1e )

1.5cos(5π/6)21.5cos(5π/6) 1.5*1.5

r z r z H z r z r z r z r z z z z θθθθθ---------==-+---?=-??+-30-20-1001020

304050h [k ]

Impulse Respone

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

r = 0.7;theta = 5*pi/6;num = [1, -r*cos(theta)];

den = [1, -2*r*cos(theta), r*r];zplane (num, den);

h = impz (num, den, 11);

[]11

122

j 1j 12

1cos()1cos()()12cos()(1e )(1e )

0.7cos(5π/6)20.7cos(5π/6)0.7*0.7

r z r z H z r z r z r z r z z z z θθθθθ---------==-+---?=-??+-0.6-0.4-0.200.20.4

0.60.81h [k ]

Impulse Respone

r = 0.7;theta = 1*pi/6;num = [1, -r*cos(theta)];

den = [1, -2*r*cos(theta), r*r];zplane (num, den);

h = impz

(num, den, 11);

[]11

122

j 1j 12

1cos()1cos()()12cos()(1e )(1e )

0.7cos(π/6)20.7cos(π/6)0.7*0.7

r z r z H z r z r z r z r z z z z θθθθθ---------==-+---?=-??+00.20.40.60.81 1.2h [k ]

Impulse Respone

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

-0.8-0.6-0.4-0.200.20.40.6

0.81I m a g i n a r y P a r t

zero-pole map

r = 1.5;theta = 1*pi/6;num = [1, -r*cos(theta)];

den = [1, -2*r*cos(theta), r*r];zplane (num, den);

h = impz (num, den, 11);

[]11

122

j 1j 12

1cos()1cos()()12cos()(1e )(1e )

1.5cos(π/6)21.5cos(π/6) 1.5*1.5

r z r z H z r z r z r z r z z z z θθθθθ---------==-+---?=-??+-10

-5051015

202530h [k ]

Impulse Respone

相关主题
相关文档
最新文档