pub struct NutationIAU2000B;Expand description
IAU 2000B nutation calculator.
A simplified nutation model using 77 lunisolar terms plus fixed planetary bias
corrections. Provides ~1 mas accuracy, suitable for applications not requiring
the full precision of NutationIAU2000A.
§Example
use celestial_core::nutation::NutationIAU2000B;
let nut = NutationIAU2000B::new();
// Compute nutation for J2000.0 (two-part JD: 2451545.0 + 0.0)
let result = nut.compute(2451545.0, 0.0).unwrap();
// delta_psi and delta_eps are in radians
println!("Δψ = {} rad", result.delta_psi);
println!("Δε = {} rad", result.delta_eps);Implementations§
Source§impl NutationIAU2000B
impl NutationIAU2000B
Sourcepub fn compute(&self, jd1: f64, jd2: f64) -> AstroResult<NutationResult>
pub fn compute(&self, jd1: f64, jd2: f64) -> AstroResult<NutationResult>
Computes nutation angles for a given Julian Date.
§Arguments
jd1- First part of two-part Julian Date (TDB). Typically the integer part or J2000 epoch (2451545.0).jd2- Second part of two-part Julian Date (TDB). Typically the fractional part or offset fromjd1.
The two-part representation preserves precision. The split is arbitrary;
jd1 + jd2 must equal the desired Julian Date.
§Returns
Returns a NutationResult containing:
delta_psi: Nutation in longitude (radians)delta_eps: Nutation in obliquity (radians)
Both values are IAU 2000B approximations with ~1 mas accuracy.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for NutationIAU2000B
impl RefUnwindSafe for NutationIAU2000B
impl Send for NutationIAU2000B
impl Sync for NutationIAU2000B
impl Unpin for NutationIAU2000B
impl UnsafeUnpin for NutationIAU2000B
impl UnwindSafe for NutationIAU2000B
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more