Aberration¶
- PyAstronomy.pyasl.co_aberration(jd, ra, dec, radian=False)¶
Computes the changes in RA and DEC due to annual aberration.
- Parameters
- jdfloat or array
The Julian date(s). If array, must be the same size as ra and dec.
- rafloat or array
The right ascension in degrees. If array, it must be the same size as dec.
- decfloat or array
The declination in degrees. If array, it must be the same size as ra.
- radianboolean, optional
Results are returned in radian instead of degrees. The default is False.
- Returns
- dRafloat or array
The change in right ascension [by default in deg].
- dDecfloat or arrays
The change in declination [by default in deg].
Notes
Note
This function was ported from the IDL Astronomy User’s Library.
- IDL - Documentation
- NAME:
CO_ABERRATION
- PURPOSE:
Calculate changes to Ra and Dec due to the effect of annual aberration
- EXPLANATION:
as described in Meeus, Chap 23.
- CALLING SEQUENCE:
co_aberration, jd, ra, dec, d_ra, d_dec, [EPS = ]
- INPUTS
jd : Julian Date [scalar or vector] ra, dec : Arrays (or scalars) of the ra and dec’s in degrees
- Note: if jd is a vector, then ra and dec must either be scalars, or
vectors of the same length.
- OUTPUTS
- d_ra, d_dec: the corrections to ra and dec due to aberration in
arcseconds. (These values can be added to the true RA and dec to get the apparent position). Note that d_ra
is not multiplied by cos(dec), so that apparent_ra = ra + d_ra/3600.
- OPTIONAL INPUT KEYWORD:
- epsset this to the true obliquity of the ecliptic (in radians), or
- it will be set for you if you don’t know it (in that case, set it to
an empty variable).
- EXAMPLE:
Compute the change in RA and Dec of Theta Persei (RA = 2h46m,11.331s, Dec = 49d20’,54.54”) due to aberration on 2028 Nov 13.19 TD
IDL> jdcnv,2028,11,13,.19*24,jd ;Get Julian date IDL> co_aberration,jd,ten(2,46,11.331)*15,ten(49,20,54.54),d_ra,d_dec
==> d_ra = 30.045” (=2.003s) d_dec = 6.697”
- NOTES:
- These formula are from Meeus, Chapters 23. Accuracy is much better than 1
arcsecond.
The maximum deviation due to annual aberration is 20.49” and occurs when the Earth velocity is perpendicular to the direction of the star.
- REVISION HISTORY:
Written, June 2002, Chris O’Dell, U. of Wisconsin Fix error with vector input W. Landsman June 2009 June 2009 update fixed case where JD was scalar but RA,Dec were vectors, but broke the case when both JD and RA,Dec were vectors Aug 2012 W. Landsman
Example:¶
from __future__ import print_function, division
from PyAstronomy import pyasl
import datetime
import numpy as np
# Convert calendar date to JD
# use the datetime package
jd = datetime.datetime(2013, 4, 16)
jd = pyasl.jdcnv(jd)
# Specify RA and DEC
ra = 10.
dec = 30.
print("Get change in RA and DEC due to annual aberration")
print(" for JD = " + str(jd) + ":",
np.ravel(pyasl.co_aberration(jd, ra, dec)))
print()
print("Get change for several RAs and DECs for the same JD")
ra = np.arange(10., 50., 10.)
dec = np.arange(30., 70., 10.)
res = pyasl.co_aberration(np.repeat(jd, ra.size), ra, dec)
print(res[0], res[1])
print()
print("Get change for several RAs and DECs for different JDs")
jds = np.arange(jd, jd+ra.size, 1)
res = pyasl.co_aberration(jds, ra, dec)
print("JD delta(RA) delta(DEC)")
for i in range(ra.size):
print("%12.5f %8.5f %8.5f" % (jds[i], res[0][i], res[1][i]))