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) <noreply@anthropic.com>
This commit is contained in:
2026-09-30 17:43:53 +02:00
co-authored by Claude Opus 5.5
parent 67a21b4a10
commit ac23496b37
2 changed files with 3 additions and 3 deletions
@@ -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', () => { 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 // 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 // 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]]) { 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); expect(Math.abs(subSolarPoint(EARTH, jdUt - lightMinutes / 1440).eastDeg - eastDeg)).toBeLessThan(0.15);
} }
+2 -2
View File
@@ -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 * 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 * 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 * 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, * 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
* 44 degrees at AD 1. * have turned ΔT further, 44 degrees at AD 1.
*/ */
export function bodyOrientation(elements: RotationalElements, jdUtc: number, target = new THREE.Quaternion(), followsUt = false): THREE.Quaternion { export function bodyOrientation(elements: RotationalElements, jdUtc: number, target = new THREE.Quaternion(), followsUt = false): THREE.Quaternion {
const { poleRaDeg, poleDecDeg, primeMeridianDeg } = orientationAt(elements, tdbFromUtc(jdUtc)); const { poleRaDeg, poleDecDeg, primeMeridianDeg } = orientationAt(elements, tdbFromUtc(jdUtc));