最小相位系统的相位延迟大于非最小相位系统的例子

作者 : admin 本文共944个字,预计阅读时间需要3分钟 发布时间: 2024-06-10 共4人阅读
import numpy as np
from scipy.signal import freqs_zpk,freqs,tf2zpk
import matplotlib.pyplot as plt
y = 1j*10
z,p,k = ([-1+y],[-3,-7],1)
w, h = freqs_zpk(z, p, k, worN=np.logspace(-3, 5, 1000))
z1,p1,k1 = ([1+y],[-3,-7],1)
w1, h1 = freqs_zpk(z1, p1, k1, worN=np.logspace(-3, 5, 1000))
fig = plt.figure(figsize=(14,7))
ax1 = fig.add_subplot(1, 1, 1)
ax1.set_title('Analog filter frequency response')
ax1.semilogx(w, 20 * np.log10(abs(h)), 'b')
ax1.semilogx(w1, 20 * np.log10(abs(h1)), 'b-.')
ax1.set_ylabel('Amplitude [dB]', color='b')
ax1.set_xlabel('Frequency [Hz]')
ax1.grid(True)
ax2 = ax1.twinx()
angles = np.unwrap(np.angle(h,deg=True),period=360)
angles1 = np.unwrap(np.angle(h1,deg=True),period=360)
ax2.semilogx(w, angles, 'g')
ax2.semilogx(w1, angles1, 'g-.')
ax2.set_ylabel('Angle [degree]', color='g')
plt.axis('tight')
plt.show()

最小相位系统的相位延迟大于非最小相位系统的例子插图

图中,蓝色的实线和虚线重叠,是幅频响应。
绿色的是相频响应,实线是最小相位系统(零点为-1+10j),虚线是最小相位系统(零点为1+10j)。最小相位系统的相位延迟小,相位波动小。

修改零点的虚部为0,即实线最小相位系统(零点为-1+0j),虚线是最小相位系统(零点为1+0j),得到下图,发现相频响应两线的上线位置发生改变,即最小相位系统的相位延迟更大,但仍是最小相位系统的波动小。
最小相位系统的相位延迟大于非最小相位系统的例子插图(1)

本站无任何商业行为
个人在线分享 » 最小相位系统的相位延迟大于非最小相位系统的例子
E-->