Expand description
IAU 2000B nutation and the full TEME→GCRS/J2000 inertial reduction.
crate::precession supplies the IAU 2006 bias-precession (GCRS→mean-of-date).
This module adds the second and third pieces of a true inertial reduction:
- IAU 2000A nutation (
nutation_iau2000a) — the full MHB2000 series, 678 luni-solar + 687 planetary terms, accurate to < 0.1 mas. The tables are machine-generated from the IAU SOFA / ERFAnut00areference bytools/gen_nut00a.pyintonutation_iau2000a_data.rs, and the whole series (both the IERS-2003 and MHB2000 fundamental-argument sets) is validated bit-for-bit against the publishederaNut00atest vector. - IAU 2000B nutation (
nutation_iau2000b) — the 77-term luni-solar MHB2000 series of McCarthy & Luzum (2003), the standard truncation of the full IAU 2000A series that agrees with it to better than 1 mas over 1995–2050, plus the two fixed planetary offsets that stand in for the omitted planetary terms. The series, the Delaunay fundamental arguments (Simon et al. 1994), and the unit constants are transcribed from the IAU SOFA / ERFAnut00breference and validated bit-for-bit against the publishederaNut00btest vector. The default of-date reduction below uses 2000B;nutation_matrix_2000agives the < 0.1 mas 2000A path. - The full TEME→GCRS chain (
teme_to_gcrs) following Vallado AIAA-2006-6980: TEME→TOD (equation of the equinoxes), TOD→MOD (nutation), MOD→GCRS (bias-precession). This upgrades the GMST-only TEME↔ECEF reduction incrate::framesto a genuine inertial-frame output.
Scope (honest): the full 2000A series is available (nutation_iau2000a /
nutation_matrix_2000a, < 0.1 mas), while the default TEME→GCRS chain uses
the 2000B truncation (~1 mas) — below the velocity-frame-rotation simplification
it already makes; the equation of the equinoxes carries the two leading IAU
1994 complementary terms only; the TEME→GCRS rotation is applied to velocity
as well as position, neglecting the ~7e-12 rad/s precession-nutation frame
rotation (a < 1e-4 m/s error at orbital speeds). An ANISE/SPICE numerical
cross-check to the < 10 m level is a follow-on (see ROADMAP.md).
Structs§
- Nutation
- Nutation in longitude and obliquity (radians), referred to the ecliptic of date.
Functions§
- delaunay_
args - The five Delaunay fundamental arguments
[l, l′, F, D, Ω](radians) at TT epochjd_tt, in the linear IAU 2000B form (Simon et al. 1994) used by SOFAeraNut00b. - equation_
of_ equinoxes - Equation of the equinoxes (radians):
Δψ·cos(ε̄_A)plus the two leading IAU 1994 complementary terms. This is the small angle between the TEME (mean-equinox) frame and TOD (true equinox of date) about the of-date pole. - gcrs_
to_ teme - Inverse of
teme_to_gcrs: rotate a GCRS position and velocity back to TEME. - mean_
obliquity - Mean obliquity of the ecliptic of date (radians), the IAU 2006 value (
obl06, identical to theε̄_Acarried bycrate::precession::fw_angles). - nutation_
iau2000a - IAU 2000A nutation
(Δψ, Δε)at TT epochjd_tt— the full MHB2000 series (678 luni-solar + 687 planetary terms), transcribed from the IAU SOFA / ERFAnut00areference and validated bit-for-bit against the publishederaNut00atest vector. This is the < 0.1 mas reference series that the 2000B truncation innutation_iau2000bapproximates to ~1 mas. - nutation_
iau2000b - IAU 2000B nutation
(Δψ, Δε)at TT epochjd_tt. - nutation_
matrix - The nutation rotation matrix (SOFA
iauNumat): rotates a mean-of-date (MOD) vector into the true equator and equinox of date (TOD),r_TOD = N · r_MOD. Uses the IAU 2000B nutation (~1 mas). - nutation_
matrix_ 2000a - As
nutation_matrixbut driven by the full IAU 2000A series (nutation_iau2000a), i.e. the IAU 2000A/2006 of-date nutation matrix accurate to < 0.1 mas. - teme_
to_ gcrs - Rotate a TEME position and velocity into the GCRS/J2000 inertial frame at TT
epoch
jd_tt. The same rotation is applied to both (the of-date frame’s rotation relative to GCRS is negligible at orbital speeds — see the module note). - teme_
to_ gcrs_ matrix - The composite TEME→GCRS rotation matrix at TT epoch
jd_tt:R = Pᵀ · Nᵀ · R3(−EE).