-
-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Determine why the accuracy of FK4 -> FK5 is poorer than FK5 -> FK4 in some cases #17
Comments
Would this imply that round-tripping FK4 -> FK5 -> FK4 changes the coordinates more than numerical errors? You should be able to quickly check by removing the
|
@cdeil - yes, I think the errors are larger than floating-point. However, If I remove the if statements, it won't round-trip via FK4 if I understand - it will just do FK5 -> FK5 for example - or am I misunderstanding? |
You are right, we have to write a separate test for round-tripping (should go in the astropy unit tests also if it's not there already). I tried to estimate the numerical rounding error we can expect for float64 computations. According to http://en.wikipedia.org/wiki/Double-precision_floating-point_format there's about 16 good decimal digits, so there should rounding errors should appear only at the nano-arcsec level:
Even if there are complicated formulae and errors accumulate, any differences we see at the micro-arcsecond level and above (this is what we print in the summary tables, Is that estimate correct? |
Yes, that sounds right! |
Here's the current FK4 -> FK5 and FK5 -> FK4 results summary: To me it looks like the differences are now at the sub-milli-arcsec level everywhere, i.e. the issue reported above is no longer present. @astrofrog - OK to close this issue? If you think a check should be added for all tools that they round-trip OK, please open a new issue. |
The difference with pyast is currently around 4mas, so it depends if we are happy with that level of accuracy? This is definitely >> 64-bit precision. |
It seems the agreement for FK4 -> FK5 is generally lower - for instance, for pyslalib <-> kapteyn, the accuracy is 0.004" one way, and 0.2" the other. Is it something to do with the default epoch of observation?
The text was updated successfully, but these errors were encountered: