/*  
 *  - - - - - - - - - -  
 *   g a l _ h f k 5 z  
 *  - - - - - - - - - -  
 *  
 *  This routine is part of the General Astrodynamics Library  
 *  
 *  Description: 
 *  
 *  Transform a Hipparcos star position into FK5 J2000, assuming  
 *  zero Hipparcos proper motion.  
 *  
 *  This routine is an independent translation of a FORTRAN routine  
 *  that is part of IAU's SOFA software collection.  
 *  
 *  Status:
 *  
 *     support routine.  
 *  
 *  Given:
 *  
 *     rh                  d        Hipparcos RA (radians)  
 *     dh                  d        Hipparcos Dec (radians)  
 *     date1,date2         d        TDB date (Note 1)  
 *  
 *  Returned (all FK5, equinox J2000, date DATE1+DATE2):  
 *     *r5                 d        RA (radians)  
 *     *d5                 d        Dec (radians)  
 *     *dr5                d        FK5 RA proper motion (rad/year, Note 4)  
 *     *dd5                d        Dec proper motion (rad/year, Note 4)  
 *  
 *  Notes:  
 *  
 *  1) The TT date date1+date2 is a Julian Date, apportioned in any  
 *     convenient way between the two arguments.  For example,  
 *     JD(TT)=2450123.7 could be expressed in any of these ways,  
 *     among others:  
 *  
 *            date1         date2  
 *  
 *         2450123.7          0.0        (JD method)  
 *         2451545.0      -1421.3        (J2000 method)  
 *         2400000.5      50123.2        (MJD method)  
 *         2450123.5          0.2        (date & time method)  
 *  
 *     The JD method is the most natural and convenient to use in  
 *     cases where the loss of several decimal digits of resolution  
 *     is acceptable.  The J2000 method is best matched to the way  
 *     the argument is handled internally and will deliver the  
 *     optimum resolution.  The MJD method and the date & time methods  
 *     are both good compromises between resolution and convenience.  
 *  
 *  2) The proper motion in RA is dRA/dt rather than cos(Dec)*dRA/dt.  
 *  
 *  3) The FK5 to Hipparcos transformation is modeled as a pure  
 *     rotation and spin;  zonal errors in the FK5 catalogue are  
 *     not taken into account.  
 *  
 *  4) It was the intention that Hipparcos should be a close  
 *     approximation to an inertial frame, so that distant objects  
 *     have zero proper motion;  such objects have (in general)  
 *     non-zero proper motion in FK5, and this routine returns those  
 *     fictitious proper motions.  
 *  
 *  5) The position returned by this routine is in the FK5 J2000  
 *     reference system but at date date1+date2.  
 *  
 *  6) See also gal_fk52h, gal_h2fk5, gal_fk5zhz.  
 *  
 *  Called:
 *  
 *     gal_s2c            spherical coordinates to unit vector  
 *     gal_fk5hip         FK5 to Hipparcos rotation and spin  
 *     gal_rxp            product of r-matrix and p-vector  
 *     gal_sxp            multiply p-vector by scalar  
 *     gal_rxr            product of two r-matrices  
 *     gal_trxp           product of transpose of r-matrix and p-vector  
 *     gal_pxp            vector product of two p-vectors  
 *     gal_pv2s           pv-vector to spherical  
 *     gal_anp            normalize angle into range 0 to 2pi  
 *  
 *  References:  
 *  
 *     F.Mignard & M.Froeschle, Astron. Astrophys. 354, 732-739 (2000).  
 *  
 *  This revision:
 *  
 *     2007 April 18 ( c version 2008 February 4 )  
 *  
 *  
 *  Copyright (C) 2008 Paul C. L. Willmott. See notes at end.  
 *  
 *-----------------------------------------------------------------------  
 */  
  
#ifndef _GAL_HFK5Z_H_  
#define _GAL_HFK5Z_H_ 1  

#undef __BEGIN_DECLS  
#undef __END_DECLS  
#ifdef __cplusplus  
#define __BEGIN_DECLS extern "C" {  
#define __END_DECLS }  
#else  
#define __BEGIN_DECLS /* empty */  
#define __END_DECLS   /* empty */  
#endif
  
__BEGIN_DECLS  
  
void  
gal_hfk5z  
 (  
    double rh,  
    double dh,  
    double date1,  
    double date2,  
    double *r5,  
    double *d5,  
    double *dr5,  
    double *dd5  
 ) ;  
  
__END_DECLS  
  
#endif /* !_GAL_HFK5Z_H_ */  

/*  
 *  gal - General Astrodynamics Library  
 *  Copyright (C) 2008 Paul C. L. Willmott  
 *  
 *  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 2 of the License, or  
 *  (at your option) any later version.  
 *  
 *  This program is distributed in the hope that it will be useful,  
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of  
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
 *  GNU General Public License for more details.  
 *  
 *  You should have received a copy of the GNU General Public License along  
 *  with this program; if not, write to the Free Software Foundation, Inc.,  
 *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.  
 *  
 *  Contact:  
 *  
 *  Paul Willmott  
 *  vp9mu@amsat.org  
 */  
