zdaz Subroutine

public subroutine zdaz(ujd, xp, yp, glon, glat, ht, ra, dec, irefr, zd, az, rar, decr)

THIS SUBROUTINE TRANSFORMS TOPOCENTRIC RIGHT ASCENSION AND DECLINATION TO ZENITH DISTANCE AND AZIMUTH. THIS ROUTINE USES A METHOD THAT PROPERLY ACCOUNTS FOR POLAR MOTION, WHICH IS SIGNIFICANT AT THE SUB-ARCSECOND LEVEL. THIS SUBROUTINE CAN ALSO ADJUST COORDINATES FOR ATMOSPHERIC REFRACTION.

 UJD    = UT1 JULIAN DATE (IN)
 XP     = CONVENTIONALLY-DEFINED X COORDINATE OF CELESTIAL
          INTERMEDIATE POLE WITH RESPECT TO ITRS POLE, IN
          ARCSECONDS (IN)
 YP     = CONVENTIONALLY-DEFINED Y COORDINATE OF CELESTIAL
          INTERMEDIATE POLE WITH RESPECT TO ITRS POLE, IN
          ARCSECONDS (IN)
 GLON   = GEODETIC (ITRS) LONGITUDE (EAST +) OF OBSERVER
          IN DEGREES (IN)
 GLAT   = GEODETIC (ITRS) LATITUDE (NORTH +) OF OBSERVER
          IN DEGREES (IN)
 HT     = HEIGHT OF OBSERVER IN METERS (IN)
 RA     = TOPOCENTRIC RIGHT ASCENSION OF OBJECT OF INTEREST,
          IN HOURS, REFERRED TO TRUE EQUATOR AND EQUINOX
          OF DATE (IN)
 DEC    = TOPOCENTRIC DECLINATION OF OBJECT OF INTEREST,
          IN DEGREES, REFERRED TO TRUE EQUATOR OF DATE (IN)
 IREFR  = ATMOSPHERIC REFRACTION OPTION (IN)
          SET IREFR=0 FOR NO REFRACTION
          SET IREFR=1 TO INCLUDE REFRACTION
 ZD     = TOPOCENTRIC ZENITH DISTANCE IN DEGREES,
          AFFECTED BY REFRACTION IF IREFR=1 (OUT)
 AZ     = TOPOCENTRIC AZIMUTH (MEASURED EAST FROM NORTH)
          IN DEGREES (OUT)
 RAR    = TOPOCENTRIC RIGHT ASCENSION OF OBJECT OF INTEREST,
          IN HOURS, REFERRED TO TRUE EQUATOR AND EQUINOX
          OF DATE, AFFECTED BY REFRACTION IF IREFR=1 (OUT)
 DECR   = TOPOCENTRIC DECLINATION OF OBJECT OF INTEREST,
          IN DEGREES, REFERRED TO TRUE EQUATOR OF DATE,
          AFFECTED BY REFRACTION IF IREFR=1 (OUT)

NOTE 1: XP AND YP CAN BE SET TO ZERO IF SUB-ARCSECOND ACCURACY IS NOT NEEDED. HT IS USED ONLY FOR REFRACTION, IF IREFR=1. RA AND DEC CAN BE OBTAINED FROM TPSTAR, TPPLAN, OR PLACE.

NOTE 2: THE DIRECTONS ZD=0 (ZENITH) AND AZ=0 (NORTH) ARE HERE CONSIDERED FIXED IN THE TERRESTRIAL SYSTEM. SPECIFICALLY, THE ZENITH IS ALONG THE GEODETIC NORMAL, AND NORTH IS TOWARD THE ITRS POLE.

NOTE 3: IF IREFR=0, THEN RAR=RA AND DECR=DEC.

NOTE 4: INPUT PARAMETERS XP, YP WERE X, Y IN NOVAS F3.0. THE NAMES WERE CHANGED FOR CONSISTANCY THROUGHOUT NOVAS AND WITH IERS CONVENTIONS.

Arguments

Type IntentOptional Attributes Name
real(kind=wp) :: ujd
real(kind=wp) :: xp
real(kind=wp) :: yp
real(kind=wp) :: glon
real(kind=wp) :: glat
real(kind=wp) :: ht
real(kind=wp) :: ra
real(kind=wp) :: dec
integer :: irefr
real(kind=wp) :: zd
real(kind=wp) :: az
real(kind=wp) :: rar
real(kind=wp) :: decr

Calls

proc~~zdaz~~CallsGraph proc~zdaz novas_module::zdaz eqinox eqinox proc~zdaz->eqinox proc~refrac novas_module::refrac proc~zdaz->proc~refrac proc~tercel novas_module::tercel proc~zdaz->proc~tercel resume resume proc~zdaz->resume refdat refdat proc~refrac->refdat getdt getdt proc~tercel->getdt getmod getmod proc~tercel->getmod proc~ciobas novas_module::ciobas proc~tercel->proc~ciobas proc~cioloc novas_module::cioloc proc~tercel->proc~cioloc proc~erot novas_module::erot proc~tercel->proc~erot proc~frame novas_module::frame proc~tercel->proc~frame proc~nutate novas_module::nutate proc~tercel->proc~nutate proc~preces novas_module::preces proc~tercel->proc~preces proc~sidtim novas_module::sidtim proc~tercel->proc~sidtim proc~spin novas_module::spin proc~tercel->proc~spin proc~times novas_module::times proc~tercel->proc~times proc~wobble novas_module::wobble proc~tercel->proc~wobble setvec setvec proc~tercel->setvec proc~ciobas->proc~frame proc~ciobas->proc~nutate proc~ciobas->proc~preces proc~ciord novas_module::ciord proc~cioloc->proc~ciord proc~eqxra novas_module::eqxra proc~cioloc->proc~eqxra proc~etilt novas_module::etilt proc~nutate->proc~etilt proc~sidtim->getdt proc~sidtim->getmod proc~sidtim->proc~ciobas proc~sidtim->proc~cioloc proc~sidtim->proc~erot proc~sidtim->proc~frame proc~sidtim->proc~nutate proc~sidtim->proc~preces proc~sidtim->proc~times proc~sidtim->proc~eqxra proc~sidtim->proc~etilt ciofil ciofil proc~ciord->ciofil proc~eqxra->proc~etilt proc~etilt->getmod proc~etilt->proc~frame proc~etilt->proc~preces celpol celpol proc~etilt->celpol proc~eect2000 novas_module::eect2000 proc~etilt->proc~eect2000 proc~funarg novas_module::funarg proc~etilt->proc~funarg proc~nod~2 novas_module::nod proc~etilt->proc~nod~2 proc~anmp novas_module::anmp proc~eect2000->proc~anmp proc~nod~2->getmod proc~nu2000a novas_module::nu2000a proc~nod~2->proc~nu2000a proc~nu2000k novas_module::nu2000k proc~nod~2->proc~nu2000k proc~nu2000k->proc~funarg