Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在obspy中设置零相位带通滤波器的阶数_Python_Python 3.x_Signal Processing_Obspy - Fatal编程技术网

Python 如何在obspy中设置零相位带通滤波器的阶数

Python 如何在obspy中设置零相位带通滤波器的阶数,python,python-3.x,signal-processing,obspy,Python,Python 3.x,Signal Processing,Obspy,我有一个关于在obspy中设置零相位带通滤波器顺序的问题 我想应用二阶零相位滤波器,转角频率为0.05Hz和0.1Hz 我认为键入“st.filter('带通',freqmin=0.05,freqmax=0.1,corners=2,zerophase=True')是正确的 然而,我有点困惑,因为根据下面的链接,设置“zerophase=True”会导致两倍的过滤器顺序 所以我想问一下,在我的例子中,设置“corners=2”或“corners=1”等是否正确 如果有人给我一个答案,那将对我大有

我有一个关于在obspy中设置零相位带通滤波器顺序的问题

我想应用二阶零相位滤波器,转角频率为0.05Hz和0.1Hz

我认为键入“st.filter('带通',freqmin=0.05,freqmax=0.1,corners=2,zerophase=True')是正确的

然而,我有点困惑,因为根据下面的链接,设置“zerophase=True”会导致两倍的过滤器顺序

所以我想问一下,在我的例子中,设置“corners=2”或“corners=1”等是否正确

如果有人给我一个答案,那将对我大有帮助


谢谢。

您应该指定
corners=1


零相位滤波器的实现方式是通过滤波器运行数据两次,一次向前,一次向后。这将导致两倍的幅度响应,但抵消了相位响应。因此,如果您预期阻带中的衰减为12 dB/倍频程,如在正常的二阶滤波器中,则指定
拐角=1
。这将导致向前传球时衰减6 dB/倍频程,然后向后传球时再衰减6 dB/倍频程。

谢谢回复。我明白了:)