As I know, spring equinox of 2016 is on 2016/3/20 4:30 GMT.

I execute following statements in python:


from astropy.time import Time

from astropy.coordinates import get_sun

t=Time('2016-03-20 4:30:00')



I expect to get s.ra.degree and s.dec.degree very close to 0.

But I got s.ra.degree=0.7052336 and s.dec.degree=0.30536325.


Hope some one can help me. Thanks.


Looking at the astropy documentation, the Sun's position is calculated in GCRS co-ordinates these are intern expressed in J2000.0 and not JNow.

The difference is therefore due in part to precession between J2000.0 and JNow.

You will also find that the time of the equinox is not exactly 4:30 but has been rounded. The algorithm used to get to 4:30 itself may also have precision limitations due to all sorts of reasons. The same will be true of the calculated position of the Sun at a given time.

These errors will all add up to give a slightly incorrect figure.

Cartes du Ciel (a well known planatarium application) calculates the Sun's location at 4:30 as being: JNow RA: 00h00m01.71s DE:+00°00'01.4" J2000 RA: 23h59m11.85s DE:-00°05'23.6"

So it looks like most off the error is due to limits of the Astropy library.

  • $\begingroup$ Is there method in astropy to transform coordinate from J2000 to JNow? $\endgroup$
    – hjyanghj
    May 20 '16 at 14:49
  • $\begingroup$ Sorry I've never used it so I don't know, you could try checking the documentation. Though I suspect that most of the inconsistency is probably in other areas of calculating the position of the Sun. $\endgroup$ May 21 '16 at 11:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.