ATELIB
ATELIB is a library of FORTRAN routines used to compute the delay and phase for the Australia Telescope Compact Array. It was written by Mark Calabretta and Mike Kesteven (ATNF).
License
ATELIB is released in order to help individual astronomers build the ATLOD
tasks for AIPS.
Copies of ATELIB are available free of charge (see download link below). Please do not redistribute ATELIB.
This software comes with no warranty, express or implied. While we take every precaution to ensure correctness, we give no guarantees as to whether it will work with your data or not.
ATELIB subroutines
Each ATELIB routine resides in a separate source file which contains a detailed prologue describing the subroutine arguments.
ANTCRD computes the coordinates of the point on the azimuth axis closest to the elevation axis of each antenna. The parameters on which the corrections are based are different for each antenna, and must be obtained by a combination of measurement and calibration. ANTENX computes the correction to the delay for the displacement of the elevation axis from the azimuth axis. The displacement is different for each antenna, and must be obtained by calibration. AZ2HA transforms an azimuth and elevation to hour angle and declination. BASLNS computes the baselines in (u,v,w) coordinates corresponding to the equator and equinox of J2000.0. CDRIFT corrects the antenna coordinates for continental drift. DIRNAB computes the correction for diurnal aberration. This calculation is specific to the Australia Telescope in that it does not include the constant term. Different corrections apply to each antenna depending only on the latitude. DIRNPX computes the correction for diurnal parallax for an antenna. Rather than make a correction to the source position as is the usual procedure in optical astrometry, the correction is here applied to the delay calculated for the antenna. This is more suitable for an extended array. DISTPA finds the angular distance between two points on the celestial sphere. The reference points are specified consistently in any spherical coordinate system. Also returned is a generalized position angle. ELECOL computes the electron column density based on a simple model of the ionosphere. EPHMRS does ephemeris calculations for the Australia Telescope. Its main tasks are to provide: 1) the delay and its derivatives for tracking a source, 2) Earth's velocity for the correction of spectral observations, 3) visibility coordinates to be written with the uv data, and 4) the parallactic angle of the source at each antenna. EULERX applies the Euler angle based transformation of spherical coordinates. FARADY computes the Faraday rotation in the Earth's ionosphere. FNDARG computes the fundamental arguments of the nutation in the IAU, 1976 reference system. GEOTDE corrects the antenna coordinates for Earth tides. GEOWRP corrects the antenna coordinates for polar motion, Earth tides, continental drift, and ocean tide loading deformation of the Earth. GMSTUT returns UT1 for a given date and Greenwich mean sidereal time. HA2AZ transforms an hour angle and declination to azimuth and elevation. IONSPR compensates an antenna for the retardation of the incoming wave due to refraction in the ionosphere. LUNCRD computes low precision geocentric ecliptic coordinates of the moon. MEANAP converts from mean to geocentric apparent coordinates. MXM takes the product of two 3x3 matrices. MXV takes the product of a 3x3 matrix and a 3-vector. NUTATE returns the nutation in longitude and obliquity. OBLQTY computes the mean obliquity of the ecliptic at time T. OCEANS corrects the antenna coordinates for the deformation of the Earth caused by the ocean tides. OPTY computes the doppler shift correction required for spectral line observations at Parkes Radio Observatory. PARLCA computes the parallactic angle of the source for each antenna. PHASER has several tasks to perform: 1) correct the delays and parallactic angles returned by EPHMRS for frequency dependent effects, 2) compute the local oscillator phase and its derivatives, 3) do calculations required by the correlator for spectral line tracking. POLEXY computes the coordinates of the celestial ephemeris pole with respect to the adopted mean position of the pole in the ITRF reference system. POLTDE computes the rotational deformation of the Earth due to polar motion. REFRCT computes the "dry" and "wet" delays associated with atmospheric refraction of the incoming wave. SOLCRD computes low precision geocentric ecliptic coordinates of the sun. SOLSYS evaluates harmonic series for the heliocentric distance, longitude, and latitude of the planets and the corresponding geocentric coordinates of the sun and moon. It then calculates the geocentric distance, right ascension, and declination, for each. Positions are accurate to better than 1 arcmin except for Pluto for which 15 arcmin. SPHXYZ converts spherical coordinates to Cartesian. TIMETC computes the various measures of time from TAI, the International Atomic Time. In doing this it also computes and returns other important quantities such as the fundamental arguments of nutation, the mean obliquity of the ecliptic, and the nutation in longitude and obliquity. TOPCEN computes corrections for topocentric effects to the signal delay for an antenna. These are diurnal aberration, diurnal parallax (for solar system objects), tropospheric refraction, and structural defects in the antenna. TWIST transforms offsets in hour angle and declination to offsets in azimuth and elevation. UT1UT2 returns the standard correction for seasonal variations in the Earth's rotation needed when converting from UTC to UT1. Adding this correction to UT2 gives UT1. UTGMST computes the Greenwich mean sidereal time at epoch UT1. UTRUTC returns the correction for irregularities in the Earth's rotation needed when converting from UTC to UT1. Adding this correction to UTC gives UT2R. UVWMTX computes the rotation matrix for the conversion from the true equator and equinox of date to (u,v,w) coordinates of mean equator and equinox of J2000.0. VELCVT transforms between the different conventions in use for specifying the Doppler shift in spectral line work. Given one it will calculate the others. VNORM normalises a 3-vector also giving its modulus. XYZSPH converts Cartesian coordinates to spherical. ZONTDE returns the conventional correction for zonal tides in the Earth's rotation (IAU Resolution C9, 1982). The correction must be added to UT2R to give UT2. It is equivalent to UT1-UT1R.
SLALIB subroutines used by ATELIB
SLA_DEULER form a rotation matrix from three Euler angles. SLA_EVP accurately computes the barycentric and heliocentric velocity and position of the Earth. SLA_PREC forms the matrix of precession between two epochs (IAU1976/FK5).
EPHMRS
EPHMRS is the main driver routine for ATELIB, its operation is as follows:
Only frequency independent effects are considered, ionospheric refraction and Faraday rotation are handled by PHASER. Calculations of time and long period effects are performed by TIMETC, and GEOWRP for the middle of the integration cycle. Coordinates of the field centre are computed for the start, middle, and end of the integration period by MEANAP. This accounts for objects such as planets whose proper motion in an integration period may be significant. Corrections for short period effects such as refraction, diurnal aberration and parallax are then computed for each antenna at the start, middle, and end of the integration period by TOPCEN. The computations performed for the start, middle, and end of each integration period are then used to compute the delay, at the start of the integration and its first and second derivatives. Computation of the baselines in (u,v,w) coordinates of J2000.0 is done by BASLNS at every integration period. The parallactic angle, required for the conversion of the correlator outputs to true Stokes parameters, is computed for each antenna PARLCA at every integration period.
Subroutine call trees
Subroutine call tree for EPHMRS and other ATELIB routines (the SLA_ routines are from the SLALIB library):
EPHMRS - TIMETC - FNDARG. - UTRUTC. - ZONTDE. - UT1UT2. - UTGMST. - OBLQTY. - NUTATE. - GEOWRP - POLEXY. - GEOTDE - SOLCRD. - LUNCRD. - POLTDE - XYZSPH. - SPHXYZ. - CDRIFT. - OCEANS. - SOLCRD. - MEANAP - SLA_EVP - SLA_EPJ. - SLA_PREC - SLA_DEULER. - SPHXYZ. - VNORM. - SLA_PREC - SLA_DEULER. - SLA_DEULER. - MXM. - MXV. - XYZSPH. - TOPCEN - XYZSPH. - MXV. - DIRNAB. - DIRNPX. - REFRCT. - ANTENX. - BASLNS - UVWMTX - SLA_DEULER. - SLA_PREC - SLA_DEULER. - MXM. - PARLCA. PHASER - ELECOL. - IONSPR. - FARADY. OPTY - FNDARG. - OBLQTY. - NUTATE. - UTGMST. - MEANAP - SLA_EVP - SLA_EPJ. - SLA_PREC - SLA_DEULER. - SPHXYZ. - VNORM. - SLA_PREC - SLA_DEULER. - SLA_DEULER. - MXM. - MXV. - XYZSPH. AZ2HA - EULERX. DISTPA - EULERX. VELCVT. GMSTUT - UTGMST. HA2AZ - EULERX. ANTCRD. SOLSYS - EULERX. TWIST.