···309309 let dy = j2000.y -. 2992.190764225030 in
310310 let dz = j2000.z -. 5315.122231886917 in
311311 let err = sqrt ((dx *. dx) +. (dy *. dy) +. (dz *. dz)) in
312312- Printf.printf " TEME->J2000 vs python reference: %.6f km\n" err;
312312+ Fmt.pr " TEME->J2000 vs python reference: %.6f km\n" err;
313313 if err > 1.0 then
314314 Alcotest.failf "TEME->J2000 differs from python by %.6f km (> 1 km)" err
315315···333333 let d = Vec3.distance teme j2000 in
334334 (* At J2000 epoch, only nutation contributes. dpsi ~ 17 arcsec max.
335335 At 6778 km, 17 arcsec = 6778 * tan(17/3600 * pi/180) = ~0.56 km *)
336336- Printf.printf " TEME-J2000 at J2000 epoch: %.6f km difference\n" d;
336336+ Fmt.pr " TEME-J2000 at J2000 epoch: %.6f km difference\n" d;
337337 if d > 2.0 then
338338 Alcotest.failf "TEME-J2000 at J2000 epoch: %.6f km (should be < 2 km)" d
339339···350350 in
351351 (* 2050 is further from J2000 than 2026, so precession should be larger *)
352352 Alcotest.(check bool) "precession grows with time" true (d2 > d1);
353353- Printf.printf " 2026: %.3f km, 2050: %.3f km\n" d1 d2
353353+ Fmt.pr " 2026: %.3f km, 2050: %.3f km\n" d1 d2
354354355355(* Inverse: J2000 -> TEME reference. *)
356356let test_j2000_teme_reference () =