numpy.unwrap(p, discont=3.141592653589793, axis=-1)
函数通过将增量更改为2 * pi补码值来帮助用户解开给定的数组。它通过将绝对跳变更改为沿给定轴的2 * pi补码来改变绝对跳变,从而解开弧度相位p。结果是未包装的数组。
参数:
p : [array like] input array
discont : [float, optional] Maximum discontinuity between values, default is pi
axis : [int, optional] Axis along which unwrap will operate, default is last axis
返回: [ndarray] output array
注意:如果p中的不连续性小于pi,但大于不连续,则不进行解包,因为采用2 * pi补码只会使不连续性变大。
import numpy as np
l1 =[1, 2, 3, 4, 5]
print("Result 1: ", np.unwrap(l1))
l2 =[0, 0.78, 5.49, 6.28]
print("Result 2: ", np.unwrap(l2))
输出:
Result 1: array([1., 2., 3., 4., 5.]) Result 2: array([ 0., 0.78, -0.79318531, -0.00318531])
在l2中,discont> 2 * pi(介于0.78和5.49之间),因此更改了数组值。
代码2:自定义值有效
import numpy as np
l1 =[5, 7, 10, 14, 19, 25, 32]
print("Result 1: ", np.unwrap(l1, discont = 4))
l2 =[0, 1.34237486723, 4.3453455, 8.134654756, 9.3465456542]
print("Result 2: ", np.unwrap(l2, discont = 3.1))
输出:
Result 1: [ 5., 7., 10., 7.71681469, 6.43362939, 6.15044408, 6.86725877]
Result 2: [0., 1.34237487, 4.3453455, 1.85146945, 3.06336035]
参考文献: https://docs.scipy.org/doc/numpy-1.15.1/reference/generated/numpy.unwrap.html
相关用法
注:本文由纯净天空筛选整理自rajatg98大神的英文原创作品 numpy.unwrap() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。