Skip to main content

xalen_coords/
lib.rs

1/// Annual aberration of starlight (constant of aberration + longitude term).
2pub mod aberration;
3/// IAU 2000B nutation (77-term lunisolar series).
4pub mod nutation;
5/// Mean and true obliquity of the ecliptic (IAU 2006).
6pub mod obliquity;
7pub mod planet;
8/// IAU 2006/P03 precession angles and rotation matrices.
9pub mod precession;
10/// Canonical Greenwich sidereal-time functions (GMST / GAST).
11pub mod sidereal;
12/// Coordinate type definitions and conversion functions.
13pub mod transforms;
14
15pub use aberration::{
16    CONSTANT_OF_ABERRATION_ARCSEC, annual_aberration_longitude, constant_of_aberration,
17};
18pub use nutation::{NutationResult, nutation_2000b};
19pub use obliquity::mean_obliquity;
20pub use precession::{
21    general_precession_longitude, precess_ecliptic_to_of_date, precession_angles,
22    precession_bias_matrix_iau2006, precession_matrix_p03_nobias, rotate3, transpose3,
23};
24pub use sidereal::{equation_of_equinoxes, gast_deg, gast_rad, gmst_deg, gmst_hours};
25pub use transforms::{
26    CartesianPosition, EclipticPosition, EclipticSpeed, EquatorialPosition, cartesian_to_ecliptic,
27    ecliptic_to_cartesian, ecliptic_to_equatorial, equatorial_to_ecliptic,
28};
29
30pub use planet::Planet;
31
32/// Conversion factor from arcseconds to radians.
33pub const ARCSEC_TO_RAD: f64 = std::f64::consts::PI / (180.0 * 3600.0);
34/// Conversion factor from degrees to radians.
35pub const DEG_TO_RAD: f64 = std::f64::consts::PI / 180.0;
36/// Conversion factor from radians to degrees.
37pub const RAD_TO_DEG: f64 = 180.0 / std::f64::consts::PI;