通带纹波,阻带衰减

  通带纹波是指在滤波器的频响中通带的最大幅值和最小幅值之间的差值,正常的纹波一般小于1db。不过也视情况而言,通带纹波会导致通带内的幅值大小有变化,一般要求越高,纹波越小越好。通带纹波和滤波器的阶数有关系,阶数越大纹波越小。

  阻带衰减:在通带中,有部分信号通,部分信号阻,而阻的部分不能不能全部阻断,只有部分衰减,部分留了下来,最小衰减描述了阻碍受阻信号的能力,衰减越大,则能力越好。

  • 22
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
要修改上述代码中的参数,你需要先找到定义滤波器的部分代码。具体而言,你需要找到实例化FIRFilter对象的代码行,然后修改其中的参数。 假设你已经找到了这一行代码: ```python fir_filter = FIRFilter(num_taps=100, cutoff_freq=0.1, pass_type='lowpass', window='hamming') ``` 要修改通带频率、阻带频率、通带纹波阻带衰减,你需要同时修改num_taps和cutoff_freq参数。这两个参数的含义是: - num_taps:滤波器的阶数,即滤波器的长度。 - cutoff_freq:滤波器的截止频率,用于指定通带频率或阻带频率。 具体而言,你需要计算出滤波器的阶数和截止频率,然后将其传递给FIRFilter的构造函数。 对于上述的要求,你可以按照以下步骤进行修改: 1. 计算出滤波器的阶数。根据公式,阶数可以计算为: ```python import numpy as np passband_freq = 0.08 # 通带频率 stopband_freq = 0.11 # 阻带频率 delta_p = 0.02 # 通带纹波 delta_s = 63.5 # 阻带衰减 A = -20 * np.log10(delta_s) # 计算A D = (delta_p**2 - 1) / (delta_p**2 + 1) * 0.5 / delta_p # 计算D N = np.ceil((A - 8) / (2.285 * (stopband_freq - passband_freq))) + 1 N = int(N) if N % 2 == 1 else int(N + 1) ``` 在这段代码中,我们首先定义了通带频率、阻带频率、通带纹波阻带衰减的值。然后,我们根据公式计算出滤波器的阶数N。 2. 计算出滤波器的截止频率。根据要求,我们需要设计一个最小阶低通FIR滤波器,因此截止频率应该是通带频率。具体而言,截止频率可以计算为: ```python cutoff_freq = passband_freq / 2 ``` 3. 修改FIRFilter的构造函数。根据上述计算结果,我们可以将构造函数修改为: ```python fir_filter = FIRFilter(num_taps=N, cutoff_freq=cutoff_freq, pass_type='lowpass', window='hamming') ``` 在这段代码中,我们将num_taps和cutoff_freq分别设置为计算得到的阶数和截止频率。 这样,你就成功地修改了上述代码的参数,滤波器的通带频率为0.08秒辐射/采样,阻带频率为0.11秒辐射/采样,通带纹波为2dB,阻带衰减为635dB。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

野狼位位

给点辛苦费0.1元

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值