要计算一个系统相频特性,就要用到反正切函数,计算机中反正切函数规定,在一、二象限中的角度为0~pi,三四象限的角度为0~-pi。

若一个角度从0变到2pi,但实际得到的结果是0~pi,再由-pi~0,在w=pi处发生跳变,跳变幅度为2pi,这就叫相位的卷绕。
unwrap(w)就是解卷绕,使相位在pi处不发生跳变,从而反应出真实的相位变化 "

查看 unwrap 的帮助文档可以发现 unwrap 还可以输入一个参数 tol,默认tol = pi。也许你需要根据情况修改下 tol。

对于一般的数列,直接使用unwrap(pha)就可以了

unwrap功能检查出数据相位跳变,并纠正跳变
实际上在检查是否跳变的时候是有个标准的
unwrap(pha,tol)
这个tol就是标准,在默认的情况下,这个标准是pi
也就是说unwrap在检查到数据前后两点的差距在超过tol的时候,就认为有跳变
然后就回处理数据,让后面的数据加2pi或者减2pi是数据连续
大部分情况下使用pi这个标准都比较合适,所以第二个参数可以缺省
特殊情况下是可以通过设置tol调整鉴别标准 而unwrap函数不单能对数列作用,还能对矩阵作用
实现对矩阵每一行或者每一列实施相位矫正
所以完整的格式是unwrap(pha,tol,dim)
最后一个参数dim表示需要对矩阵的行,还是列进行unwrap操作
如果对列每一列操作,那么第三个参数可以缺省
而要对每一行操作,那么第三个参数填2 unwrap(pha,[],2) 表示对矩阵phi中的相位数据,每一行实施相位矫正
使用默认的检测跳变标准

UNWRAP(P) unwraps radian phases P by changing absolute
jumps greater than or equal to pi to their 2*pi complement.
It unwraps along the first non-singleton dimension of P
and leaves the first phase value along this dimension
unchanged. P can be a scalar, vector, matrix, or N-D array.

UNWRAP(P,TOL) uses a jump tolerance of TOL rather
than the default TOL = pi.

UNWRAP(P,[],DIM) unwraps along dimension DIM using the
default tolerance. UNWRAP(P,TOL,DIM) uses a jump tolerance
of TOL.

Class support for input P:
float: double, single

See also ANGLE, ABS.

Copyright 1984-2005 The MathWorks, Inc.

Overview of the algorithm:
Reshape p to be a matrix of column vectors. Perform the
unwrap calculation column-wise on this matrix. (Note that this is
equivalent to performing the calculation on dimension one.)
Then reshape the output back.

atan和unwrap解卷绕的更多相关文章

  1. Matlab滤波器设计(转)

    滤波器设计是一个创建满足指定滤波要求的滤波器参数的过程.滤波器的实现包括滤波器结构的选择和滤波器参数的计算.只有完成了滤波器的设计和实现,才能最终完成数据的滤波. 滤波器设计的目标是实现数据序列的频率 ...

  2. 转载,matla滤波函数

    转载地址http://blog.sina.com.cn/s/blog_6163bdeb0102e1dj.html 滤波器设计是一个创建满足指定滤波要求的滤波器参数的过程.滤波器的实现包括滤波器结构的选 ...

  3. Swif - 可选型

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #4dbf56 } p.p2 { margin: 0.0px 0. ...

  4. [jQuery学习系列一]1-选择器与DOM对象

    前言: 好久没有更新博客了, 最近想复习下 之前学过的JS的相关内容, 也算是自己的一种总结. 知识长时间不用就会忘记, 多学多记多用!! 下面的程序都可以在下面的网站进行在线调试: http://w ...

  5. 单位冲击响应与频响以及FIR实现代码(C语言)(转)

    源:FIR数字滤波器C语言 1.单位冲击响应与频响 就如同之前所说的一样,使用下图所示的单位冲击响应,所设计的滤波器,是无法实现的. 现在,让我们看看其这个滤波器的频响.所谓频响,就是计算其单位冲击响 ...

  6. JQuery攻略(一) 基础知识——选择器 与 DOM

    JQuery是功能丰富的Javascript库,可以帮助用户毫不费力地把动态功能应用到网页. JQuery具有许多强大的功能,包括访问部分网页,快速修改网页内容,添加动画,应用AJAX技术等等. 正因 ...

  7. 声源定位之2精读《sound localization based on phase difference enhancement using deep neuarl networks》

    2.1.1 题目与摘要 1.为什么要增强IPD? The phase differences between the discrete Fourier transform (DFT) coeffici ...

  8. Beautiful Soup 4 方法便捷查询

    目录 BS4便捷查询 属性 子节点 父节点 兄弟节点 格式化输出 搜索文档树 修改文档树 BS4便捷查询 准备 : import requests, re from bs4 import Beauti ...

  9. rust实战系列-base64编码

    前言 某些只能使用ASCII字符的场景,往往需要传输非ASCII字符的数据,这时就需要一种编码可以将数据转换成ASCII字符,而base64编码就是其中一种. 编码原理很简单,将原始数据以3字节(24 ...

随机推荐

  1. WireShark抓包工具使用

    WireShark是一款网络封包分析软件,它抓取网络封包,并尽可能显示出最详细的封包资料. wireshark的准备工作 安装wireshark sudo apt-get install wiresh ...

  2. 源代码管理工具(下)-SVN目录结构

    内容中包含 base64string 图片造成字符过多,拒绝显示

  3. 重装系统之制作U盘启动盘

    准备: 1.需要一个大于4G的U盘. 2.一个原版系统. 3.制作U盘启动盘的工具—ultraliso. 一.一个大于4G的U盘 制作启动盘将会格式化U盘,记得做好备份. 二.一个原版系统 至于你要装 ...

  4. python棋类游戏编写入门

    刚接触棋类游戏程序编写的朋友,往往比较迷惑,不知从何下手. 本文总结了棋类游戏的主程序流程.计算机走子策略.打分方式(以井字棋.黑白棋.五子棋为例),未使用minimax算法,比较简单,适合刚接触的朋 ...

  5. ML.NET 示例:二元分类之用户评论的情绪分析

    写在前面 准备近期将微软的machinelearning-samples翻译成中文,水平有限,如有错漏,请大家多多指正. 如果有朋友对此感兴趣,可以加入我:https://github.com/fei ...

  6. BodeAbp前端介绍

    BodeAbp的前端可以根据自己的喜好选型,推荐React.js.angular2.js.vue.js,后续我会以react.js为例说明BodeAbp前端的一些设计思路. BodeAbp提供的前端d ...

  7. Mvc4_ @RenderBody、@RenderPage、@RenderSection用法

    一.@RenderBody 当创建基于_Layout.cshtml布局页面的视图时,视图的内容会和布局页面合并,而新创建视图的内容会通过_Layout.cshtml布局页面的@RenderBody() ...

  8. Ionic 2.0 相关资料

    原文发表于我的技术博客 本文汇总了学习 Ionic 2 的相关资料,也算是一个 Ionic Awesome 列表,供大家参考,有需要分享的可以留言. 原文发表于我的技术博客 1. 文档 1.1 Ion ...

  9. Openstack部署踩坑

    第一周: 使用kola部署Openstack,vip_address有问题,双网上也不行,就是部署不了,但all-in-one却可以,可是节点不会加. 第二周: 使用Packstack部署Openst ...

  10. Spring RPC 入门学习(2)-获取Map对象

    Spring RPC传递Map用例编写 1. 新建RPC接口类 package com.cvicse.ump.rpc.interfaceDefine; import java.util.Map; pu ...