1

我想实现块“复杂到 Arg”,它是 matlab 中 gnuradio 中的一个块。

angle我在matlab中使用该命令。但有些结果与 gnuradio 不同。

例如,

在matlab中,

angle(1.646236600879293e+03 + 8.043715071772031e+00i) = 0.004886084452240

在格努拉迪奥时,

块返回0.00294448575004935

有人可以解释一下吗?或者给我一个关于matlab命令的提示。

4

1 回答 1

2

根据这个讨论,出于性能原因,gnuradio 不使用 libmath atan2 函数。我相信 matlab 改用 libmath 函数。他们还说 0 或 Pi/2 的误差更大,这就是你的情况。因此 gnuradio arg 和 matlab angle 都是正确的,它们只是链接到不同的实现(atan),具有不同的性能和精度。

于 2015-11-10T12:51:01.870 回答