Astro-PAL
view release on metacpan or search on metacpan
palsrc/palRefz.c view on Meta::CPAN
/*
*+
* Name:
* palRefz
* Purpose:
* Adjust unrefracted zenith distance
* Language:
* Starlink ANSI C
* Type of Module:
* Library routine
* Invocation:
* void palRefz ( double zu, double refa, double refb, double *zr );
* Arguments:
* zu = double (Given)
* Unrefracted zenith distance of the source (radians)
* refa = double (Given)
* tan Z coefficient (radians)
* refb = double (Given)
* tan**3 Z coefficient (radian)
* zr = double * (Returned)
* Refracted zenith distance (radians)
* Description:
* Adjust an unrefracted zenith distance to include the effect of
* atmospheric refraction, using the simple A tan Z + B tan**3 Z
* model (plus special handling for large ZDs).
* Authors:
* PTW: Patrick T. Wallace
* TIMJ: Tim Jenness (JAC, Hawaii)
* {enter_new_authors_here}
* Notes:
* - This routine applies the adjustment for refraction in the
* opposite sense to the usual one - it takes an unrefracted
* (in vacuo) position and produces an observed (refracted)
* position, whereas the A tan Z + B tan**3 Z model strictly
* applies to the case where an observed position is to have the
* refraction removed. The unrefracted to refracted case is
* harder, and requires an inverted form of the text-book
* refraction models; the formula used here is based on the
* Newton-Raphson method. For the utmost numerical consistency
* with the refracted to unrefracted model, two iterations are
* carried out, achieving agreement at the 1D-11 arcseconds level
* for a ZD of 80 degrees. The inherent accuracy of the model
* is, of course, far worse than this - see the documentation for
* palRefco for more information.
*
* - At ZD 83 degrees, the rapidly-worsening A tan Z + B tan^3 Z
* model is abandoned and an empirical formula takes over. For
* optical/IR wavelengths, over a wide range of observer heights and
* corresponding temperatures and pressures, the following levels of
* accuracy (arcsec, worst case) are achieved, relative to numerical
* integration through a model atmosphere:
*
* ZR error
*
* 80 0.7
* 81 1.3
* 82 2.4
* 83 4.7
* 84 6.2
* 85 6.4
* 86 8
* 87 10
* 88 15
* 89 30
* 90 60
* 91 150 } relevant only to
* 92 400 } high-elevation sites
*
* For radio wavelengths the errors are typically 50% larger than
* the optical figures and by ZD 85 deg are twice as bad, worsening
* rapidly below that. To maintain 1 arcsec accuracy down to ZD=85
* at the Green Bank site, Condon (2004) has suggested amplifying
* the amount of refraction predicted by palRefz below 10.8 deg
* elevation by the factor (1+0.00195*(10.8-E_t)), where E_t is the
* unrefracted elevation in degrees.
*
* The high-ZD model is scaled to match the normal model at the
* transition point; there is no glitch.
*
* - Beyond 93 deg zenith distance, the refraction is held at its
* 93 deg value.
*
* - See also the routine palRefv, which performs the adjustment in
* Cartesian Az/El coordinates, and with the emphasis on speed
* rather than numerical accuracy.
* References:
* Condon,J.J., Refraction Corrections for the GBT, PTCS/PN/35.2,
* NRAO Green Bank, 2004.
* History:
* 2012-08-24 (TIMJ):
* Initial version, ported directly from Fortran SLA
* Adapted with permission from the Fortran SLALIB library.
* {enter_further_changes_here}
* Copyright:
* Copyright (C) 2004 Rutherford Appleton Laboratory
* Copyright (C) 2012 Science and Technology Facilities Council.
* All Rights Reserved.
* Licence:
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 3 of
* the License, or (at your option) any later version.
*
( run in 0.521 second using v1.01-cache-2.11-cpan-39bf76dae61 )