java中准确的trig函数

Giv*_*ind -3 java math trigonometry

我在java中使用天文方程.我需要用sin和cos函数做一些编程.我得到错误的值和舍入错误导致结果出现问题.

一个特定的例子是远离的:

 Dec=Math.atan(Math.tan(Eps)*Math.sin(RA));
Run Code Online (Sandbox Code Playgroud)

对于值,使用度,Eps = 23.440&RA = 312.5175,我应该得到答案-17.7223但是,相反,我得到

 Dec=0.6587619787704015
Run Code Online (Sandbox Code Playgroud)

有人可以为这些数学函数建议一个变通方法或一个好的数学库吗?我应该在C中这样做并传递结果吗?实际上,C也给了我一些准确性的错误.

我正在使用学位.

谢谢

Arn*_*lle 7

那些数学方法需要弧度,而不是度数.

我猜这RA=312.5175是作为312.5175 % (2*Pi)弧度的中间人.

  • 这不能得到足够的支持.这是人们犯的一个很常见的错误.我不知道任何使用学位的编程语言. (2认同)