19#ifndef _LN_ELLIPTIC_MOTION_H
20#define _LN_ELLIPTIC_MOTION_H
22#include <libnova/ln_types.h>
39double LIBNOVA_EXPORT ln_solve_kepler (
double e,
double M);
45double LIBNOVA_EXPORT ln_get_ell_mean_anomaly (
double n,
double delta_JD);
51double LIBNOVA_EXPORT ln_get_ell_true_anomaly (
double e,
double E);
57double LIBNOVA_EXPORT ln_get_ell_radius_vector (
double a,
double e,
double E);
63double LIBNOVA_EXPORT ln_get_ell_smajor_diam (
double e,
double q);
69double LIBNOVA_EXPORT ln_get_ell_sminor_diam (
double e,
double a);
75double LIBNOVA_EXPORT ln_get_ell_mean_motion (
double a);
93double LIBNOVA_EXPORT ln_get_ell_orbit_len (
struct ln_ell_orbit * orbit);
99double LIBNOVA_EXPORT ln_get_ell_orbit_vel (
double JD,
struct ln_ell_orbit * orbit);
105double LIBNOVA_EXPORT ln_get_ell_orbit_pvel (
struct ln_ell_orbit * orbit);
111double LIBNOVA_EXPORT ln_get_ell_orbit_avel (
struct ln_ell_orbit * orbit);
117double LIBNOVA_EXPORT ln_get_ell_body_phase_angle (
double JD,
struct ln_ell_orbit * orbit);
123double LIBNOVA_EXPORT ln_get_ell_body_elong (
double JD,
struct ln_ell_orbit * orbit);
130double LIBNOVA_EXPORT ln_get_ell_body_solar_dist (
double JD,
struct ln_ell_orbit * orbit);
137double LIBNOVA_EXPORT ln_get_ell_body_earth_dist (
double JD,
struct ln_ell_orbit * orbit);
144void LIBNOVA_EXPORT ln_get_ell_body_equ_coords (
double JD,
struct ln_ell_orbit * orbit,
struct ln_equ_posn * posn);
174int LIBNOVA_EXPORT ln_get_ell_body_next_rst_horizon_future (
double JD,
struct ln_lnlat_posn * observer,
struct ln_ell_orbit * orbit,
double horizon,
int day_limit,
struct ln_rst_time * rst);
180double LIBNOVA_EXPORT ln_get_ell_last_perihelion (
double epoch_JD,
double M,
double n);
Elliptic Orbital elements.
Definition ln_types.h:266
Equatorial Coordinates.
Definition ln_types.h:171
Ecliptical (or celestial) Longitude and Latitude.
Definition ln_types.h:201
Rectangular coordinates.
Definition ln_types.h:238
Rise, Set and Transit times.
Definition ln_types.h:318