我正在使用两个信号的时差进行角度估算。
我使用asind
函数(在MATLAB中)来获取学位信息,
但asind
有时会给出复数。
真实,想象或绝对中的哪一个可以给出代表性的角度信息? 请帮助我。
答案 0 :(得分:1)
您正在评估asind
的绝对值大于1的数字,该数字不存在。 MATLAB别无选择,只能返回complex result of the formula。即使是1.0
以上的微小偏差也会导致结果变得复杂。例如,:
>> asind(1)
ans =
90
>> asind(1+eps) % eps('double') is about 2.2204e-16
ans =
90.0000 - 0.0000i
这很容易由角度浮点计算的不准确性引起。如果您确定这是问题而不是y值计算中的错误,那么快速解决方法就是采用实际组件(real(asind(theta))
)。或者,您可以检查输入是否大于1或小于-1并正确地纠正该值。