#include <aephem.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define LATITUDE -12.345
#define LONGITUDE -67.890
#define ALTITUDE 5200
int main(int argc, char *argv[]) {
double jd_ut, jd_ut1, jd_tt, last, ra, dec, dist, alt, az;
jd_ut = ae_ctime_to_jd(time(NULL));
jd_ut1 = jd_ut + ae_dut1(jd_ut) * AE_D_PER_S;
jd_tt = jd_ut1 + ae_delta_t(jd_ut1) * AE_D_PER_S;
last = aes_last(jd_ut1, LONGITUDE);
ae_geocentric_from_orbit(jd_tt, ae_orb_earth, ae_orb_mars, &ra, &dec,
&dist);
aes_topocentric(jd_ut1, LATITUDE, LONGITUDE, dist, &ra, &dec);
ae_radec_to_altaz(last, LATITUDE, ra, dec, &alt, &az);
printf("JD (UT1) = %.5f, JD (TT) = %.5f\n", jd_ut1, jd_tt);
printf("Apparent ra/dec of Mars = " ae_hms_fmt ", " ae_dms_fmt "\n",
ae_hms_arg(ra), ae_dms_arg(dec));
printf("Az/alt of Mars = " ae_dms_fmt ", " ae_dms_fmt "\n",
ae_dms_arg(az), ae_dms_arg(alt));
return 0;
}
bash$ gcc -o quick_example quick_example.c -laephem -lm
bash$ date
Mon Aug 4 18:49:08 EDT 2008
bash$ ./quick_example
JD (UT1) = 2454683.44843, JD (TT) = 2454683.44919
Apparent ra/dec of Mars = 11h 27m 43.65s, 4d 19' 25.58"
Az/alt of Mars = 283d 18' 57.61", 32d 24' 13.32"