from astropy.coordinates import SkyCoord, BarycentricMeanEcliptic, get_body_barycentric from astropy.time import Time import astropy.units as u now = Time.now() mars_icrs = SkyCoord(get_body_barycentric('mars', now), frame='icrs') mars_ecliptic = mars_icrs.transform_to(BarycentricMeanEcliptic()) print(f"observation time: {now.iso[:19]}") print(f"mars ICRS coordinate") print(f"RA = {mars_icrs.ra.to_string(unit=u.hourangle, sep=':', precision=2)}") print(f"DEC = {mars_icrs.dec.to_string(unit=u.deg, sep=':', precision=1)}") print(f"mars BarycentricMeanEcliptic coordinate:") print(f"longitude = {mars_ecliptic.lon.to_string(unit=u.deg, sep=':', precision=2)}") print(f"latitude = {mars_ecliptic.lat.to_string(unit=u.deg, sep=':', precision=2)}") print(f"distance to the origin (solar system center of mass):") print(f"ICRS: {mars_icrs.distance.to('AU'):.8f}") print(f"BarycentricMeanEcliptic: {mars_ecliptic.distance.to('AU'):.8f}") print(f"difference: {(mars_icrs.distance - mars_ecliptic.distance).to('km'):.3f}")