要计算一个系统相频特性,就要用到反正切函数,计算机中反正切函数规定,在一、二象限中的角度为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. PAT A1104 Sum of Number Segments (20 分)——数学规律,long long

    Given a sequence of positive numbers, a segment is defined to be a consecutive subsequence. For exam ...

  2. MySQL 误操作后如何快速恢复数据~!~!~

    基本上每个跟数据库打交道的程序员(当然也可能是你同事)都会碰一个问题,MySQL误操作后如何快速回滚?比如,delete一张表,忘加限制条件,整张表没了.假如这还是线上环境核心业务数据,那这事就闹大了 ...

  3. kubernetes中infra容器的理解

    1. infra容器和用户容器的关系 1.1 pause 是k8s的基础设施的一部分,pod中其他容器通过pause容器跟其他pod进行通信. 1.2 pod中其他容器跟pause容器共享命名空间1. ...

  4. eaeyui-combobox实现组合查询(即实现多个值得搜索)

    2015年9月1日,今天要实现下拉框的组合查询功能,即可以再下拉框中选择多个值,输入框中每个值之间有逗号隔开,传到后台,由split函数将其分割开,组合成数组,在由sql查询. 实现的效果是: 当时在 ...

  5. python 知识2

    零. type()函数怎么使用 type()的使用方法:type(对象)type()是接收一个对象当做参考,之后反回对象的相应类型.>>>type(1)<type 'int'& ...

  6. 一个可爱 & 小清新的加载等待Android控件

    https://github.com/Carson-Ho/Kawaii_LoadingView

  7. Intellij IDEA的下载和使用(针对学生的免费使用计划)

    一.下载和使用授权(针对学生) 1.下载 可以在Intellij IDEA官网上下载需要的版本.下载地址:https://www.jetbrains.com/idea/ 2.学生免费试用 首先,你得现 ...

  8. 一次线上redis实例cpu占用率过高问题优化(转)

    前情提要: 最近接了大数据项目的postgresql运维,刚接过来他们的报表系统就出现高峰期访问不了的问题,报表涉及实时数据和离线数据,离线读pg,实时读redis.然后自然而然就把redis也挪到我 ...

  9. Java各厂对外的优质博客

    1.美团:https://tech.meituan.com/ 2.极客学院:http://wiki.jikexueyuan.com/list/java/

  10. MVC_防止HttpPost重复提交

    重复提交的场景很常见,可能是当时服务器延迟的原因,如购物车物品叠加,重复提交多个订单.常见的解决方法是提交后把Button在客户端Js禁用,或是用Js禁止后退键等.在ASP.NET MVC 3 Web ...