bandpass.py 文件源码

python
阅读 36 收藏 0 点赞 0 评论 0

项目:cebl 作者: idfah 项目源码 文件源码
def __init__(self, lowFreq, highFreq, sampRate=1.0,
                 order=3, filtType='butter', zeroPhase=True,
                 dtype=None, **kwargs):
        """Construct a new IIR bandpass filter.
        """
        BandpassFilterBase.__init__(self, lowFreq, highFreq, sampRate, dtype=dtype)

        self.order     = order
        self.filtType  = filtType.lower()
        self.zeroPhase = zeroPhase

        if self.bandType not in ('allpass', 'allstop'):
            if self.bandType == 'lowpass':
                self.Wn = self.high
            elif self.bandType == 'highpass':
                self.Wn = self.low
            elif self.bandType == 'bandpass':
                self.Wn = (self.low, self.high)
            elif self.bandType == 'bandstop':
                self.Wn = (self.high, self.low)
            else:
                raise Exception('Invalid bandType: ' + str(self.bandType))

            self.numCoef, self.denomCoef = spsig.iirfilter(order, self.Wn,
                ftype=filtType, btype=self.bandType, **kwargs)

            self.numCoef = self.numCoef.astype(self.dtype, copy=False)
            self.denomCoef = self.denomCoef.astype(self.dtype, copy=False)

            self.initZi()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号