Scilab 解包函数
Scilab unwrap function
p(1)= 0.
p(2)= 0.6771057
p(3)= 0.8277359
p(4)= 1.3828832
p(5)= 1.7971431
p(6)= 2.1882188
p(7)= 2.6911235
p(8)= 3.1073485
p(9)=-2.7161114
p(10)=-2.3440447
q=unwrap(p,2*%pi)
给出了错误的结果。 -2*pi 已减去 p(2)。那是不正确的。
q(2)=-5.6060796
q =
0.
-5.6060796
-5.4554495
-4.9003021
-4.4860422
-4.0949665
-3.5920618
-3.1758368
-2.7161114
-2.3440447
我认为最新版本的 unwrap 中存在错误。您可以编辑其来源
--> edit unwrap
并注释掉第 102 行:
//wh = abs(ju)>5*abs(avL)
然后在编辑器中执行 unwrap.sci 来更新它的定义。在此修复之后,解包似乎在您的示例中运行良好:
p(1)= 0.
p(2)= 0.6771057
p(3)= 0.8277359
p(4)= 1.3828832
p(5)= 1.7971431
p(6)= 2.1882188
p(7)= 2.6911235
p(8)= 3.1073485
p(9)=-2.7161114
p(10)=-2.3440447
q=unwrap(p,2*%pi);
plot(1:10,p,1:10,unwrap(p,2*%pi))
legend("wraped","unwraped",2)
p(1)= 0.
p(2)= 0.6771057
p(3)= 0.8277359
p(4)= 1.3828832
p(5)= 1.7971431
p(6)= 2.1882188
p(7)= 2.6911235
p(8)= 3.1073485
p(9)=-2.7161114
p(10)=-2.3440447
q=unwrap(p,2*%pi)
给出了错误的结果。 -2*pi 已减去 p(2)。那是不正确的。 q(2)=-5.6060796
q =
0.
-5.6060796
-5.4554495
-4.9003021
-4.4860422
-4.0949665
-3.5920618
-3.1758368
-2.7161114
-2.3440447
我认为最新版本的 unwrap 中存在错误。您可以编辑其来源
--> edit unwrap
并注释掉第 102 行:
//wh = abs(ju)>5*abs(avL)
然后在编辑器中执行 unwrap.sci 来更新它的定义。在此修复之后,解包似乎在您的示例中运行良好:
p(1)= 0.
p(2)= 0.6771057
p(3)= 0.8277359
p(4)= 1.3828832
p(5)= 1.7971431
p(6)= 2.1882188
p(7)= 2.6911235
p(8)= 3.1073485
p(9)=-2.7161114
p(10)=-2.3440447
q=unwrap(p,2*%pi);
plot(1:10,p,1:10,unwrap(p,2*%pi))
legend("wraped","unwraped",2)