question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Too big parallax from apply_space_motion

See original GitHub issue

I have been trying to plot the path of a star on the plane of the sky as seen from Earth. I have the following example for a source located toward the Galactic bulge and at 8 kpc. However, the parallax I get after calling apply_space_motion and converting from ICRS to GCRS is far too large. Am I doing something wrong or is there an issue in the conversion?

def testing_astropy_parallax():
    from astropy.coordinates import SkyCoord, GCRS
    from astropy.time import Time
    import astropy.units as u
    import numpy as np
    import pylab as plt
    
    ra = 17.5 * 15.0 * u.deg
    dec = -29 * u.deg
    dist = 8000.0 * u.pc
    sc = SkyCoord(ra, dec,
                  pm_ra_cosdec = 0.0 * u.mas/u.yr,
                  pm_dec = 0.0 * u.mas/u.yr,
                  distance = dist,
                  obstime = Time(57000.0, format='mjd'))
    
    t = np.arange(56000, 58000)
    t_obj = Time(t, format='mjd')
    
    sc_t_icrs = sc.apply_space_motion(new_obstime=t_obj)
    sc_t_gcrs = sc_t_icrs.transform_to('gcrs')

    ra_t   = sc_t_gcrs.ra
    dec_t  = sc_t_gcrs.dec
    cosd_t = np.cos(dec_t.to('radian'))
    
    dra = ((ra_t - ra) * cosd_t).to('arcsec')  # in arcsec
    ddec = (dec_t - dec).to('arcsec')          # in arcsec

    plt.figure(1, figsize=(10, 3))
    plt.subplots_adjust(wspace=0.6)
    
    parallax_pred = 1.0 / dist.value
    print('Predicted parallax from manual calculation:')
    print('    {0:.2f} mas'.format(parallax_pred*1e3))
    
    plt.subplot(1, 3, 1)
    plt.plot(t, dra, color='black')
    plt.xlabel('Time (MJD)')
    plt.ylabel(r'$\Delta \alpha^*$ (")')
    plt.axhline(parallax_pred, color='red', linestyle='--')
    
    plt.subplot(1, 3, 2)
    plt.plot(t, ddec, color='black')
    plt.xlabel('Time (MJD)')
    plt.ylabel(r'$\Delta \delta$ (")')
    plt.title('Star Distance = ' + str(dist.to('pc')))
    
    plt.subplot(1, 3, 3)
    plt.plot(dra, ddec, color='black')
    plt.xlabel(r'$\Delta \alpha^*$ (")')
    plt.ylabel(r'$\Delta \delta$ (")')
    plt.axis('equal')
    
    return
image

Issue Analytics

  • State:open
  • Created 4 years ago
  • Comments:6 (2 by maintainers)

github_iconTop GitHub Comments

2reactions
schlaflycommented, Dec 13, 2020

Just adding a +1 to this… I just also wanted to propagate stars from their Gaia epochs to the current epoch. I started staying in ICRS the whole time, and then nothing moves. I think retrospectively that’s correct, since ICRS is centered at the solar system barycenter, but it wasn’t what I originally expected.

After reading this issue, I’m not sure that this example in the documentation https://docs.astropy.org/en/stable/coordinates/apply_space_motion.html#example-use-velocity-to-compute-sky-position-at-different-epochs is correctly including the parallax motion as well. Maybe I should be reading that example as only including the proper motion component, but the presence of the parallax in the SkyCoord constructor certainly suggested to me that the parallax was being taken into account as well.

Reiterating @jluastro’s statement, what’s desired is how the nearby stars move relative to the distant stars. I guess that’s some hybrid frame that has its origin at the center of the earth, but the velocity of the solar system barycenter?

1reaction
jluastrocommented, Apr 3, 2020

I would like to be able to plot the proper motion and parallax of a star as it would be seen on the sky; but without the annual aberration. I honestly don’t even know what kind of reference frame this would be. It is a geocentric observation; but the coordinate aberration should be removed. Is this in the existing coordinates somehow?

Essentially I want ICRS + geocentric motion… stars at infinity are fixed (e.g. ICRS), but see perspective change from Earth.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Why is my parallax scrolling image being ENLARGED?
Some questionable behavior is happening with the container as it isn't truly displaying as 1143 pixels wide (checked with my ruler tool) so...
Read more >
Parallax - Cosmic Distance Ladder - NAAP - UNL Astronomy
The answer turns out to be yes, but the parallax is very small – far smaller than can be seen with the naked...
Read more >
Parallax Angle
The parallax angle is the angle between the Earth at one time of year, and the Earth six months later, as measured from...
Read more >
Measuring distances to stars via parallax
Astronomers need a VERY long baseline in order to produce a parallax angle which is large enough to detect via conventional imaging. Fortunately,...
Read more >
Stellar Parallax - Las Cumbres Observatory
Limitations of Distance Measurement Using Stellar Parallax. Parallax angles of less than 0.01 arcsec are very difficult to measure from Earth because of...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found