Skip to content

EarthRotationPole

Defined in: transform.rs:53

pub trait EarthRotationPole: [Eci](../eci/) + [Sized](https://doc.rust-lang.org/std/marker/trait.Sized.html) + 'static

ECI frame that knows Earth’s rotation-pole direction expressed in itself.

Zonal harmonics (J2/J3/J4) are axially symmetric about the true rotation pole, and the atmosphere co-rotates about it, so those models only need the pole direction in the integration frame — not the full Earth-fixed rotation. This is the minimal capability they require, kept separate from the heavier EarthFixedTransform (which also provides the ECEF rotation that geodetic conversions and magnetic field need).

EOP is intentionally not a parameter: the IAU 2006 model CIP is accurate to well under a milliarcsecond without the observed dX/dY corrections, which is negligible next to the ~0.1–0.3° offset of the true pole from the GCRS Z axis that this captures.

  • SimpleEci: pole = +Z (the simple frame defines its Z axis as the pole).
  • Gcrs: the IAU 2006 model CIP — precession + nutation, no observed dX/dY, no polar motion — as (X, Y, √(1−X²−Y²)) at the epoch. For an exact observed pole, a separate EOP-taking API would be needed.

fn earth_pole(utc: &[Epoch<Utc>](../../structs/epoch/)) -> Vec3<Self>

Unit vector along Earth’s rotation pole, expressed in this frame.