From ac23496b37544cccf98d12651a4870e34325a950 Mon Sep 17 00:00:00 2001 From: Senrokai Date: Wed, 30 Sep 2026 17:43:53 +0200 Subject: [PATCH] Give the old Earth W's error at AD 1 as the reviewers measured it, not truncated a15a46c wrote that the IAU's W for Earth, taken at UT + 69.184 s as it was, left Earth's lit face 4.5 degrees off Horizons at AD 1 (4.2 at UT itself), from measurements of 4.56 and 4.28 on JD 1721600 (0001-06-26), where the same sentence rounded AD 1000's 2.29 and 2.00 up. On 0001-01-28 the same two readings are 4.49 and 4.21, so across AD 1 they run 4.5 to 4.6 and 4.2 to 4.3. body-orientation.ts, which names no date, now says 4.5 to 4.6 over AD 1 (4.2 to 4.3 at UT); the spec comment, which names JD 1721600, says 4.6 (4.3). Comments only; the assertion (the ERA, 0.051 degrees off there) is unchanged. Unit suite 864/864, tsc -p tsconfig.app.json and etl:typecheck clean. Co-Authored-By: Claude Opus 5.5 (1M context) --- src/app/shared/rendering/body-orientation.spec.ts | 2 +- src/app/shared/rendering/body-orientation.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/app/shared/rendering/body-orientation.spec.ts b/src/app/shared/rendering/body-orientation.spec.ts index 35732b2..918758e 100644 --- a/src/app/shared/rendering/body-orientation.spec.ts +++ b/src/app/shared/rendering/body-orientation.spec.ts @@ -50,7 +50,7 @@ describe('bodyPageView', () => { it('lights Earth’s face where Horizons does at the far end of the clock too: AD 1000 and AD 1', () => { // Horizons' sub-solar longitude from the Sun (observer quantity 14, TIME_TYPE=UT), Earth taken // one light-time back: 1.0510 E on JD 2086455 and 1.5606 E on JD 1721600. The IAU's W, taken at - // UT + 69.184 s as it was, drew them 2.3 and 4.5 degrees west of that (2.0 and 4.2 at UT itself). + // UT + 69.184 s as it was, drew them 2.3 and 4.6 degrees west of that (2.0 and 4.3 at UT itself). for (const [jdUt, lightMinutes, eastDeg] of [[2086455, 8.45437443, 1.05101], [1721600, 8.45020842, 1.560644]]) { expect(Math.abs(subSolarPoint(EARTH, jdUt - lightMinutes / 1440).eastDeg - eastDeg)).toBeLessThan(0.15); } diff --git a/src/app/shared/rendering/body-orientation.ts b/src/app/shared/rendering/body-orientation.ts index 0bed9d9..b0cc0e9 100644 --- a/src/app/shared/rendering/body-orientation.ts +++ b/src/app/shared/rendering/body-orientation.ts @@ -59,8 +59,8 @@ export function poleFrame(pole: { raDeg: number; decDeg: number }, target = new * 5.15), counted from the node its W starts at, 90 degrees past its pole's right ascension. The * IAU's W for Earth, fitted to today, runs 6.3e-6 degrees a day slow of that once its pole's drift * is counted: taken at UT + 69.184 s, as it was, it left Earth's lit face 2.3 degrees off Horizons at - * AD 1000 and 4.5 at AD 1 (2.0 and 4.2 at UT itself). Taken at TDB, it would have turned ΔT further, - * 44 degrees at AD 1. + * AD 1000 and 4.5 to 4.6 over AD 1 (2.0, and 4.2 to 4.3, at UT itself). Taken at TDB, it would + * have turned ΔT further, 44 degrees at AD 1. */ export function bodyOrientation(elements: RotationalElements, jdUtc: number, target = new THREE.Quaternion(), followsUt = false): THREE.Quaternion { const { poleRaDeg, poleDecDeg, primeMeridianDeg } = orientationAt(elements, tdbFromUtc(jdUtc));