elliptic_motion.h   elliptic_motion.h 
skipping to change at line 152 skipping to change at line 152
* \ingroup elliptic * \ingroup elliptic
*/ */
void ln_get_ell_body_equ_coords (double JD, struct ln_ell_orbit * orbit, st ruct ln_equ_posn * posn); void ln_get_ell_body_equ_coords (double JD, struct ln_ell_orbit * orbit, st ruct ln_equ_posn * posn);
/*! \fn double ln_get_ell_body_rst (double JD, struct ln_lnlat_posn * obser ver, struct ln_ell_orbit * orbit, struct ln_rst_time * rst); /*! \fn double ln_get_ell_body_rst (double JD, struct ln_lnlat_posn * obser ver, struct ln_ell_orbit * orbit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an ell iptic orbit. * \brief Calculate the time of rise, set and transit for a body with an ell iptic orbit.
* \ingroup elliptic * \ingroup elliptic
*/ */
int ln_get_ell_body_rst (double JD, struct ln_lnlat_posn * observer, struct ln_ell_orbit * orbit, struct ln_rst_time * rst); int ln_get_ell_body_rst (double JD, struct ln_lnlat_posn * observer, struct ln_ell_orbit * orbit, struct ln_rst_time * rst);
/*! \fn double ln_get_ell_body_rst_horizon (double JD, struct ln_lnlat_posn
* observer, struct ln_ell_orbit * orbit, double horizon, struct ln_rst_tim
e * rst);
* \brief Calculate the time of rise, set and transit for a body with an ell
iptic orbit.
* \ingroup elliptic
*/
int ln_get_ell_body_rst_horizon (double JD, struct ln_lnlat_posn * observer
, struct ln_ell_orbit * orbit, double horizon, struct ln_rst_time * rst);
/*! \fn double ln_get_ell_body_next_rst (double JD, struct ln_lnlat_posn *
observer, struct ln_ell_orbit * orbit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an ell
iptic orbit.
* \ingroup elliptic
*/
int ln_get_ell_body_next_rst (double JD, struct ln_lnlat_posn * observer, s
truct ln_ell_orbit * orbit, struct ln_rst_time * rst);
/*! \fn double ln_get_ell_body_next_rst_horizon (double JD, struct ln_lnlat
_posn * observer, struct ln_ell_orbit * orbit, double horizon, struct ln_rs
t_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an ell
iptic orbit.
* \ingroup elliptic
*/
int ln_get_ell_body_next_rst_horizon (double JD, struct ln_lnlat_posn * obs
erver, struct ln_ell_orbit * orbit, double horizon, struct ln_rst_time * rs
t);
/*! \fn double ln_get_ell_body_next_rst_horizon_future (double JD, struct l
n_lnlat_posn * observer, struct ln_ell_orbit * orbit, double horizon, int d
ay_limit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an ell
iptic orbit.
* \ingroup elliptic
*/
int ln_get_ell_body_next_rst_horizon_future (double JD, struct ln_lnlat_pos
n * observer, struct ln_ell_orbit * orbit, double horizon, int day_limit, s
truct ln_rst_time * rst);
/*!\fn double ln_get_ell_last_perihelion (double epoch_JD, double M, double n); /*!\fn double ln_get_ell_last_perihelion (double epoch_JD, double M, double n);
* \brief Calculate the julian day of the last perihelion. * \brief Calculate the julian day of the last perihelion.
* \ingroup elliptic * \ingroup elliptic
*/ */
double ln_get_ell_last_perihelion (double epoch_JD, double M, double n); double ln_get_ell_last_perihelion (double epoch_JD, double M, double n);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 41 lines changed or added


 hyperbolic_motion.h   hyperbolic_motion.h 
skipping to change at line 104 skipping to change at line 104
* \brief Calculate the bodies elongation to the Sun. * \brief Calculate the bodies elongation to the Sun.
*/ */
double ln_get_hyp_body_elong (double JD, struct ln_hyp_orbit * orbit); double ln_get_hyp_body_elong (double JD, struct ln_hyp_orbit * orbit);
/*! \fn double ln_get_hyp_body_rst (double JD, struct ln_lnlat_posn * obser ver, struct ln_hyp_orbit * orbit, struct ln_rst_time * rst); /*! \fn double ln_get_hyp_body_rst (double JD, struct ln_lnlat_posn * obser ver, struct ln_hyp_orbit * orbit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with a hype rbolic orbit. * \brief Calculate the time of rise, set and transit for a body with a hype rbolic orbit.
* \ingroup hyperbolic * \ingroup hyperbolic
*/ */
int ln_get_hyp_body_rst (double JD, struct ln_lnlat_posn * observer, struct ln_hyp_orbit * orbit, struct ln_rst_time * rst); int ln_get_hyp_body_rst (double JD, struct ln_lnlat_posn * observer, struct ln_hyp_orbit * orbit, struct ln_rst_time * rst);
/*! \fn double ln_get_hyp_body_rst_horizon (double JD, struct ln_lnlat_posn
* observer, struct ln_hyp_orbit * orbit, double horizon, struct ln_rst_tim
e * rst);
* \brief Calculate the time of rise, set and transit for a body with a hype
rbolic orbit.
* \ingroup hyperbolic
*/
int ln_get_hyp_body_rst_horizon (double JD, struct ln_lnlat_posn * observer
, struct ln_hyp_orbit * orbit, double horizon, struct ln_rst_time * rst);
/*! \fn double ln_get_hyp_body_next_rst (double JD, struct ln_lnlat_posn *
observer, struct ln_hyp_orbit * orbit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an hyp
erbolic orbit.
* \ingroup hyperbolic
*/
int ln_get_hyp_body_next_rst (double JD, struct ln_lnlat_posn * observer, s
truct ln_hyp_orbit * orbit, struct ln_rst_time * rst);
/*! \fn double ln_get_hyp_body_next_rst_horizon (double JD, struct ln_lnlat
_posn * observer, struct ln_hyp_orbit * orbit, double horizon, struct ln_rs
t_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an hyp
erbolic orbit.
* \ingroup hyperbolic
*/
int ln_get_hyp_body_next_rst_horizon (double JD, struct ln_lnlat_posn * obs
erver, struct ln_hyp_orbit * orbit, double horizon, struct ln_rst_time * rs
t);
/*! \fn double ln_get_hyp_body_next_rst_horizon_future (double JD, struct l
n_lnlat_posn * observer, struct ln_hyp_orbit * orbit, double horizon, int d
ay_limit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an hyp
erbolic orbit.
* \ingroup hyperbolic
*/
int ln_get_hyp_body_next_rst_horizon_future (double JD, struct ln_lnlat_pos
n * observer, struct ln_hyp_orbit * orbit, double horizon, int day_limit, s
truct ln_rst_time * rst);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 41 lines changed or added


 julian_day.h   julian_day.h 
skipping to change at line 44 skipping to change at line 44
* \brief Calculate the julian day from date. * \brief Calculate the julian day from date.
*/ */
double ln_get_julian_day (struct ln_date * date); double ln_get_julian_day (struct ln_date * date);
/*! \fn void ln_get_date (double JD, struct ln_date * date) /*! \fn void ln_get_date (double JD, struct ln_date * date)
* \ingroup calendar * \ingroup calendar
* \brief Calculate the date from the julian day. * \brief Calculate the date from the julian day.
*/ */
void ln_get_date (double JD, struct ln_date * date); void ln_get_date (double JD, struct ln_date * date);
/*! \fn void ln_get_date_from_timet (time_t * t, struct ln_date * date)
* \\ingroup calendar
* \brief Set date from system time
*/
void ln_get_date_from_timet (time_t * t, struct ln_date * date);
/*! \fn void ln_get_date_from_tm (struct tm * t, struct ln_date * date)
* \\ingroup calendar
* \brief Set date from system tm structure
*/
void ln_get_date_from_tm (struct tm * t, struct ln_date * date);
/*! \fn void ln_get_local_date (double JD, struct ln_zonedate * zonedate) /*! \fn void ln_get_local_date (double JD, struct ln_zonedate * zonedate)
* \ingroup calender * \ingroup calender
* \brief Calculate the zone date from the Julian day * \brief Calculate the zone date from the Julian day
*/ */
void ln_get_local_date (double JD, struct ln_zonedate * zonedate); void ln_get_local_date (double JD, struct ln_zonedate * zonedate);
/*! \fn unsigned int ln_get_day_of_week (struct ln_date * date) /*! \fn unsigned int ln_get_day_of_week (struct ln_date * date)
* \ingroup calendar * \ingroup calendar
* \brief Calculate day of the week. * \brief Calculate day of the week.
*/ */
skipping to change at line 74 skipping to change at line 86
* \ingroup calendar * \ingroup calendar
*/ */
void ln_get_date_from_sys (struct ln_date * date); void ln_get_date_from_sys (struct ln_date * date);
/*! \fn double ln_get_julian_from_timet (time_t * time) /*! \fn double ln_get_julian_from_timet (time_t * time)
* \brief Calculate julian day from time_t * \brief Calculate julian day from time_t
* \ingroup calendar * \ingroup calendar
*/ */
double ln_get_julian_from_timet (time_t * in_time); double ln_get_julian_from_timet (time_t * in_time);
/*! \fn void ln_get_timet_from_julian (double JD, time_t * time) /*! \fn void ln_get_timet_from_julian (double JD, time_t * in_time)
* \brief Calculate time_t from julian day * \brief Calculate time_t from julian day
* \ingroup calendar * \ingroup calendar
*/ */
void ln_get_timet_from_julian (double JD, time_t * in_time); void ln_get_timet_from_julian (double JD, time_t * in_time);
/*! \fn double ln_get_julian_local_date(struct ln_zonedate* zonedate) /*! \fn double ln_get_julian_local_date(struct ln_zonedate* zonedate)
* \brief Calculate Julian day from local date * \brief Calculate Julian day from local date
* \ingroup calendar * \ingroup calendar
*/ */
double ln_get_julian_local_date(struct ln_zonedate* zonedate); double ln_get_julian_local_date(struct ln_zonedate* zonedate);
 End of changes. 2 change blocks. 
1 lines changed or deleted 13 lines changed or added


 libnova.h   libnova.h 
skipping to change at line 130 skipping to change at line 130
#include <libnova/elliptic_motion.h> #include <libnova/elliptic_motion.h>
#include <libnova/asteroid.h> #include <libnova/asteroid.h>
#include <libnova/comet.h> #include <libnova/comet.h>
#include <libnova/parabolic_motion.h> #include <libnova/parabolic_motion.h>
#include <libnova/refraction.h> #include <libnova/refraction.h>
#include <libnova/rise_set.h> #include <libnova/rise_set.h>
#include <libnova/angular_separation.h> #include <libnova/angular_separation.h>
#include <libnova/ln_types.h> #include <libnova/ln_types.h>
#include <libnova/utility.h> #include <libnova/utility.h>
#include <libnova/hyperbolic_motion.h> #include <libnova/hyperbolic_motion.h>
#include <libnova/parallax.h>
#include <libnova/airmass.h>
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 2 lines changed or added


 ln_types.h   ln_types.h 
skipping to change at line 33 skipping to change at line 33
extern "C" { extern "C" {
#endif #endif
/* define some usefull constants if they are not already defined */ /* define some usefull constants if they are not already defined */
#ifndef M_PI_2 #ifndef M_PI_2
#define M_PI_2 1.5707963267948966192313216916398 #define M_PI_2 1.5707963267948966192313216916398
#define M_PI_4 0.78539816339744830961566084581988 #define M_PI_4 0.78539816339744830961566084581988
#define M_PI 3.1415926535897932384626433832795 #define M_PI 3.1415926535897932384626433832795
#endif #endif
/* sideral day lenght in seconds and days (for JD)*/
#define LN_SIDEREAL_DAY_SEC 86164.09
#define LN_SIDEREAL_DAY_DAY LN_SIDEREAL_DAY_SEC/86400
/* 1.1.2000 Julian Day & others */
#define JD2000 2451545.0
#define JD2050 2469807.50
#define B1900 2415020.3135
#define B1950 2433282.4235
/*! /*!
** Date ** Date
* \struct ln_date * \struct ln_date
* \brief Human readable Date and time used by libnova * \brief Human readable Date and time used by libnova
* *
* This is the Human readable (easy printf) date format used * This is the Human readable (easy printf) date format used
* by libnova. It's always in UTC. For local time, please use * by libnova. It's always in UTC. For local time, please use
* ln_zonedate. * ln_zonedate.
*/ */
skipping to change at line 82 skipping to change at line 93
}; };
/*! \struct ln_dms /*! \struct ln_dms
** \brief Degrees, minutes and seconds. ** \brief Degrees, minutes and seconds.
* *
* Human readable Angle in degrees, minutes and seconds * Human readable Angle in degrees, minutes and seconds
*/ */
struct ln_dms struct ln_dms
{ {
unsigned short neg:1; /*!< Non zero if negative */ unsigned short neg; /*!< Non zero if negative */
unsigned short degrees:9; /*!< Degrees. Valid 0 - 360 */ unsigned short degrees; /*!< Degrees. Valid 0 - 360 */
unsigned short minutes:6; /*!< Minutes. Valid 0 - 59 */ unsigned short minutes; /*!< Minutes. Valid 0 - 59 */
double seconds; /*!< Seconds. Valid double seconds; /*!< Seconds. Valid 0 - 59.9999... */
0 - 59.9999... */
}; };
/*! \struct ln_hms /*! \struct ln_hms
** \brief Hours, minutes and seconds. ** \brief Hours, minutes and seconds.
* *
* Human readable Angle in hours, minutes and seconds * Human readable Angle in hours, minutes and seconds
*/ */
struct ln_hms struct ln_hms
{ {
skipping to change at line 147 skipping to change at line 158
/*! \struct ln_equ_posn /*! \struct ln_equ_posn
** \brief Equatorial Coordinates. ** \brief Equatorial Coordinates.
* *
* The Right Ascension and Declination of an object. * The Right Ascension and Declination of an object.
* *
* Angles are expressed in degrees. * Angles are expressed in degrees.
*/ */
struct ln_equ_posn struct ln_equ_posn
{ {
double ra; /*!< RA. Object right ascension.*/ double ra; /*!< RA. Object right ascension in degrees.*/
double dec; /*!< DEC. Object declination */ double dec; /*!< DEC. Object declination */
}; };
/*! \struct ln_hrz_posn /*! \struct ln_hrz_posn
** \brief Horizontal Coordinates. ** \brief Horizontal Coordinates.
* *
* The Azimuth and Altitude of an object. * The Azimuth and Altitude of an object.
* *
* Angles are expressed in degrees. * Angles are expressed in degrees.
*/ */
skipping to change at line 312 skipping to change at line 323
* *
* Angles are expressed in degrees. * Angles are expressed in degrees.
*/ */
struct ln_nutation struct ln_nutation
{ {
double longitude; /*!< Nutation in longitude */ double longitude; /*!< Nutation in longitude */
double obliquity; /*!< Nutation in obliquity */ double obliquity; /*!< Nutation in obliquity */
double ecliptic; /*!< Obliquity of the ecliptic */ double ecliptic; /*!< Obliquity of the ecliptic */
}; };
/* Definitions of POSIX structures for Win32. */
#ifdef __WIN32__
struct timeval
{
long tv_sec; /* count of seconds since Jan. 1, 1970 */
long tv_usec; /* and microseconds */
};
struct timezone
{
int tz_minuteswest; /* Minutes west of GMT */
int tz_dsttime; /* DST correction offset */
};
#endif /* __WIN32__ */
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif #endif
 End of changes. 4 change blocks. 
6 lines changed or deleted 33 lines changed or added


 lunar.h   lunar.h 
skipping to change at line 24 skipping to change at line 24
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA.
* *
* Copyright (C) 2000 - 2005 Liam Girdwood * Copyright (C) 2000 - 2005 Liam Girdwood
*/ */
#ifndef _LN_LUNAR_H #ifndef _LN_LUNAR_H
#define _LN_LUNAR_H #define _LN_LUNAR_H
#include <libnova/ln_types.h> #include <libnova/ln_types.h>
#define LN_LUNAR_STANDART_HORIZONT 0.125 #define LN_LUNAR_STANDART_HORIZON 0.125
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/*! \defgroup lunar Lunar /*! \defgroup lunar Lunar
* *
* Functions relating to the Moon. * Functions relating to the Moon.
* *
* All angles are expressed in degrees. * All angles are expressed in degrees.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 parabolic_motion.h   parabolic_motion.h 
skipping to change at line 104 skipping to change at line 104
* \brief Calculate the bodies elongation to the Sun. * \brief Calculate the bodies elongation to the Sun.
*/ */
double ln_get_par_body_elong (double JD, struct ln_par_orbit * orbit); double ln_get_par_body_elong (double JD, struct ln_par_orbit * orbit);
/*! \fn double ln_get_par_body_rst (double JD, struct ln_lnlat_posn * obser ver, struct ln_par_orbit * orbit, struct ln_rst_time * rst); /*! \fn double ln_get_par_body_rst (double JD, struct ln_lnlat_posn * obser ver, struct ln_par_orbit * orbit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with a para bolic orbit. * \brief Calculate the time of rise, set and transit for a body with a para bolic orbit.
* \ingroup parabolic * \ingroup parabolic
*/ */
int ln_get_par_body_rst (double JD, struct ln_lnlat_posn * observer, struct ln_par_orbit * orbit, struct ln_rst_time * rst); int ln_get_par_body_rst (double JD, struct ln_lnlat_posn * observer, struct ln_par_orbit * orbit, struct ln_rst_time * rst);
/*! \fn double ln_get_par_body_rst_horizon (double JD, struct ln_lnlat_posn
* observer, struct ln_par_orbit * orbit, double horizon, struct ln_rst_tim
e * rst);
* \brief Calculate the time of rise, set and transit for a body with a para
bolic orbit.
* \ingroup parabolic
*/
int ln_get_par_body_rst_horizon (double JD, struct ln_lnlat_posn * observer
, struct ln_par_orbit * orbit, double horizon, struct ln_rst_time * rst);
/*! \fn double ln_get_par_body_next_rst (double JD, struct ln_lnlat_posn *
observer, struct ln_par_orbit * orbit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an par
abolic orbit.
* \ingroup parabolic
*/
int ln_get_par_body_next_rst (double JD, struct ln_lnlat_posn * observer, s
truct ln_par_orbit * orbit, struct ln_rst_time * rst);
/*! \fn double ln_get_par_body_next_rst_horizon (double JD, struct ln_lnlat
_posn * observer, struct ln_par_orbit * orbit, double horizon, struct ln_rs
t_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an par
abolic orbit.
* \ingroup parabolic
*/
int ln_get_par_body_next_rst_horizon (double JD, struct ln_lnlat_posn * obs
erver, struct ln_par_orbit * orbit, double horizon, struct ln_rst_time * rs
t);
/*! \fn double ln_get_par_body_next_rst_horizon_future (double JD, struct l
n_lnlat_posn * observer, struct ln_par_orbit * orbit, double horizon, int d
ay_limit, struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for a body with an par
abolic orbit.
* \ingroup parabolic
*/
int ln_get_par_body_next_rst_horizon_future (double JD, struct ln_lnlat_pos
n * observer, struct ln_par_orbit * orbit, double horizon, int day_limit, s
truct ln_rst_time * rst);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 41 lines changed or added


 precession.h   precession.h 
skipping to change at line 37 skipping to change at line 37
/*! \defgroup precession Precession. /*! \defgroup precession Precession.
* *
* Precession is the changing direction of the Earth's rotational axis over time and * Precession is the changing direction of the Earth's rotational axis over time and
* is due to the gravitational influence of the Sun and the Moon. * is due to the gravitational influence of the Sun and the Moon.
* *
* All angles are expressed in degrees. * All angles are expressed in degrees.
*/ */
/*! \fn void ln_get_equ_prec (struct ln_equ_posn * mean_position, double JD , struct ln_equ_posn * position); /*! \fn void ln_get_equ_prec (struct ln_equ_posn * mean_position, double JD , struct ln_equ_posn * position);
* \brief Calculate the effects of precession on equatorial coordinates. * \brief Calculate the effects of precession on equatorial coordinates, con vert current to J2000.
* \ingroup precession * \ingroup precession
*/ */
/* Equ 20.2, 20.3, 20.4 pg 126 */ /* Equ 20.2, 20.3, 20.4 pg 126 */
void ln_get_equ_prec (struct ln_equ_posn * mean_position, double JD, struct ln_equ_posn * position); void ln_get_equ_prec (struct ln_equ_posn * mean_position, double JD, struct ln_equ_posn * position);
/*! \fn void ln_get_equ_prec2 (struct ln_equ_posn * mean_position, double f
romJD, double toJD, struct ln_equ_posn * position);
* \brief Calculate the effects of precession on equatorial coordinates, bet
ween arbitary Jxxxx epochs.
* \ingroup precession
*/
/* Equ 20.2, 20.3, 20.4 pg 126 */
void ln_get_equ_prec2 (struct ln_equ_posn * mean_position, double fromJD, d
ouble toJD, struct ln_equ_posn * position);
/*! \fn void ln_get_ecl_prec (struct ln_lnlat_posn * mean_position, double JD, struct ln_lnlat_posn * position); /*! \fn void ln_get_ecl_prec (struct ln_lnlat_posn * mean_position, double JD, struct ln_lnlat_posn * position);
* \brief Calculate the effects of precession on ecliptical coordinates. * \brief Calculate the effects of precession on ecliptical coordinates.
* \ingroup precession * \ingroup precession
*/ */
/* Equ 20.5, 20.6 pg 128 */ /* Equ 20.5, 20.6 pg 128 */
void ln_get_ecl_prec (struct ln_lnlat_posn * mean_position, double JD, stru ct ln_lnlat_posn * position); void ln_get_ecl_prec (struct ln_lnlat_posn * mean_position, double JD, stru ct ln_lnlat_posn * position);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 12 lines changed or added


 rise_set.h   rise_set.h 
skipping to change at line 24 skipping to change at line 24
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA.
* *
* Copyright (C) 2000 - 2005 Liam Girdwood * Copyright (C) 2000 - 2005 Liam Girdwood
*/ */
#ifndef _LN_RISE_SET_H #ifndef _LN_RISE_SET_H
#define _LN_RISE_SET_H #define _LN_RISE_SET_H
#include <libnova/ln_types.h> #include <libnova/ln_types.h>
#define LN_STAR_STANDART_HORIZONT -0.5667 #define LN_STAR_STANDART_HORIZON -0.5667
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/*! \defgroup rst Rise, Set, Transit /*! \defgroup rst Rise, Set, Transit
* *
* Functions relating to an objects rise, set and transit * Functions relating to an objects rise, set and transit
* *
* All angles are expressed in degrees. * All angles are expressed in degrees.
*/ */
/*! \fn double ln_get_object_rst (double JD, struct ln_lnlat_posn * observe r, struct ln_equ_posn * object,struct ln_rst_time * rst); /*! \fn int ln_get_object_rst (double JD, struct ln_lnlat_posn * observer, struct ln_equ_posn * object,struct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for an object not orbi ting the Sun. * \brief Calculate the time of rise, set and transit for an object not orbi ting the Sun.
* \ingroup rst * \ingroup rst
*/ */
int ln_get_object_rst (double JD, struct ln_lnlat_posn * observer, struct l n_equ_posn * object, struct ln_rst_time * rst); int ln_get_object_rst (double JD, struct ln_lnlat_posn * observer, struct l n_equ_posn * object, struct ln_rst_time * rst);
/*! \fn double ln_get_object_next_rst (double JD, struct ln_lnlat_posn * ob /*! \fn int ln_get_object_rst_horizon (double JD, struct ln_lnlat_posn * ob
server, struct ln_equ_posn * object,struct ln_rst_time * rst); server, struct ln_equ_posn * object, long double horizon, struct ln_rst_tim
e * rst);
* \brief Calculate the time of rise, set and transit above local horizon fo
r
* an objet not orbiting the Sun.
*
*/
int ln_get_object_rst_horizon (double JD, struct ln_lnlat_posn * observer,
struct ln_equ_posn * object, long double horizon, struct ln_rst_time *
rst);
/*! \fn int ln_get_object_next_rst (double JD, struct ln_lnlat_posn * obser
ver, struct ln_equ_posn * object, struct ln_rst_time * rst);
* \brief Calculate the time of next rise, set and transit for an object not orbiting the Sun. * \brief Calculate the time of next rise, set and transit for an object not orbiting the Sun.
* E.g. it's sure, that rise, set and transit will be in <JD, JD+1> range. * E.g. it's sure, that rise, set and transit will be in <JD, JD+1> range.
* This function is not too precise, it's good to get general idea when obje ct will rise.
* \ingroup rst * \ingroup rst
*/ */
int ln_get_object_next_rst (double JD, struct ln_lnlat_posn * observer, str uct ln_equ_posn * object, struct ln_rst_time * rst); int ln_get_object_next_rst (double JD, struct ln_lnlat_posn * observer, str uct ln_equ_posn * object, struct ln_rst_time * rst);
int ln_get_body_rst_horizont (double JD, struct ln_lnlat_posn * observer, v /*! \fn int ln_get_object_next_rst_horizon (double JD, struct ln_lnlat_posn
oid (*get_equ_body_coords) (double, struct ln_equ_posn *), double horizont, * observer, struct ln_equ_posn * object, double horizon, struct ln_rst_tim
struct ln_rst_time * rst); e * rst);
* \brief Calculate the time of next rise, set and transit for an object not
orbiting the Sun.
* E.g. it's sure, that rise, set and transit will be in <JD, JD+1> range.
* \ingroup rst
*/
int ln_get_object_next_rst_horizon (double JD, struct ln_lnlat_posn * obser
ver, struct ln_equ_posn * object,
double horizon, struct ln_rst_time * rst);
/*! \fn int ln_get_body_rst_horizon (double JD, struct ln_lnlat_posn * obse
rver, void (*get_equ_body_coords) (double, struct ln_equ_posn *), double ho
rizon, struct ln_rst_time *rst);
* \brief Calculate the time of rise, set and transit for an object a body,
ussually Sun, a planet or Moon.
* \ingroup rst
*/
int ln_get_body_rst_horizon (double JD, struct ln_lnlat_posn * observer, vo
id (*get_equ_body_coords) (double, struct ln_equ_posn *), double horizon, s
truct ln_rst_time * rst);
/*! \fn int ln_get_body_next_rst_horizon (double JD, struct ln_lnlat_posn *
observer, void (*get_equ_body_coords) (double, struct ln_equ_posn *), doub
le horizon, struct ln_rst_time *rst);
* \brief Calculate the time of next rise, set and transit for an object a
body, ussually Sun, a planet or Moon.
* E.g. it's sure, that rise, set and transit will be in <JD, JD+1> range.
* \ingroup rst
*/
int ln_get_body_next_rst_horizon (double JD, struct ln_lnlat_posn * observe
r, void (*get_equ_body_coords) (double, struct ln_equ_posn *), double horiz
on, struct ln_rst_time * rst);
/*! \fn int ln_get_body_next_rst_horizon_future (double JD, struct ln_lnlat
_posn * observer, void (*get_equ_body_coords) (double, struct ln_equ_posn *
), double horizon, int day_limit, struct ln_rst_time *rst);
* \brief Calculate the time of next rise, set and transit for an object a
body, ussually Sun, a planet or Moon.
* E.g. it's sure, that rise, set and transit will be in <JD, JD+day_limit>
range.
* \ingroup rst
*/
int ln_get_body_next_rst_horizon_future (double JD, struct ln_lnlat_posn *
observer, void (*get_equ_body_coords) (double, struct ln_equ_posn *), doubl
e horizon, int day_limit, struct ln_rst_time * rst);
typedef void (*get_motion_body_coords_t) (double, void * orbit, struct ln_e
qu_posn *);
/*! \fn int ln_get_motion_body_rst_horizon (double JD, struct ln_lnlat_posn
* observer, get_motion_body_coords_t get_motion_body_coords, double horizo
n, struct ln_rst_time *rst);
* \brief Calculate the time of rise, set and transit for an object a body
on elliptic, parabolic or hyperbolic orbit.
* \ingroup rst
*/
int ln_get_motion_body_rst_horizon (double JD, struct ln_lnlat_posn * obser
ver, get_motion_body_coords_t get_motion_body_coords, void * orbit, double
horizon, struct ln_rst_time * rst);
/*! \fn int ln_get_motion_body_next_rst_horizon (double JD, struct ln_lnlat
_posn * observer, get_motion_body_coords_t get_motion_body_coords, double h
orizon, struct ln_rst_time *rst);
* \brief Calculate the time of next rise, set and transit for an object a
body on elliptic, parabolic or hyperbolic orbit.
* E.g. it's sure, that rise, set and transit will be in <JD, JD+1> range.
* \ingroup rst
*/
int ln_get_motion_body_next_rst_horizon (double JD, struct ln_lnlat_posn *
observer, get_motion_body_coords_t get_motion_body_coords, void * orbit, do
uble horizon, struct ln_rst_time * rst);
/*! \fn int ln_get_motion_body_next_rst_horizon_future (double JD, struct l
n_lnlat_posn * observer, get_motion_body_coords_t get_motion_body_coords, d
ouble horizon, int day_limit, struct ln_rst_time *rst);
* \brief Calculate the time of next rise, set and transit for an object a
body on elliptic, parabolic or hyperbolic orbit.
* E.g. it's sure, that rise, set and transit will be in <JD, JD+day_limit>
range.
* \ingroup rst
*/
int ln_get_motion_body_next_rst_horizon_future (double JD, struct ln_lnlat_
posn * observer, get_motion_body_coords_t get_motion_body_coords, void * or
bit, double horizon, int day_limit, struct ln_rst_time * rst);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif #endif
 End of changes. 5 change blocks. 
7 lines changed or deleted 103 lines changed or added


 solar.h   solar.h 
skipping to change at line 24 skipping to change at line 24
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA.
* *
* Copyright (C) 2000 - 2005 Liam Girdwood * Copyright (C) 2000 - 2005 Liam Girdwood
*/ */
#ifndef _LN_SOLAR_H #ifndef _LN_SOLAR_H
#define _LN_SOLAR_H #define _LN_SOLAR_H
#include <libnova/ln_types.h> #include <libnova/ln_types.h>
#define LN_SOLAR_STANDART_HORIZONT -0.8333 #define LN_SOLAR_STANDART_HORIZON -0.8333
#define LN_SOLAR_CIVIL_HORIZONT -6.0 #define LN_SOLAR_CIVIL_HORIZON -6.0
#define LN_SOLAR_NAUTIC_HORIZONT -12.0 #define LN_SOLAR_NAUTIC_HORIZON -12.0
#define LN_SOLAR_ASTRONOMICAL_HORIZONT -18.0 #define LN_SOLAR_ASTRONOMICAL_HORIZON -18.0
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/*! \defgroup solar Solar. /*! \defgroup solar Solar.
* *
* Calculate solar ecliptical/equatorial coordinates for a given julian date . * Calculate solar ecliptical/equatorial coordinates for a given julian date .
* Accuracy 0.01 arc second error - uses VSOP87 solution. * Accuracy 0.01 arc second error - uses VSOP87 solution.
* *
* All angles are expressed in degrees. * All angles are expressed in degrees.
*/ */
/*! \fn int ln_get_solar_rst_horizont (double JD, struct ln_lnlat_posn * ob /*! \fn int ln_get_solar_rst_horizon (double JD, struct ln_lnlat_posn * obs
server, double horizont, struct ln_rst_time *rst); erver, double horizon, struct ln_rst_time *rst);
* \brief Return solar rise/set time over local horizont (specified in degre * \brief Return solar rise/set time over local horizon (specified in degree
es). s).
* \ingroup solar * \ingroup solar
*/ */
int ln_get_solar_rst_horizont (double JD, struct ln_lnlat_posn * observer, double horizont, struct ln_rst_time * rst); int ln_get_solar_rst_horizon (double JD, struct ln_lnlat_posn * observer, d ouble horizon, struct ln_rst_time * rst);
/*! \fn int ln_get_solar_rst (double JD, struct ln_lnlat_posn * observer, s truct ln_rst_time * rst); /*! \fn int ln_get_solar_rst (double JD, struct ln_lnlat_posn * observer, s truct ln_rst_time * rst);
* \brief Calculate the time of rise, set and transit for the Sun. * \brief Calculate the time of rise, set and transit for the Sun.
* \ingroup solar * \ingroup solar
*/ */
int ln_get_solar_rst (double JD, struct ln_lnlat_posn * observer, struct ln _rst_time * rst); int ln_get_solar_rst (double JD, struct ln_lnlat_posn * observer, struct ln _rst_time * rst);
/*! \fn void ln_get_solar_geom_coords (double JD, struct ln_helio_posn * po sition); /*! \fn void ln_get_solar_geom_coords (double JD, struct ln_helio_posn * po sition);
* \brief Calculate solar geometric coordinates. * \brief Calculate solar geometric coordinates.
* \ingroup solar * \ingroup solar
 End of changes. 3 change blocks. 
9 lines changed or deleted 9 lines changed or added


 transform.h   transform.h 
skipping to change at line 86 skipping to change at line 86
/*! \fn void ln_get_ecl_from_rect (struct ln_rect_posn * rect, struct ln_ln lat_posn * posn) /*! \fn void ln_get_ecl_from_rect (struct ln_rect_posn * rect, struct ln_ln lat_posn * posn)
* \ingroup transform * \ingroup transform
* \brief Transform an objects rectangular coordinates into ecliptical coord inates. * \brief Transform an objects rectangular coordinates into ecliptical coord inates.
*/ */
/* Equ 33.2 /* Equ 33.2
*/ */
void ln_get_ecl_from_rect (struct ln_rect_posn * rect, struct ln_lnlat_posn * posn); void ln_get_ecl_from_rect (struct ln_rect_posn * rect, struct ln_lnlat_posn * posn);
/*! \fn void ln_get_equ_from_gal (struct ln_gal_posn *gal, struct ln_equ_po sn *equ) /*! \fn void ln_get_equ_from_gal (struct ln_gal_posn *gal, struct ln_equ_po sn *equ)
* \ingroup transform * \ingroup transform
* \brief Transform an object galactic coordinates into equatorial coordinat e. * \brief Transform an object galactic coordinates into equatorial coordinat es.
*/ */
/* Pg 94 */ /* Pg 94 */
void ln_get_equ_from_gal (struct ln_gal_posn *gal, struct ln_equ_posn *equ) ; void ln_get_equ_from_gal (struct ln_gal_posn *gal, struct ln_equ_posn *equ) ;
/*! \fn void ln_get_equ2000_from_gal (struct ln_gal_posn *gal, struct ln_eq
u_posn *equ)
* \ingroup transform
* \brief Transform an object galactic coordinate into J2000 equatorial coor
dinates.
*/
void ln_get_equ2000_from_gal (struct ln_gal_posn *gal, struct ln_equ_posn *
equ);
/*! \fn void ln_get_gal_from_equ (struct ln_equ_posn *equ, struct ln_gal_po sn *gal) /*! \fn void ln_get_gal_from_equ (struct ln_equ_posn *equ, struct ln_gal_po sn *gal)
* \ingroup transform * \ingroup transform
* \brief Transform an object equatorial coordinate into galactic coordinate s. * \brief Transform an object equatorial coordinates into galactic coordinat es.
*/ */
/* Pg 94 */ /* Pg 94 */
void ln_get_gal_from_equ (struct ln_equ_posn *equ, struct ln_gal_posn *gal) ; void ln_get_gal_from_equ (struct ln_equ_posn *equ, struct ln_gal_posn *gal) ;
/*! \fn void ln_get_gal_from_equ2000 (struct ln_equ_posn *equ, struct ln_ga
l_posn *gal)
* \ingroup transform
* \brief Transform an object J2000 equatorial coordinates into galactic coo
rdinates.
*/
void ln_get_gal_from_equ2000 (struct ln_equ_posn *equ, struct ln_gal_posn *
gal);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif #endif
 End of changes. 4 change blocks. 
2 lines changed or deleted 20 lines changed or added


 utility.h   utility.h 
skipping to change at line 24 skipping to change at line 24
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA.
* *
* Copyright (C) 2000 - 2005 Liam Girdwood * Copyright (C) 2000 - 2005 Liam Girdwood
*/ */
#ifndef _LN_UTILITY_H #ifndef _LN_UTILITY_H
#define _LN_UTILITY_H #define _LN_UTILITY_H
#include <libnova/ln_types.h> #include <libnova/ln_types.h>
#ifdef __WIN32__
#include <time.h>
#endif
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/*! \defgroup version Libnova library version information /*! \defgroup version Libnova library version information
*/ */
/*! \fn const char * ln_get_version (void) /*! \fn const char * ln_get_version (void)
* \brief Library Version Number * \brief Library Version Number
* \ingroup version * \ingroup version
skipping to change at line 211 skipping to change at line 215
* \brief Calculate an intermediate value of the 3 arguments. * \brief Calculate an intermediate value of the 3 arguments.
*/ */
double ln_interpolate3 (double n, double y1, double y2, double y3); double ln_interpolate3 (double n, double y1, double y2, double y3);
/*! \fn double ln_interpolate5 (double n, double y1, double y2, double y3, double y4, double y5) /*! \fn double ln_interpolate5 (double n, double y1, double y2, double y3, double y4, double y5)
* \ingroup misc * \ingroup misc
* \brief Calculate an intermediate value of the 5 arguments. * \brief Calculate an intermediate value of the 5 arguments.
*/ */
double ln_interpolate5 (double n, double y1, double y2, double y3, double y 4, double y5); double ln_interpolate5 (double n, double y1, double y2, double y3, double y 4, double y5);
#ifdef __WIN32__
/* Catches calls to the POSIX gmtime_r and converts them to a related WIN32
version. */
struct tm *gmtime_r (time_t *t, struct tm *gmt);
/* Catches calls to the POSIX gettimeofday and converts them to a related W
IN32 version. */
int gettimeofday(struct timeval *tp, struct timezone *tzp);
/* Catches calls to the POSIX strtok_r and converts them to a related WIN32
version. */
char *strtok_r(char *str, const char *sep, char **last);
#endif /* __WIN32__ */
/* C89 substitutions for C99 functions. */
#ifdef __C89_SUB__
/* Simple cube root */
double cbrt (double x);
/* Not a Number function generator */
double nan (const char *code);
/* Simple round to nearest */
double round (double x);
#endif /* __C89_SUB__ */
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif #endif
 End of changes. 2 change blocks. 
0 lines changed or deleted 34 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/