2

私はここで死にかけています。だから私は複素数(-4.9991 + 15.2631i)を持っています。もしそうならmatlabで

angle(-4.9991 + 15.2631i) = 1.8873

角度は基本的に次のように計算されると思いました

atan(15.2631/-4.9991) = -1.2543

なぜこれらは異なるのですか?複素数の角度を計算する ac 関数を書く必要があります。私はこのようにしました:

#define angle(x) (atan((GSL_IMAG(x)/GSL_REAL(x))))

しかし、その方法では、1.8873 の答えではなく、-1.2543 の答えが得られます。私は何を間違っていますか?

4

2 に答える 2

6
-1.2543 + Pi(radians) = 1.8873 (with rounding)

他の人が指摘したように、atan2()

于 2013-05-17T04:11:51.873 に答える