当前位置: 首页 > news >正文

数字滤波器分析---相位响应

数字滤波器分析---相位响应

MATLAB® 函数可用于提取滤波器的相位响应。在给定频率响应的情况下,函数 abs 返回幅值,angle 返回以弧度为单位的相位角。要使用 fvtool 查看巴特沃斯滤波器的幅值和相位,请使用:

d = designfilt('lowpassiir','FilterOrder',9, ...'HalfPowerFrequency',400,'SampleRate',2000);
fvtool(d,'Analysis','freq')

Figure Figure 1: Magnitude Response (dB) and Phase Response contains an axes object. The axes object with title Magnitude Response (dB) and Phase Response, xlabel Frequency (Hz), ylabel Magnitude (dB) contains an object of type line.

您也可以点击工具栏上的幅值和相位响应按钮,或选择分析 > 幅值和相位响应显示绘图。

unwrap 函数在频率分析中也很有用。unwrap 根据需要对相位增减若干个 360° 以将其展开,使之在 360° 相位不连续点处保持连续。要了解 unwrap 的作用,请设计一个 25 阶低通 FIR 滤波器:

h = fir1(25,0.4);

用 freqz 获得频率响应,并以度为单位绘制相位:

[H,f] = freqz(h,1,512,2);
plot(f,angle(H)*180/pi)
grid

Figure contains an axes object. The axes object contains an object of type line.

很难将 360° 跳跃(由 angle 中反正切函数的定义导致)与 180° 跳跃(表示频率响应为零)区分开来。

unwrap 消除了 360° 跳跃:

plot(f,unwrap(angle(H))*180/pi)

Figure contains an axes object. The axes object contains an object of type line.

您也可以使用 phasez 查看展开的相位:

phasez(h,1)

Figure contains an axes object. The axes object with title Phase Response, xlabel Normalized Frequency ( times pi blank rad/sample), ylabel Phase (radians) contains an object of type line.

另请参阅

abs | angle | freqz | FVTool | phasez | unwrap

相关文章:

  • Linux应用开发基础知识——Framebuffer 应用编程(四)
  • PHP的curl会话
  • 【PostgreSql本地备份为dump文件与恢复】使用脚本一键备份为dump文件
  • SpringBoot 使用WebSocket打造在线聊天室
  • Ubuntu配置Yolov8环境并训练自己的数据集
  • Power Automate-创建审批流
  • GetPrivateProfileSection使用
  • IP-guard WebServer RCE漏洞复现
  • JavaEE初阶学习:Linux 基本使用和 web 程序部署
  • 十进制转换成2进制
  • 建设大型综合运维平台,对接集成多厂商网管系统
  • 线程池创建、执行、销毁的原理解析
  • Python 解决tkinter的Menu菜单command参数与bind方法共用触发事件
  • 如何设置静态IP
  • 【云栖2023】王峰:开源大数据平台3.0技术解读
  • Brief introduction of how to 'Call, Apply and Bind'
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • Java应用性能调优
  • Laravel Mix运行时关于es2015报错解决方案
  • nginx 负载服务器优化
  • puppeteer stop redirect 的正确姿势及 net::ERR_FAILED 的解决
  • Python - 闭包Closure
  • Stream流与Lambda表达式(三) 静态工厂类Collectors
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 跨域
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • ​你们这样子,耽误我的工作进度怎么办?
  • ​业务双活的数据切换思路设计(下)
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #pragma multi_compile #pragma shader_feature
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (十)c52学习之旅-定时器实验
  • (小白学Java)Java简介和基本配置
  • (一)Thymeleaf用法——Thymeleaf简介
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET Core 2.1路线图
  • .NET Core 版本不支持的问题
  • .Net Core缓存组件(MemoryCache)源码解析
  • .net FrameWork简介,数组,枚举
  • .NET Framework杂记
  • .NET HttpWebRequest、WebClient、HttpClient
  • .NET Reactor简单使用教程
  • .Net 路由处理厉害了
  • @transaction 提交事务_【读源码】剖析TCCTransaction事务提交实现细节
  • [ JavaScript ] JSON方法
  • [④ADRV902x]: Digital Filter Configuration(发射端)
  • [AutoSar]BSW_Com02 PDU详解
  • [BUUCTF NewStarCTF 2023 公开赛道] week3 crypto/pwn
  • [C#][opencvsharp]opencvsharp sift和surf特征点匹配
  • [Java算法分析与设计]--线性结构与顺序表(List)的实现应用