文章目录
- 前言
- 一、差分方程的有理式
- 1.差分方程的有理分式
- 2.因果系统和ROC
- 3.稳定性与ROC
- 二、频率响应
- 1.定义
- 2.幅频响应
- 3.相频响应
- 4.群延迟
- 总结
前言
本篇文章会先复习Z变换的有理分式,这是之前文章中提过的内容,这里会将差分方程和有理分式进行结合来看。主要是通过有理分式进行对于冲激响应的表达,以及根据导函数对于频率响应的介绍。
本文会对Z变换的频率响应中的幅频响应、相频响应以及群延迟的表达式进行推导。
|版本声明:山河君,未经博主允许,禁止转载
一、差分方程的有理式
1.差分方程的有理分式
在音频进阶学习十三——Z变换二(有理z变换、稳定性与反变换)中,其实已经对于差分方程进行有里分式的转换,对于差分方程:
y
[
n
]
=
∑
k
=
1
N
a
k
y
[
n
−
k
]
+
∑
i
=
0
M
b
i
x
[
n
−
i
]
y[n]= \sum_{k=1}^Na_ky[n-k] +\sum_{i = 0}^M b_ix[n-i]
y[n]=k=1∑Naky[n−k]+i=0∑Mbix[n−i]
通过展开,然后对于Z变换的线性和时移性得到:
Y
(
z
)
−
(
a
1
z
−
1
Y
(
z
)
+
.
.
.
+
a
N
z
−
N
Y
(
z
)
)
=
b
0
X
(
z
)
+
b
1
z
−
1
X
(
z
)
+
.
.
.
+
b
M
z
−
M
X
(
z
)
Y(z)-(a_1z^{-1}Y(z)+...+a_Nz^{-N}Y(z)) = b_0X(z)+b_1z^{-1}X(z)+...+b_Mz^{-M}X(z)
Y(z)−(a1z−1Y(z)+...+aNz−NY(z))=b0X(z)+b1z−1X(z)+...+bMz−MX(z)
使用有理分式表示为:
H ( z ) = Y ( z ) X ( z ) = b 0 + b 1 z − 1 + . . . + b M z − M 1 − ( a 1 z − 1 + . . . + a N z − N ) = ∑ k = 0 M b k z − k 1 − ∑ k = 1 N b k z − k H(z)=\frac{Y(z)}{X(z)}=\frac{b_0+b_1z^{-1}+...+b_Mz^{-M} }{1-(a_1z^{-1}+...+a_Nz^{-N})} = \frac{\sum_{k=0}^Mb_kz^{-k}}{1 -\sum_{k=1}^Nb_kz^{-k}} H(z)=X(z)Y(z)=1−(a1z−1+...+aNz−N)b0+b1z−1+...+bMz−M=1−∑k=1Nbkz−k∑k=0Mbkz−k
而对于满足松弛条件,也就是在 n < 0 , y [ n ] = 0 n<0,y[n]=0 n<0,y[n]=0时,是一个因果的LTI系统,对于LTI系统根据卷积定理又满足 Y ( z ) = X ( z ) H ( z ) Y(z)=X(z)H(z) Y(z)=X(z)H(z),所以这个导函数为有理分式中, H ( z ) H(z) H(z)是系统的单位冲激响应的Z变换,且 H ( z ) H(z) H(z)需要满足一定收敛。
2.因果系统和ROC
对于因果系统,在音频进阶学习三——离散时间信号与系统中说过,是指是在任意时刻 n n n的输出仅仅依赖当前、或者之前时刻的输入,与以后的输入无关。并且在讲解LTI系统时,对于系统因果性判断的依据是 h [ n ] = 0 , n < 0 h[n] = 0, n<0 h[n]=0,n<0,则为因果系统。
在Z变换中,因果系统的必要性是需要满足ROC包含 ∣ z ∣ = + ∞ |z|=+\infty ∣z∣=+∞,而充分性如果ROC包含 ∣ z ∣ = + ∞ |z|=+\infty ∣z∣=+∞,那么该系统一定为因果系统,证明方法和音频进阶学习十三——Z变换二(有理z变换、稳定性与反变换)中相似
将单位冲激响应的Z变换单独拿出来
X
(
z
)
=
∑
n
=
−
∞
−
1
x
[
n
]
z
−
n
+
∑
n
=
0
+
∞
x
[
n
]
z
−
n
X(z)=\sum_{n=-\infty}^{-1}x[n]z^{-n}+\sum_{n=0}^{+\infty}x[n]z^{-n}
X(z)=n=−∞∑−1x[n]z−n+n=0∑+∞x[n]z−n
- 必要性
当系统为因果系统时,只需要关注 X ( z ) = ∑ n = 0 + ∞ x [ n ] z − n X(z)=\sum_{n=0}^{+\infty}x[n]z^{-n} X(z)=∑n=0+∞x[n]z−n,此时满足收敛就要求 ∑ n = 0 + ∞ ∣ x [ n ] ∣ ∣ z ∣ − n < ∞ \sum_{n=0}^{+\infty}|x[n]||z|^{-n} < \infty ∑n=0+∞∣x[n]∣∣z∣−n<∞,即当 ∣ Z ∣ > R |Z|>R ∣Z∣>R也就是某个圆外部分,所以ROC包含 ∣ z ∣ = + ∞ |z|=+\infty ∣z∣=+∞。 - 充分性
当 n → − ∞ , − n → + ∞ n\rightarrow -\infty, -n \rightarrow +\infty n→−∞,−n→+∞,此时对于 ∑ n = − ∞ − 1 x [ n ] z − n \sum_{n=-\infty}^{-1}x[n]z^{-n} ∑n=−∞−1x[n]z−n部分, x [ n ] x[n] x[n]求和趋于无穷大,那么 z − n z^{-n} z−n需要区域无穷小才满足ROC收敛,那么 ∣ z ∣ < 1 |z|<1 ∣z∣<1和条件 ∣ z ∣ = + ∞ |z|=+\infty ∣z∣=+∞不符合,所以当 ∣ z ∣ = + ∞ |z|=+\infty ∣z∣=+∞时,不存在左边部分,系统也一定为因果系统。
3.稳定性与ROC
对于LTI系统如果一定稳定,那么
h
[
n
]
h[n]
h[n]一定满足绝对可和,而对于
H
(
z
)
=
∑
n
=
−
∞
+
∞
h
[
n
]
z
−
n
H(z)=\sum_{n=-\infty}^{+\infty}h[n]z^{-n}
H(z)=n=−∞∑+∞h[n]z−n
- 稳定性的必要条件:当 ∑ n = − ∞ + ∞ ∣ h [ n ] ∣ < ∞ \sum_{n=-\infty}^{+\infty}|h[n]|<\infty ∑n=−∞+∞∣h[n]∣<∞时,系统稳定的必要条件是ROC一定包含单位圆,当 ∣ z ∣ = 1 |z|=1 ∣z∣=1时,相当于一定稳定
- 稳定性的充分条件:当系统为因果系统,那么 H ( z ) H(z) H(z)也一定是绝对可和的,即 ∣ z ∣ = + ∞ |z|=+\infty ∣z∣=+∞,因为需要该系统稳定,所以一定要包含单位圆,此时所有的极点应该在单位圆内。
二、频率响应
1.定义
在上一篇文章中介绍过对于频率响应是指单位冲激响应在频域上的特征,对于卷积公式使用的是DTFT进行的分析,而对于差分方程,使用的是Z变换的方式对于单位冲激响应在频域上的特征。
而对于LTI系统,上文中给出了传递函数,也就是有理分式表达的单位冲激响应Z变换,根据音频进阶学习十三——Z变换二(有理z变换、稳定性与反变换)中对于有理分式的分析,我们可以把累加变成累积的形式:
H
(
z
)
=
∑
k
=
0
M
b
k
z
−
k
∑
k
=
0
N
a
k
z
−
k
=
∏
m
=
1
M
(
1
−
c
m
z
−
1
)
∏
n
=
1
N
(
1
−
d
n
z
−
1
)
H(z)=\frac{\sum_{k=0}^Mb_kz^{-k}}{\sum_{k=0}^Na_kz^{-k}}=\frac{\prod_{m=1}^M(1-c_mz^{-1})}{\prod_{n=1}^N(1-d_nz^{-1})}
H(z)=∑k=0Nakz−k∑k=0Mbkz−k=∏n=1N(1−dnz−1)∏m=1M(1−cmz−1)
- c m c_m cm:是频率响应的零点,存在 M M M个
- d n d_n dn:是频率响应的极点,存在 N N N个
由于使用连乘形式对于频率响应分析比较方便,下文中使用的是连乘的方式来进行表示,同时以 z = e j ω z=e^{j\omega} z=ejω为单位圆方便分析。即:
对于Z变换中
H
(
z
)
=
H
(
e
j
ω
)
∣
z
=
e
j
ω
H(z)=H(e^{j\omega})|_{z=e^{j\omega}}
H(z)=H(ejω)∣z=ejω,也就是
z
=
e
j
ω
z=e^{j\omega}
z=ejω为单位圆时,有:
H
(
e
j
ω
)
=
∑
k
=
0
M
b
k
e
j
ω
∑
k
=
0
N
a
k
e
j
ω
=
b
0
a
0
∏
m
=
1
M
(
1
−
c
m
e
j
ω
)
∏
n
=
1
N
(
1
−
d
n
e
j
ω
)
H(e^{j\omega})=\frac{\sum_{k=0}^Mb_ke^{j\omega}}{\sum_{k=0}^Na_ke^{j\omega}}=\frac{b_0}{a_0}\frac{\prod_{m=1}^M(1-c_me^{j\omega})}{\prod_{n=1}^N(1-d_ne^{j\omega})}
H(ejω)=∑k=0Nakejω∑k=0Mbkejω=a0b0∏n=1N(1−dnejω)∏m=1M(1−cmejω)
2.幅频响应
和DTFT一样,对于幅频响应一样是计算Z变换的模,对于模长的求解应该还记得吧,就是虚部和实部的平方求根,具体可看音频进阶学习九——离散时间傅里叶变换DTFT中对于实部和虚部的介绍,而对于Z变换的模,就是分子和分母的幅频相除
∣
H
(
e
j
ω
)
∣
=
b
0
a
0
∏
m
=
1
M
∣
(
1
−
c
k
e
j
ω
)
∣
∏
n
=
1
N
∣
(
1
−
d
k
e
j
ω
)
∣
|H(e^{j\omega})|=\frac{b_0}{a_0}\frac{\prod_{m=1}^M|(1-c_ke^{j\omega})|}{\prod_{n=1}^N|(1-d_ke^{j\omega})|}
∣H(ejω)∣=a0b0∏n=1N∣(1−dkejω)∣∏m=1M∣(1−ckejω)∣
为了方便分析,对于Z变换中幅频响应一般是看模平方,也就是:
∣
H
(
e
j
ω
)
∣
2
=
H
(
e
j
ω
)
×
H
∗
(
e
j
ω
)
|H(e^{j\omega})|^2=H(e^{j\omega})\times H^*(e^{j\omega})
∣H(ejω)∣2=H(ejω)×H∗(ejω)
代入进去,分子和分母也用共轭表示为:
∣
H
(
e
j
ω
)
∣
2
=
(
b
0
a
0
)
2
∏
m
=
1
M
(
1
−
c
k
e
j
ω
)
(
1
−
c
k
∗
e
j
ω
)
∏
n
=
1
N
(
1
−
d
k
e
j
ω
)
(
1
−
d
k
∗
e
j
ω
)
|H(e^{j\omega})|^2=\Big(\frac{b_0}{a_0}\Big)^2\frac{\prod_{m=1}^M(1-c_ke^{j\omega})(1-c_k^*e^{j\omega})}{\prod_{n=1}^N(1-d_ke^{j\omega})(1-d_k^*e^{j\omega})}
∣H(ejω)∣2=(a0b0)2∏n=1N(1−dkejω)(1−dk∗ejω)∏m=1M(1−ckejω)(1−ck∗ejω)
如果使用对数,表示为:
20
log
10
∣
H
(
e
j
ω
)
∣
=
20
log
10
(
b
0
a
0
)
+
∑
k
=
1
M
20
log
10
(
1
−
c
k
e
j
ω
)
−
∑
k
=
1
N
20
log
10
(
1
−
d
k
e
j
ω
)
20\log_{10}|H(e^{j\omega})|=20\log_{10}\Big(\frac{b_0}{a_0}\Big)+\sum_{k=1}^M20\log_{10}(1-c_ke^{j\omega})-\sum_{k=1}^N20\log_{10}(1-d_ke^{j\omega})
20log10∣H(ejω)∣=20log10(a0b0)+k=1∑M20log10(1−ckejω)−k=1∑N20log10(1−dkejω)
- c k c_k ck:是频率响应的零点,存在 M M M个
- d k d_k dk:是频率响应的极点,存在 N N N个
3.相频响应
对于上文中的
H
(
e
j
ω
)
H(e^{j\omega})
H(ejω)
H
(
e
j
ω
)
=
∑
k
=
0
M
b
k
e
j
ω
∑
k
=
0
N
a
k
e
j
ω
=
B
(
e
j
ω
)
A
(
e
j
ω
)
H(e^{j\omega})=\frac{\sum_{k=0}^Mb_ke^{j\omega}}{\sum_{k=0}^Na_ke^{j\omega}}=\frac{B(e^{j\omega})}{A(e^{j\omega})}
H(ejω)=∑k=0Nakejω∑k=0Mbkejω=A(ejω)B(ejω)
而对于
H
(
e
j
ω
)
H(e^{j\omega})
H(ejω)的实部和虚部分别为
- H R e ( e j ω ) = R e ( B ( e j ω ) ) R e ( A ( e j ω ) ) + I m ( B ( e j ω ) ) I m ( A ( e j ω ) ) R e ( A ( e j ω ) ) 2 + I m ( B ( e j ω ) 2 H_{Re}(e^{j\omega}) = \frac{Re(B(e^{j\omega}))Re(A(e^{j\omega}))+Im(B(e^{j\omega}))Im(A(e^{j\omega}))}{Re(A(e^{j\omega}))^2+Im(B(e^{j\omega})^2} HRe(ejω)=Re(A(ejω))2+Im(B(ejω)2Re(B(ejω))Re(A(ejω))+Im(B(ejω))Im(A(ejω))
- H I e ( e j ω ) = I m ( B ( e j ω ) ) R e ( A ( e j ω ) ) − R e ( B ( e j ω ) ) I m ( A ( e j ω ) ) R e ( A ( e j ω ) ) 2 + I m ( B ( e j ω ) 2 H_{Ie}(e^{j\omega}) = \frac{Im(B(e^{j\omega}))Re(A(e^{j\omega}))-Re(B(e^{j\omega}))Im(A(e^{j\omega}))}{Re(A(e^{j\omega}))^2+Im(B(e^{j\omega})^2} HIe(ejω)=Re(A(ejω))2+Im(B(ejω)2Im(B(ejω))Re(A(ejω))−Re(B(ejω))Im(A(ejω))
而对于相频响应有:
∠
H
(
e
j
ω
)
=
tan
−
1
H
I
m
(
e
j
ω
)
H
R
e
(
e
j
ω
)
=
∠
H
I
m
(
e
j
ω
)
+
∠
H
R
e
(
e
j
ω
)
\angle H(e^{j\omega})=\tan^{-1}\frac{H_{Im}(e^{j\omega})}{H_{Re}(e^{j\omega})}=\angle{H_{Im}(e^{j\omega})}+\angle{H_{Re}(e^{j\omega})}
∠H(ejω)=tan−1HRe(ejω)HIm(ejω)=∠HIm(ejω)+∠HRe(ejω)
但是这里值得注意的是,对于DTFT,如果满足则一定收敛,而我们在分析相位响应时,默认周期是在
[
−
π
,
π
]
[-\pi,\pi]
[−π,π]之间。
而对于Z变换,当 r = 1 r=1 r=1时,Z变换和DTFT一样,但是由于 z z z存在系统稳定性、极点和零点的问题,会在整个复平面上的变换,相位也会随着复平面中 z z z的变化而连续变化。
我们对于相位响应的分析是为了相位的变化率,此时就存在一个相位卷绕的问题:当相位从 π \pi π到 − π -\pi −π时,会出现相位跳跃,下一篇文章会有图片直观看到。此时则需要区分:
- 主值相位:描述的相位变换在 [ − π , π ] [-\pi,\pi] [−π,π]之间,对于DTFT而言,它意味着相位不连续,但这种不连续性在离散时间信号处理中并不会影响信号的分析。
- 连续相位:相位变换在 θ + 2 k π \theta + 2k\pi θ+2kπ,其中 k k k为整数,为了保证保持相位的平滑变化Z变换需要考虑连续相位。
综上对于Z变换它的相位响应使用 A R G ARG ARG表示为主值响应,使用 a r g arg arg表示为连续相位响应
- 主值相频响应:
A R G [ H ( e j ω ) ] ∈ [ − π , π ] = tan − 1 H I m ( e j ω ) H R e ( e j ω ) ARG[H(e^{j\omega})]\in[-\pi, \pi]=\tan^{-1}\frac{H_{Im}(e^{j\omega})}{H_{Re}(e^{j\omega})} ARG[H(ejω)]∈[−π,π]=tan−1HRe(ejω)HIm(ejω) - 连续相位响应:
a r g [ H ( e j ω ) ] = A R G [ H ( e j ω ) ] + 2 π r arg[H(e^{j\omega})] = ARG[H(e^{j\omega})]+2\pi r arg[H(ejω)]=ARG[H(ejω)]+2πr
根据上文可知,对于相频响应将有理式进行展开,分别将实部和虚部进行归纳转换(复数相位的性质,分子和分母相位之差即为整体相位响应),最终可以表示为
- 主值相频响应:
∠ ∣ H ( e j ω ) ∣ = ∠ [ b 0 a 0 ] + ∠ ∑ k = 1 M [ 1 − c k e j ω ] − ∠ ∑ k = 1 N [ 1 − d k e j ω ] \angle|H(e^{j\omega})|=\angle\Big[\frac{b_0}{a_0}\Big]+\angle\sum_{k=1}^M[1-c_ke^{j\omega}]-\angle\sum_{k=1}^N[1-d_ke^{j\omega}] ∠∣H(ejω)∣=∠[a0b0]+∠k=1∑M[1−ckejω]−∠k=1∑N[1−dkejω] - 连续相频响应:
∠ ∣ H ( e j ω ) ∣ = A R G [ b 0 a 0 ] + A R G ∑ k = 1 M [ 1 − c k e j ω ] − A R G ∑ k = 1 N [ 1 − d k e j ω ] + 2 π r \angle|H(e^{j\omega})|=ARG\Big[\frac{b_0}{a_0}\Big]+ARG\sum_{k=1}^M[1-c_ke^{j\omega}]-ARG\sum_{k=1}^N[1-d_ke^{j\omega}]+2\pi r ∠∣H(ejω)∣=ARG[a0b0]+ARGk=1∑M[1−ckejω]−ARGk=1∑N[1−dkejω]+2πr
4.群延迟
由上文一样可以知道群延迟(信号不同频率分量通过系统的延迟)就是求相位响应的导数,下式为连续相位响应的群延迟:
g
r
d
[
H
(
e
j
ω
]
=
−
d
d
w
a
r
g
[
H
(
e
j
ω
)
]
=
>
−
∑
k
=
1
M
d
d
ω
(
arg
[
1
−
c
k
e
j
ω
]
)
+
∑
k
=
1
N
d
d
ω
(
arg
[
1
−
d
k
e
j
ω
]
)
grd[H(e^{j\omega}]=-\frac{d}{dw}arg[H(e^{j\omega})]=>-\sum_{k=1}^M\frac{d}{d\omega}(\arg[1-c_ke^{j\omega}])+\sum_{k=1}^N\frac{d}{d\omega}(\arg[1-d_ke^{j\omega}])
grd[H(ejω]=−dwdarg[H(ejω)]=>−k=1∑Mdωd(arg[1−ckejω])+k=1∑Ndωd(arg[1−dkejω])
负值的原因是因为相位和频率之间的反向关系。
对于主值相位响应群延迟和连续相位响应群延迟可以使用下图表示:
可以看到对于不同的
r
r
r,主值相位响应式跳跃的,而连续相位响应式连续的。
总结
由于受到篇幅的原因,本篇文章只是对Z变换的频率响应中的幅频响应、相频响应以及群延迟进行了推导。但是在本篇文章中,反复提及了Z变换中的零点与极点,那么极点和零点到底有什么作用,会对于系统带来什么影响,这会在下一篇文章中进行介绍。
反正收藏也不会看,不如点个赞吧