@essrt/physics 4.6.0 → 4.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -1
- package/src/chain-cycles/index.cjs +24 -1
- package/src/earth/sidereal-channel-artifact.cjs +2 -2
- package/src/earth/year-lengths.cjs +116 -0
- package/src/index.js +11 -3
- package/src/model.js +78 -33
- package/src/moon/deep-modes-artifact.cjs +2 -2
- package/src/planets/chain-artifact.js +2 -2
- package/src/planets/fibonacci-laws.cjs +15 -8
- package/src/planets/keplerian-chain.cjs +24 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
// THE ONE HOME for the of-date year lengths and their precession beats
|
|
3
|
+
// (owner: "analyze how many implementations we have and move to 1").
|
|
4
|
+
//
|
|
5
|
+
// Before this factory the family lived in four-plus places (the frozen
|
|
6
|
+
// Fourier laws, the λ̇ channel, per-surface cardinal-structure wirings
|
|
7
|
+
// with two different mean chains, and scene measurements mixed into
|
|
8
|
+
// beats) — and the owner caught the cost: a panel beat of 25,760.8 where
|
|
9
|
+
// the report said 25,771.4, because a 0.5 s FAMILY mismatch between the
|
|
10
|
+
// pair's members is amplified ~20×/s by P = T_s/(T_s − T_t).
|
|
11
|
+
//
|
|
12
|
+
// The rules this factory owns:
|
|
13
|
+
// • ONE FAMILY: tropical = massLoss·(1 − p_geom/360) with p_geom the
|
|
14
|
+
// movement's own equinox rate (wobble included); sidereal = the D6
|
|
15
|
+
// λ̇ channel; anomalistic = the SECULAR mean-element construction on
|
|
16
|
+
// the chain's apsidal tangent (the injected fn — the same rate family
|
|
17
|
+
// the panel's Prec. cell shows; structure fallback when absent); every
|
|
18
|
+
// value λ̇-corrected coherently (rate form — beats invariant to
|
|
19
|
+
// second order).
|
|
20
|
+
// • ONE BASIS: SI seconds (days = seconds/86400 at the caller).
|
|
21
|
+
// • BEATS FROM THE PAIR: each precession period is computed from the
|
|
22
|
+
// two years THIS factory returns — recomputing a beat from the
|
|
23
|
+
// displayed/served values reproduces it exactly.
|
|
24
|
+
// • Scene MEASUREMENTS validate this family (sub-0.5 s, the report's
|
|
25
|
+
// measured columns); they are instruments, never mixed into beats.
|
|
26
|
+
// • The frozen era clock stays the certified era device (opt-out /
|
|
27
|
+
// era-certification record), not a member of this family.
|
|
28
|
+
|
|
29
|
+
const { createCardinalStructure } = require('../cardinal/one-source-structure.cjs');
|
|
30
|
+
const { createSiderealYearChannel } = require('./sidereal-year-channel.cjs');
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @param {{
|
|
34
|
+
* sampleAt: (year: number) => {e: number, periOfDateDeg: number, equinoxLonJ2000Deg: number},
|
|
35
|
+
* massLossSiderealSecondsAtYearFn: (year: number) => number,
|
|
36
|
+
* apsidalSecularDegPerYrFn?: (year: number) => number,
|
|
37
|
+
* }} opts
|
|
38
|
+
* sampleAt: the one-source movement sampler, calendar-year keyed
|
|
39
|
+
* (createDeepOrbitalHistory build().at wrapped by the caller — series
|
|
40
|
+
* tier where the artifact is available, mode tail beyond).
|
|
41
|
+
* massLossSiderealSecondsAtYearFn: the caller's secular mass-loss
|
|
42
|
+
* sidereal-year law, SI seconds, IAU-anchored at J2000.
|
|
43
|
+
* apsidalSecularDegPerYrFn: the chain's SECULAR apsidal tangent of date
|
|
44
|
+
* (keplerian-chain computeApsidalSecularDegPerYr for Earth — deg/yr,
|
|
45
|
+
* J2000-ecliptic frame). When given, the anomalistic year is the
|
|
46
|
+
* mean-element construction on this smooth rate; when absent, it falls
|
|
47
|
+
* back to the cardinal structure's measured year-over-year interval
|
|
48
|
+
* (which carries the banked series' century-scale ϖ̇ wobble).
|
|
49
|
+
*/
|
|
50
|
+
function createYearLengths({ sampleAt, massLossSiderealSecondsAtYearFn, apsidalSecularDegPerYrFn }) {
|
|
51
|
+
if (typeof sampleAt !== 'function' || typeof massLossSiderealSecondsAtYearFn !== 'function') {
|
|
52
|
+
throw new Error('createYearLengths: sampleAt and massLossSiderealSecondsAtYearFn are required');
|
|
53
|
+
}
|
|
54
|
+
const w180 = (/** @type {number} */ d) => ((d + 540) % 360) - 180;
|
|
55
|
+
const chan = createSiderealYearChannel({ massLossSiderealSecondsAtYearFn });
|
|
56
|
+
// The mean tropical year OF DATE, raw (pre-λ̇): the movement's own
|
|
57
|
+
// equinox-rate form — carries the real precession-rate wobble, unlike
|
|
58
|
+
// the smooth secular mean (a wobble-free mean under a wobbling family
|
|
59
|
+
// was one of the duplicated implementations this factory retires).
|
|
60
|
+
const tropicalRawSeconds = (/** @type {number} */ year) => {
|
|
61
|
+
const p = w180(sampleAt(year - 0.5).equinoxLonJ2000Deg
|
|
62
|
+
- sampleAt(year + 0.5).equinoxLonJ2000Deg); // retrograde → positive
|
|
63
|
+
return massLossSiderealSecondsAtYearFn(year) * (1 - p / 360);
|
|
64
|
+
};
|
|
65
|
+
const structure = createCardinalStructure({
|
|
66
|
+
sampleAt,
|
|
67
|
+
tropicalYearSecondsAtYearFn: tropicalRawSeconds,
|
|
68
|
+
});
|
|
69
|
+
const trop = (/** @type {number} */ year) => chan.correctedYearSeconds(year, tropicalRawSeconds(year));
|
|
70
|
+
const sid = (/** @type {number} */ year) => chan.siderealYearSecondsAtYear(year);
|
|
71
|
+
// The anomalistic year OF DATE — the SECULAR (mean-element) construction
|
|
72
|
+
// when the chain tangent is injected: T_anom_raw = T_sid_raw·360/(360 − w)
|
|
73
|
+
// with w = dϖ/dt (deg/yr, J2000-ecliptic, the SAME rate family the panel's
|
|
74
|
+
// Prec. cell shows), then λ̇-corrected coherently. The displayed beat
|
|
75
|
+
// anom/(anom − sid) then equals the chain period 360/w EXACTLY at J2000
|
|
76
|
+
// (the rate-form correction leaves beats invariant), and the J2000 value
|
|
77
|
+
// lands +0.07 s from the published mean-element 365.259636 d. The former
|
|
78
|
+
// structure form (the year-over-year interval on the banked series) read
|
|
79
|
+
// the series' century-scale ϖ̇ wobble — ±0.015″/yr ≈ ±0.35 s, an alias at
|
|
80
|
+
// the series' 250-yr sampling — and sat +0.20 s above the smooth tangent
|
|
81
|
+
// at J2000 (owner-found: the panel beat read 111,491 where the Prec. cell
|
|
82
|
+
// read 111,570). The measured-interval form stays on the cardinal
|
|
83
|
+
// structure for callers that want the wobble.
|
|
84
|
+
const anom = apsidalSecularDegPerYrFn
|
|
85
|
+
? (/** @type {number} */ year) => chan.correctedYearSeconds(year,
|
|
86
|
+
massLossSiderealSecondsAtYearFn(year) * 360 / (360 - apsidalSecularDegPerYrFn(year)))
|
|
87
|
+
: (/** @type {number} */ year) => chan.correctedYearSeconds(year, structure.anomalisticYearSeconds(year));
|
|
88
|
+
|
|
89
|
+
return Object.freeze({
|
|
90
|
+
/** Mean tropical year of date, SI seconds. @param {number} year */
|
|
91
|
+
tropicalYearSecondsAtYear: trop,
|
|
92
|
+
/** Sidereal year of date, SI seconds. @param {number} year */
|
|
93
|
+
siderealYearSecondsAtYear: sid,
|
|
94
|
+
/** Anomalistic year of date, SI seconds. @param {number} year */
|
|
95
|
+
anomalisticYearSecondsAtYear: anom,
|
|
96
|
+
/** Axial precession period of date (equinox regression beat), years. @param {number} y */
|
|
97
|
+
axialPrecessionYearsAtYear: (y) => { const s = sid(y), t = trop(y); return s / (s - t); },
|
|
98
|
+
/** Perihelion (apsidal-vs-equinox) precession period of date, years. @param {number} y */
|
|
99
|
+
perihelionPrecessionYearsAtYear: (y) => { const a = anom(y), t = trop(y); return a / (a - t); },
|
|
100
|
+
/** Apsidal precession period of date vs the fixed stars, years (hypersensitive: ±1 s ↔ ≈400 yr; the identifier keeps the historical "inclination" name). @param {number} y */
|
|
101
|
+
inclinationPrecessionYearsAtYear: (y) => { const a = anom(y), s = sid(y); return a / (a - s); },
|
|
102
|
+
/** The per-cardinal layer (D6 rules: year lengths λ̇-corrected; offsets/spreads raw — μs-class/second-order there). */
|
|
103
|
+
cardinal: Object.freeze({
|
|
104
|
+
/** @param {number} y @param {'VE'|'SS'|'AE'|'WS'} type */
|
|
105
|
+
yearLengthSeconds: (y, type) => chan.correctedYearSeconds(y, structure.yearLengthSeconds(y, type)),
|
|
106
|
+
/** @param {number} y @param {'VE'|'SS'|'AE'|'WS'} type */
|
|
107
|
+
eocOffsetSeconds: (y, type) => structure.eocOffsetSeconds(y, type),
|
|
108
|
+
/** @param {number} y */
|
|
109
|
+
spreadSeconds: (y) => structure.spreadSeconds(y),
|
|
110
|
+
}),
|
|
111
|
+
/** The planetary λ̇ ratio (diagnostic; ≡1 at J2000). */
|
|
112
|
+
planetaryRelAtYear: chan.planetaryRelAtYear,
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
module.exports = { createYearLengths };
|
package/src/index.js
CHANGED
|
@@ -124,7 +124,7 @@ export { integrateAscendingNode } from './planets/asc-node-integrator.cjs';
|
|
|
124
124
|
export * as planetOrbitChain from './planets/orbit-chain.cjs';
|
|
125
125
|
// P5/K4.6c — the engine-D Keplerian chain (pure evaluator + the embedded
|
|
126
126
|
// governed artifact; the browser flag path consumes exactly these).
|
|
127
|
-
export { buildPlanetChainsFromArtifactData, computePlanetElementsAtYear, computeHeliocentricEclipticFromElements, computePoissonArgRad, computeOsculatingElements, solveKeplerRad, ANCHOR_EPOCH_YEAR, ANCHOR_EPOCH_JD } from './planets/keplerian-chain.cjs';
|
|
127
|
+
export { buildPlanetChainsFromArtifactData, computePlanetElementsAtYear, computeHeliocentricEclipticFromElements, computePoissonArgRad, computeOsculatingElements, solveKeplerRad, computeApsidalSecularDegPerYr, ANCHOR_EPOCH_YEAR, ANCHOR_EPOCH_JD } from './planets/keplerian-chain.cjs';
|
|
128
128
|
export { computeEquatorNodeOriginSFrameDeg, convertNodeSFrameToEquatorOriginDeg } from './planets/inv-plane-frame.cjs';
|
|
129
129
|
export { createSecularSeriesOverride } from './planets/secular-series.cjs';
|
|
130
130
|
export { CHAIN_ARTIFACT, CHAIN_ARTIFACT_HASH } from './planets/chain-artifact.js';
|
|
@@ -137,6 +137,8 @@ export { DEEP_MODES_ARTIFACT, DEEP_MODES_ARTIFACT_HASH } from './moon/deep-modes
|
|
|
137
137
|
export { createDeepOrbitalHistory } from './earth/deep-orbital-history.cjs';
|
|
138
138
|
// D6: the sidereal-year-of-date channel (banked λ̇ ratio × the caller's mass-loss law)
|
|
139
139
|
export { createSiderealYearChannel } from './earth/sidereal-year-channel.cjs';
|
|
140
|
+
// S2: THE ONE of-date year-length family (years + precession beats, SI seconds)
|
|
141
|
+
export { createYearLengths } from './earth/year-lengths.cjs';
|
|
140
142
|
export { createPredictivePrecession, calcPlanetPerihelionLongDeg } from './planets/predict.cjs';
|
|
141
143
|
// L10 — the composition front door: one law set, N body records. Thin by
|
|
142
144
|
// design; engines keep their direct call sites (see planets/model.cjs).
|
|
@@ -166,7 +168,7 @@ export { createSunLongitudeCorrection } from './sun/longitude-correction.cjs';
|
|
|
166
168
|
* even though the body is empty.
|
|
167
169
|
*
|
|
168
170
|
* @param {Constants} [constants]
|
|
169
|
-
* @param {{ laws?: { eccentricityAt?: (year: number) => number, eccentricityRateAt?: (year: number) => number, perihelionLongitudeDegAt?: (year: number) => number } }} [opts]
|
|
171
|
+
* @param {{ laws?: { eccentricityAt?: (year: number) => number, eccentricityRateAt?: (year: number) => number, perihelionLongitudeDegAt?: (year: number) => number }, secularSeriesArtifact?: any }} [opts]
|
|
170
172
|
* `laws` — research overrides for Earth's orbit laws (doc 109 §7); absent = the shipped laws, bit-identical. Not part of the hash.
|
|
171
173
|
* @returns {Model}
|
|
172
174
|
*/
|
|
@@ -208,7 +210,13 @@ export const createModel = (constants = GENERATED, opts = {}) => {
|
|
|
208
210
|
// constants flow through the entire motion model.
|
|
209
211
|
// opts.laws — research overrides for Earth's orbit laws (see assembleModel);
|
|
210
212
|
// absent = the shipped laws, bit-identical. Never part of the hash.
|
|
211
|
-
|
|
213
|
+
// opts.secularSeriesArtifact — S3 tier unification: the governed
|
|
214
|
+
// secular-series artifact (data/nbody-secular-series.json, parsed).
|
|
215
|
+
// When present the of-date year-length family runs the SERIES tier
|
|
216
|
+
// exactly like the browser; absent (the bare npm package) the mode
|
|
217
|
+
// tail serves every epoch. Never part of the hash: it is the governed
|
|
218
|
+
// artifact, not a parameter.
|
|
219
|
+
const surfaces = assembleModel(ctx, FITTED, opts.laws ?? {}, opts.secularSeriesArtifact ?? null);
|
|
212
220
|
|
|
213
221
|
return {
|
|
214
222
|
constants: ctx,
|
package/src/model.js
CHANGED
|
@@ -22,10 +22,10 @@ import * as FL from './planets/fibonacci-laws.cjs';
|
|
|
22
22
|
import * as planetOrientation from './planets/orientation.cjs';
|
|
23
23
|
import { createPhaseMachinery } from './phase/index.cjs';
|
|
24
24
|
import { createCardinalModel } from './cardinal/index.cjs';
|
|
25
|
-
import {
|
|
26
|
-
import { createSiderealYearChannel } from './earth/sidereal-year-channel.cjs';
|
|
25
|
+
import { createYearLengths } from './earth/year-lengths.cjs';
|
|
27
26
|
import { createDeepOrbitalHistory } from './earth/deep-orbital-history.cjs';
|
|
28
27
|
import { CHAIN_ARTIFACT } from './planets/chain-artifact.js';
|
|
28
|
+
import { buildPlanetChainsFromArtifactData, computeApsidalSecularDegPerYr } from './planets/keplerian-chain.cjs';
|
|
29
29
|
import { createDeltaTCycles } from './deltat/cycles.cjs';
|
|
30
30
|
import { createDeepTimeLod } from './deltat/deep-time.cjs';
|
|
31
31
|
import { createMoonRecessionHistory, createSolarChannelBudget } from './deltat/recession-history.cjs';
|
|
@@ -80,7 +80,7 @@ const MOON_ECC_SENSITIVITY_NODE = 1.018;
|
|
|
80
80
|
* they used it; the generators refuse to --write under an override.
|
|
81
81
|
* @returns the assembled surfaces (epoch, earth, lengths, cardinal, moon) — type inferred so ReturnType stays precise
|
|
82
82
|
*/
|
|
83
|
-
export function assembleModel(C, F, laws = {}) {
|
|
83
|
+
export function assembleModel(C, F, laws = {}, secularSeriesArtifact = /** @type {any} */ (null)) {
|
|
84
84
|
// ── Derived constants (constants.js §9 order) ─────────────────────────────
|
|
85
85
|
const H = C.foundational.holisticyearLength;
|
|
86
86
|
const meanSolarYearDays = Math.round(C.foundational.inputmeanlengthsolaryearindays * (H / 8)) / (H / 8);
|
|
@@ -466,13 +466,40 @@ export function assembleModel(C, F, laws = {}) {
|
|
|
466
466
|
// sidereal year of date reduced by the SECULAR α(H(t)) equinox precession
|
|
467
467
|
// (axial0·H(t)/H0 — the movement's leg-1 convention, NOT the H/13
|
|
468
468
|
// kinematic identity; the two are a recorded 0.09% relation tension).
|
|
469
|
-
|
|
469
|
+
// THE ONE of-date year-length family (owner: "move to 1 implementation")
|
|
470
|
+
// — createYearLengths owns tropical (equinox-rate mean, wobble included),
|
|
471
|
+
// sidereal (the D6 λ̇ channel), anomalistic (the cardinal structure on
|
|
472
|
+
// the SAME mean), all λ̇-corrected coherently, SI seconds, and the beats
|
|
473
|
+
// of that pair. The internal laws, the kinematic beat constructions
|
|
474
|
+
// (axialPrecessionYears*), the scene engine and the frozen era clock
|
|
475
|
+
// stay on their own families as before.
|
|
476
|
+
// S3 tier unification: when the caller injects the governed secular-
|
|
477
|
+
// series artifact (createModel opts.secularSeriesArtifact — the API/Node
|
|
478
|
+
// path; the npm package alone has no 8 MB series), the movement runs the
|
|
479
|
+
// SERIES tier exactly like the browser — killing the mode-vs-series
|
|
480
|
+
// value split (measured: 6 s on the anomalistic year at J2000).
|
|
481
|
+
const yearLengthsM = (() => {
|
|
470
482
|
const AEarth = /** @type {any} */ (CHAIN_ARTIFACT).j2000AnchorElements.earth;
|
|
471
|
-
|
|
483
|
+
// The ψ̇ anchor: the CERTIFIED of-date laws at 2000 — identical to the
|
|
484
|
+
// engine/browser (computeSiderealYearDaysDirect / computeSolarYearDays
|
|
485
|
+
// Direct twins → 25,771.4). The FOUNDATIONAL mean pair used before
|
|
486
|
+
// (meanSiderealYearDays/meanSolarYearDays → 25,796) anchored this
|
|
487
|
+
// movement's realized precession 25 yr off the certified value — the
|
|
488
|
+
// hidden split behind the API's 365.242204 tropical mean (found in the
|
|
489
|
+
// owner's one-implementation drive).
|
|
490
|
+
const sidLaw2000 = evalYearFourier(2000, siderealYearDaysBase(2000), F.SIDEREAL_YEAR_HARMONICS);
|
|
491
|
+
const solLaw2000 = evalYearFourier(2000, tropicalYearDaysBase(2000), F.TROPICAL_YEAR_HARMONICS);
|
|
492
|
+
const axial0 = sidLaw2000 / (sidLaw2000 - solLaw2000);
|
|
472
493
|
const H0 = /** @type {number} */ (deepLod.hAtAge(0));
|
|
494
|
+
const seriesArt = /** @type {any} */ (secularSeriesArtifact);
|
|
495
|
+
const sb = seriesArt && seriesArt.bodies && seriesArt.bodies.earth;
|
|
473
496
|
const hist = createDeepOrbitalHistory({
|
|
474
497
|
zModes: DEEP_MODES_ARTIFACT.earthZ,
|
|
475
498
|
zetaModes: DEEP_MODES_ARTIFACT.earthZeta,
|
|
499
|
+
...(sb ? {
|
|
500
|
+
zetaSeries: { t0Yr: seriesArt.t0Yr, stepYr: sb.stepYr, q: sb.zetaQ, p: sb.zetaP },
|
|
501
|
+
zSeries: { t0Yr: seriesArt.t0Yr, stepYr: sb.stepYr, q: sb.zQ, p: sb.zP },
|
|
502
|
+
} : {}),
|
|
476
503
|
anchorE: AEarth.e,
|
|
477
504
|
anchorPeriEclipticDeg: AEarth.lonPeriEclipticDeg,
|
|
478
505
|
anchorInclEclipticDeg: AEarth.inclEclipticDeg,
|
|
@@ -484,36 +511,37 @@ export function assembleModel(C, F, laws = {}) {
|
|
|
484
511
|
return axial0 * (h === null ? 1 : h / H0);
|
|
485
512
|
},
|
|
486
513
|
});
|
|
487
|
-
//
|
|
488
|
-
|
|
514
|
+
// PER-TIER ROUTING (the anomalistic-contamination fix): one sampler PER
|
|
515
|
+
// grid tier, built on first entry and KEPT — a query always reads the
|
|
516
|
+
// tier its own span selects. The former single grown sampler replaced
|
|
517
|
+
// the 100-yr grid with the 1000/5000-yr one after any deep-time probe,
|
|
518
|
+
// and the year-length rates (±0.5-yr central differences through the
|
|
519
|
+
// grid) then returned grid-segment averages instead of local rates
|
|
520
|
+
// (anomalistic of date +2.63 s / +19 s, visit-order dependent).
|
|
521
|
+
const samplers = /** @type {Map<number|'deep', any>} */ (new Map());
|
|
522
|
+
let deepRangeYr = 0;
|
|
489
523
|
const gridStep = (/** @type {number} */ n) => (n <= 50000 ? 100 : n <= 2000000 ? 1000 : 5000);
|
|
490
524
|
const tierSpan = (/** @type {number} */ n) => (n <= 50000 ? 50000 : n <= 2000000 ? 2000000 : Math.ceil(n * 1.25 / 5000) * 5000);
|
|
491
525
|
const sampleAt = (/** @type {number} */ year) => {
|
|
492
526
|
const t = year - 2000, need = Math.max(20000, Math.abs(t) * 1.25);
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
return
|
|
527
|
+
const span = tierSpan(need);
|
|
528
|
+
const key = span > 2000000 ? /** @type {'deep'} */ ('deep') : span;
|
|
529
|
+
if (!samplers.has(key) || (key === 'deep' && span > deepRangeYr)) {
|
|
530
|
+
if (key === 'deep') deepRangeYr = span;
|
|
531
|
+
samplers.set(key, hist.build(span, -span, gridStep(span)));
|
|
532
|
+
}
|
|
533
|
+
return samplers.get(key).at(t);
|
|
500
534
|
};
|
|
501
|
-
|
|
535
|
+
// The anomalistic rides the chain's SECULAR apsidal tangent (the same
|
|
536
|
+
// rate family the panel's Prec. cell shows) — ONE helper, keplerian-chain.
|
|
537
|
+
const kcChains = buildPlanetChainsFromArtifactData(CHAIN_ARTIFACT);
|
|
538
|
+
return createYearLengths({
|
|
539
|
+
sampleAt,
|
|
540
|
+
massLossSiderealSecondsAtYearFn: (year) => deepLod.siderealYearSecondsAtAge(yearToTMa(year)),
|
|
541
|
+
apsidalSecularDegPerYrFn: (year) => computeApsidalSecularDegPerYr(year, kcChains.earth, kcChains),
|
|
542
|
+
});
|
|
502
543
|
})();
|
|
503
544
|
|
|
504
|
-
// D6: the sidereal-year-of-date channel — the banked λ̇ ratio (planetary
|
|
505
|
-
// epoch drift, embedded artifact) over the model's own mass-loss law.
|
|
506
|
-
// Surface-layer only: the internal laws, the beat constructions
|
|
507
|
-
// (axialPrecessionYears* — invariant by design), the scene engine and
|
|
508
|
-
// the frozen era clock all stay on the uncorrected family; the model's
|
|
509
|
-
// OF-DATE year lengths (epoch.siderealYearSecondsAtYear, the cardinal
|
|
510
|
-
// structure's year lengths) gain the drift so the API serves accurate
|
|
511
|
-
// values. EoC offsets and spreads keep the raw form: the correction is
|
|
512
|
-
// μs-class on an offset and cancels to second order in a spread.
|
|
513
|
-
const siderealChannelM = createSiderealYearChannel({
|
|
514
|
-
massLossSiderealSecondsAtYearFn: (year) => deepLod.siderealYearSecondsAtAge(yearToTMa(year)),
|
|
515
|
-
});
|
|
516
|
-
|
|
517
545
|
/** Tropical year: mean of the four cardinal intervals. @param {number} year @returns {number} */
|
|
518
546
|
const tropicalYearDays = (year) => cardinalM.computeTropicalYearLength(year);
|
|
519
547
|
/** @param {number} year @returns {number} */
|
|
@@ -1145,7 +1173,7 @@ export function assembleModel(C, F, laws = {}) {
|
|
|
1145
1173
|
moonDistanceKmAtYear: /** @param {number} year @returns {number} */ (year) => moonDistanceMetresAtAge(yearToTMa(year)) / 1000,
|
|
1146
1174
|
// D6: OF-DATE — mass-loss law / the banked planetary λ̇ ratio
|
|
1147
1175
|
// (identical at J2000 where the ratio ≡ 1 by construction)
|
|
1148
|
-
siderealYearSecondsAtYear: /** @param {number} year @returns {number} */ (year) =>
|
|
1176
|
+
siderealYearSecondsAtYear: /** @param {number} year @returns {number} */ (year) => yearLengthsM.siderealYearSecondsAtYear(year),
|
|
1149
1177
|
deltaTSecondsAtYear: deltaTSeconds,
|
|
1150
1178
|
cyclesBetween,
|
|
1151
1179
|
// The DYNAMICAL axial precession period (the tweakpane identity):
|
|
@@ -1191,11 +1219,14 @@ export function assembleModel(C, F, laws = {}) {
|
|
|
1191
1219
|
// D6: year LENGTHS gain the λ̇ drift coherently (rate-form
|
|
1192
1220
|
// correction — beats stay invariant); offsets/spreads keep the raw
|
|
1193
1221
|
// form (μs-class / second-order there).
|
|
1194
|
-
yearLengthSeconds: /** @param {number} year @param {'VE'|'SS'|'AE'|'WS'} type @returns {number} */ (year, type) =>
|
|
1195
|
-
eocOffsetSeconds: /** @param {number} year @param {'VE'|'SS'|'AE'|'WS'} type @returns {number} */ (year, type) =>
|
|
1196
|
-
spreadSeconds: /** @param {number} year */ (year) =>
|
|
1197
|
-
anomalisticYearSeconds: /** @param {number} year @returns {number} */ (year) =>
|
|
1222
|
+
yearLengthSeconds: /** @param {number} year @param {'VE'|'SS'|'AE'|'WS'} type @returns {number} */ (year, type) => yearLengthsM.cardinal.yearLengthSeconds(year, type),
|
|
1223
|
+
eocOffsetSeconds: /** @param {number} year @param {'VE'|'SS'|'AE'|'WS'} type @returns {number} */ (year, type) => yearLengthsM.cardinal.eocOffsetSeconds(year, type),
|
|
1224
|
+
spreadSeconds: /** @param {number} year */ (year) => yearLengthsM.cardinal.spreadSeconds(year),
|
|
1225
|
+
anomalisticYearSeconds: /** @param {number} year @returns {number} */ (year) => yearLengthsM.anomalisticYearSecondsAtYear(year),
|
|
1198
1226
|
}),
|
|
1227
|
+
// THE ONE of-date year-length family + its beats (S2; SI seconds) —
|
|
1228
|
+
// the single surface the panel, charts, API and website consume.
|
|
1229
|
+
yearLengths: yearLengthsM,
|
|
1199
1230
|
moon: Object.freeze({
|
|
1200
1231
|
distanceKmAtYear: /** @param {number} year @returns {number} */ (year) => moonDistanceMetresAtAge(yearToTMa(year)) / 1000,
|
|
1201
1232
|
siderealMonthDaysAtYear: moonSiderealMonthDaysAt,
|
|
@@ -1208,6 +1239,20 @@ export function assembleModel(C, F, laws = {}) {
|
|
|
1208
1239
|
}),
|
|
1209
1240
|
eclipse: Object.freeze({
|
|
1210
1241
|
sunLonDegAtJD: /** @param {number} jd @returns {number} */ (jd) => eclipseFinders.sunLonDegAt(jd),
|
|
1242
|
+
// The COMPLETED tier Sun (K8b follow-up, owner-approved injection):
|
|
1243
|
+
// the bare finder Sun minus the DERIVED planetary-completion table —
|
|
1244
|
+
// 70 framework-carrier terms plus the 6.44″ Earth-around-EMB wobble
|
|
1245
|
+
// (the "lunar equation"; eclipse/sun-planetary-completion.cjs, zero
|
|
1246
|
+
// fitted constants). The finders themselves deliberately stay bare
|
|
1247
|
+
// (their certified canon statistics were produced on the bare form;
|
|
1248
|
+
// besselian.cjs applies the same subtraction internally). This
|
|
1249
|
+
// surface exists for the SCENE tier's E5 wheel-Sun bridge, so the
|
|
1250
|
+
// rendered Sun carries the model's own derived apparent-class terms.
|
|
1251
|
+
// Clock: the completion argument rides TT centuries from the same
|
|
1252
|
+
// framework ΔT the besselian composition uses.
|
|
1253
|
+
sunLonCompletedDegAtJD: /** @param {number} jd @returns {number} */ (jd) =>
|
|
1254
|
+
eclipseFinders.sunLonDegAt(jd)
|
|
1255
|
+
- sunPlanetaryCompletionDeg((jdTTFromUT(jd) - j2000JD) / julianCenturyDays),
|
|
1211
1256
|
findLunarInRange: /** @param {number} jdStart @param {number} jdEnd */ (jdStart, jdEnd) => eclipseFinders.findLunarEclipsesInRange(jdStart, jdEnd),
|
|
1212
1257
|
findSolarInRange: /** @param {number} jdStart @param {number} jdEnd */ (jdStart, jdEnd) => eclipseFinders.findSolarEclipsesInRange(jdStart, jdEnd),
|
|
1213
1258
|
deltaTSecondsAtJD: frameworkDeltaTSecondsAtJD,
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
*/
|
|
15
15
|
'use strict';
|
|
16
16
|
|
|
17
|
-
const DEEP_MODES_ARTIFACT_HASH = "
|
|
17
|
+
const DEEP_MODES_ARTIFACT_HASH = "77e0baf779e85de5";
|
|
18
18
|
|
|
19
|
-
const DEEP_MODES_ARTIFACT = Object.freeze({"meta":{"integrator":"wh","order":2,"dtDays":2,"spanYears":20000000,"sampleDays":20000,"gr":true,"seed":"JPL Horizons J2000 heliocentric state vectors (tools/explore/j2000-state.mjs, the one home)","masses":"DE440 mass ratios (astro-reference physicalConstants)","runCommand":"node tools/explore/lattice-long-window-test.mjs years=20000000 integrator=wh dt=2 order=2 gr=1 frame=both sample=20000","dumpFile":"tools/explore/lattice-long-window-ecliptic-20000000-gr.local.json (untracked, 337 MB)","dumpSha256":"c6f37b93f8f53c5b72d9e2935085145820d384ed61ecdf69f3831895d5f0a516","conservationMaxDE":1.3523274883097007e-8,"decimation":4,"naffTerms":18,"naffZetaTerms":16,"naffZetaTermsEra":8,"frame":"ecliptic-J2000 (z-modes for the lunar-chain e; ζ-modes for the Stage-C obliquity hybrid — the invariable-frame ζ table remains unbanked, no consumer)","laskarRef":"Laskar, J. et al. (2004), A&A 428, 261–285, Table 3 (theory reference labels)"},"verdict":{"strongestBeatPeriodKyr":409.398962153882,"strongestBeatArcsecPerYr":3.165616232101899,"la2004BeatPeriodKyr":405.6972922210049,"rockMetronomeKyr":405.6,"companion124Kyr":123.63439229002236,"companion95Kyr":94.95801992141148,"earthLeadingModesArcsecPerYr":[4.257339363798321,7.422955595900221,17.905475677851488,17.35600814229943],"topBeatLines":[{"periodKyr":409.398962153882,"productAmp":0.0003189871275662614},{"periodKyr":94.95801992141148,"productAmp":0.00023593726318903166},{"periodKyr":123.63439229002236,"productAmp":0.0002021269449318684},{"periodKyr":98.94135212634195,"productAmp":0.0001820123713850866},{"periodKyr":130.4734867701679,"productAmp":0.00015592960633097004},{"periodKyr":2358.6470831218417,"productAmp":0.00011533256795834209},{"periodKyr":974.251698194696,"productAmp":0.00007391281237249426},{"periodKyr":706.1267630803258,"productAmp":0.00006332094707822819}],"note":"g5 matches La2004 to 0.0002 ″/yr; the beat gap vs 405.6 is g2 (chaotic-diffusion window sensitivity + omitted separate-Moon/asteroid terms) — the anatomy is the plan’s Stage-B record."},"earthZ":[{"omegaRadPerYr":0.000020640163686955943,"re":0.01663782532735386,"im":0.009773828910268845},{"omegaRadPerYr":0.00003598750427161015,"re":-0.0155511555977695,"im":-0.005606883657279738},{"omegaRadPerYr":0.00008680819575396443,"re":-0.011017310146969267,"im":0.005302931248387234},{"omegaRadPerYr":0.00008414430196835267,"re":0.005902460235142885,"im":-0.0073575521441138925},{"omegaRadPerYr":0.000027089406032463197,"re":0.0003820712762735637,"im":0.00381132243985138},{"omegaRadPerYr":0.00008287265957255809,"re":0.0018740756883102302,"im":0.0007570047078217853},{"omegaRadPerYr":0.00008556055947193001,"re":0.00065046714460136,"im":0.001636722269192129},{"omegaRadPerYr":0.00003343872861356042,"re":-0.0015906877043739744,"im":0.0008131867314299489},{"omegaRadPerYr":0.00008733249835491452,"re":0.0019695845162428804,"im":0.0007638996859228755},{"omegaRadPerYr":0.00008624160326238742,"re":-0.0007912287558015328,"im":0.0008454083667608703},{"omegaRadPerYr":0.00013693637603446235,"re":-0.00091728504412424,"im":0.0011947455784994275},{"omegaRadPerYr":0.00008149221104720623,"re":-0.0002919323858022318,"im":0.0013378769276789224},{"omegaRadPerYr":0.000035340366616489944,"re":-0.0014017009332458236,"im":-0.0005418283702703829},{"omegaRadPerYr":0.00003411910644328693,"re":0.0009644062512081837,"im":-0.0009278208477004621},{"omegaRadPerYr":0.000026443547751027787,"re":-0.0003484265086069058,"im":-0.0019049634588757702},{"omegaRadPerYr":0.00008946536777652535,"re":-0.0010363626781434278,"im":-0.00021237189770655706},{"omegaRadPerYr":0.000027681653760243513,"re":0.00026309559235420505,"im":0.0013827244513428105},{"omegaRadPerYr":0.00003665339440166644,"re":0.001341581161662452,"im":0.00035305205249495507}],"earthZeta":[{"omegaRadPerYr":-2.96732779276946e-14,"re":-0.004153530797421736,"im":0.013136287139943213},{"omegaRadPerYr":-0.00009139185627510659,"re":-0.0039341668744113665,"im":-0.007077440344808186},{"omegaRadPerYr":-0.000027083329194200705,"re":0.0041703974742109,"im":0.0016342020564862083},{"omegaRadPerYr":-0.00008606223132085272,"re":0.0015441443378585364,"im":-0.0036871518361985415},{"omegaRadPerYr":-0.00003413935334637193,"re":-0.002956817542124509,"im":0.0024359440436811054},{"omegaRadPerYr":-0.00008872604497912732,"re":-0.00013216158559522037,"im":-0.002797304033559708},{"omegaRadPerYr":-0.00003326020694677573,"re":0.0008627085184454156,"im":-0.0008468691172706413},{"omegaRadPerYr":-0.00003470927143831441,"re":0.0013226438289662852,"im":-0.0011121945465339342},{"omegaRadPerYr":-0.00009406049953471362,"re":0.001297329508193755,"im":0.0008926331980509192},{"omegaRadPerYr":-0.00002648259433928881,"re":0.001695647505347929,"im":0.0006707872920285527},{"omegaRadPerYr":-0.00012773804995598164,"re":-0.0008156188441322624,"im":0.0010583300732716742},{"omegaRadPerYr":-0.00003267570575865712,"re":0.00028878599128559593,"im":-0.0004498471691632459},{"omegaRadPerYr":-0.000033725843136033775,"re":0.0012152922715564112,"im":-0.0007872735440399818},{"omegaRadPerYr":-0.000014507526525427572,"re":-0.00064166716018201,"im":0.0005786259131500737},{"omegaRadPerYr":-0.00009265988888533535,"re":-0.0005654435501795496,"im":0.00014913577755089046},{"omegaRadPerYr":-0.000003353112962211696,"re":0.0006060116994915085,"im":0.00025189133351366343}],"earthZetaEra":[{"omegaRadPerYr":-2.96732779276946e-14,"re":-0.0041400895842324354,"im":0.01314865914923023},{"omegaRadPerYr":-0.00009139185627510659,"re":-0.0038874970989988566,"im":-0.0070425256250290546},{"omegaRadPerYr":-0.000027083329194200705,"re":0.004075700185805294,"im":0.0016137774467260707},{"omegaRadPerYr":-0.00008606223132085272,"re":0.0015261120191598105,"im":-0.0036992031256430353},{"omegaRadPerYr":-0.00003413935334637193,"re":-0.0031492966403078486,"im":0.002570649693650614},{"omegaRadPerYr":-0.00008872604497912732,"re":-0.00014686941549255626,"im":-0.0027917154781614112},{"omegaRadPerYr":-0.00003326020694677573,"re":0.0005693304183459907,"im":-0.0006693278314130071},{"omegaRadPerYr":-0.00003470927143831441,"re":0.0012956912361530007,"im":-0.0010932966486614268}],"planetLeadingZetaArcsecPerYr":{"mercury":-5.584671749809404,"venus":-18.85097569494133,"earth":-18.850923527147337,"mars":-17.751725857871005,"jupiter":-26.347853210145164,"saturn":-26.347853212457302,"uranus":-2.9924047231807274,"neptune":-0.6916262484067962},"planetZ":{"mercury":[{"omegaRadPerYr":0.000027088733160802267,"re":0.038554966501286404,"im":0.1727505978367461},{"omegaRadPerYr":0.000026446613295257932,"re":-0.010689263937359552,"im":-0.08370377183713058},{"omegaRadPerYr":0.000027685440675900762,"re":0.007040805265161438,"im":0.049564013913441826},{"omegaRadPerYr":0.000020610146653453393,"re":0.03473305391609935,"im":0.020645571246406855},{"omegaRadPerYr":0.00003599014477056645,"re":0.028071559587237418,"im":0.009017976536096864},{"omegaRadPerYr":0.000025931079389822773,"re":0.0006673595753568552,"im":0.013440308457527918},{"omegaRadPerYr":0.000021256209886571103,"re":-0.01061355038913571,"im":-0.005651963877376075},{"omegaRadPerYr":0.000026805792135081397,"re":-0.0064797099651241535,"im":0.02893559918270244},{"omegaRadPerYr":0.000027257457718059066,"re":-0.03066916148662377,"im":-0.018290205146927176},{"omegaRadPerYr":0.000028969670955476095,"re":-0.0058414631460608135,"im":0.014525578239651726},{"omegaRadPerYr":0.00003343188516973571,"re":-0.0066368210505613,"im":0.004311170079365298},{"omegaRadPerYr":0.000029760458249145125,"re":0.00038349793623656414,"im":-0.005117333203138849},{"omegaRadPerYr":0.00002456766704076076,"re":0.0035392264567207857,"im":0.0005051013451431339},{"omegaRadPerYr":0.000019991212541270322,"re":0.012573071792417902,"im":0.0033672381607611802},{"omegaRadPerYr":0.000028102776784170254,"re":-0.0026611123037689303,"im":-0.004161508829553553},{"omegaRadPerYr":0.000025316098156759535,"re":-0.0036961925617805323,"im":-0.011919129971047493},{"omegaRadPerYr":0.00001944416734718619,"re":-0.004682579265792748,"im":-0.0029376312421693887}],"venus":[{"omegaRadPerYr":0.00003598746802083836,"re":-0.019917645238981145,"im":-0.007203449498496368},{"omegaRadPerYr":0.000020639807964880957,"re":0.01724990015853421,"im":0.010128856423913347},{"omegaRadPerYr":0.0000868084859450101,"re":0.011385381967426108,"im":-0.005485360733036005},{"omegaRadPerYr":0.00008414512031179873,"re":-0.007168683403944619,"im":0.009071050912169592},{"omegaRadPerYr":0.000027088861443152294,"re":0.0006446142441107929,"im":0.0059617954106088444},{"omegaRadPerYr":0.00008287257542610035,"re":-0.0023188275640765883,"im":-0.0009839087840311964},{"omegaRadPerYr":0.000033436375813747184,"re":-0.002154792396441398,"im":0.001112188275813168},{"omegaRadPerYr":0.000081488977464128,"re":0.00036395397611943764,"im":-0.0019050781250368213},{"omegaRadPerYr":0.00002644326324301371,"re":-0.0005148714980188602,"im":-0.002973034193513397},{"omegaRadPerYr":0.00008556922267192882,"re":-0.0006266111741876529,"im":-0.001661876007329785},{"omegaRadPerYr":0.00003411559444877156,"re":0.0013730402503682223,"im":-0.0012862094296301582},{"omegaRadPerYr":0.00003533902718172892,"re":-0.001786357009303111,"im":-0.0006921712694162124},{"omegaRadPerYr":0.00008733180735423732,"re":-0.002049920654948898,"im":-0.000804358531558803},{"omegaRadPerYr":0.00002768396622845065,"re":0.0004411337254999352,"im":0.0021567914310587737},{"omegaRadPerYr":0.00008624587484635965,"re":0.0008212083413813137,"im":-0.0009325032257794572},{"omegaRadPerYr":0.000036655185163182225,"re":0.0017170372914915375,"im":0.00042195897844381436},{"omegaRadPerYr":0.00008466352886809023,"re":0.001200524882246627,"im":-0.00003729782906451111},{"omegaRadPerYr":0.00009212081301273461,"re":-0.0006471917490152735,"im":-0.0003023265277441688}],"mars":[{"omegaRadPerYr":0.00008680660990676236,"re":0.041588839709000305,"im":-0.019010209519109467},{"omegaRadPerYr":0.00008414901270258022,"re":0.024284595383848816,"im":-0.027766271128859106},{"omegaRadPerYr":0.000020640532890935506,"re":0.017551732546305442,"im":0.010391378976271091},{"omegaRadPerYr":0.0000814847328758196,"re":-0.004638989156327695,"im":0.016430526215851005},{"omegaRadPerYr":0.0000855149167948114,"re":-0.005381816566332503,"im":-0.005682765251287963},{"omegaRadPerYr":0.00008946889907828666,"re":0.01274118750142537,"im":0.00016396598236474114},{"omegaRadPerYr":0.00008286334538732459,"re":0.009150704739866481,"im":0.004791658700294397},{"omegaRadPerYr":0.00013693599618390932,"re":-0.004310548188934087,"im":0.005501879382145973},{"omegaRadPerYr":0.00008621795825707764,"re":0.004507212396715781,"im":-0.0024547160948511903},{"omegaRadPerYr":0.00008734038452048681,"re":-0.007195199191029587,"im":-0.0015978713248922388},{"omegaRadPerYr":0.00009212649492467835,"re":0.00393347099238989,"im":0.0018570076120292159},{"omegaRadPerYr":0.00008472990858172786,"re":-0.003416962020055711,"im":0.002216504704749594},{"omegaRadPerYr":0.00003598754576689349,"re":-0.0028253940436069125,"im":-0.0010400588120194618},{"omegaRadPerYr":0.00008803070043594615,"re":-0.0009434236236064627,"im":0.002228421619393694},{"omegaRadPerYr":0.00008318845518322257,"re":-0.0015787960317319783,"im":0.004159017610410285},{"omegaRadPerYr":0.00008897429124977304,"re":0.002597049733099818,"im":-0.0013482412898948083},{"omegaRadPerYr":0.00009001024374007374,"re":-0.001477076890332753,"im":-0.0019933756274166333},{"omegaRadPerYr":0.00008580148063042247,"re":0.00136686225076176,"im":-0.006796508909834152}],"jupiter":[{"omegaRadPerYr":0.00002064063194606469,"re":0.038027887950313,"im":0.022474363953131644},{"omegaRadPerYr":0.00013693627541780867,"re":0.00961757587459229,"im":-0.012409657149112449},{"omegaRadPerYr":0.000014970700404857915,"re":-0.0009275111971142285,"im":0.0015646736119650463},{"omegaRadPerYr":0.00025323191888980716,"re":0.00040581522062427006,"im":0.00040465996971942464},{"omegaRadPerYr":0.00013126639803970536,"re":-0.00015613898300137084,"im":-0.00012184448481360134},{"omegaRadPerYr":0.00014260602548996456,"re":-0.0001532517115428931,"im":-0.00011812283598784673},{"omegaRadPerYr":0.00014000315648450898,"re":0.00010295994371171851,"im":0.00006503732283672366},{"omegaRadPerYr":0.00013386857941921013,"re":0.0000795202331644931,"im":0.00007557530071176517},{"omegaRadPerYr":0.0012496807486413603,"re":1.1621622719099352e-9,"im":6.7174634931051985e-9}],"saturn":[{"omegaRadPerYr":0.00013693627546280002,"re":-0.029518225084472584,"im":0.038113005132400186},{"omegaRadPerYr":0.00002064063199602329,"re":0.028361626856528554,"im":0.0167616808259466},{"omegaRadPerYr":0.00025323191900292967,"re":-0.0013585556019478082,"im":-0.0013545757676553468},{"omegaRadPerYr":0.000014970698829351026,"re":-0.0007731745666288256,"im":0.0013034462145198893},{"omegaRadPerYr":0.00013126638941724563,"re":0.0004715148563234512,"im":0.00036632972072514166},{"omegaRadPerYr":0.00014260601923347466,"re":0.00046551529048782954,"im":0.00036046930677585833},{"omegaRadPerYr":0.0012496807537610505,"re":-2.3542352327472235e-8,"im":-4.5900540386404513e-8}],"uranus":[{"omegaRadPerYr":0.00002064063199063173,"re":-0.03238301287432618,"im":-0.019137894895195285},{"omegaRadPerYr":0.000014970704298924036,"re":-0.014798055142765314,"im":0.024976197504284352},{"omegaRadPerYr":0.0000032644664369115612,"re":0.00045077152247696467,"im":0.001605022476008239},{"omegaRadPerYr":0.0001369362753754483,"re":0.0009472830507642751,"im":-0.001223390657620003},{"omegaRadPerYr":0.000009291041541723274,"re":-0.000401604567008085,"im":-0.00023407110718702293},{"omegaRadPerYr":0.000026312428052549096,"re":0.00022650820465562523,"im":-0.00037682859262741367},{"omegaRadPerYr":0.000014377141359915758,"re":0.00005796882538246377,"im":-0.00005894446294215087},{"omegaRadPerYr":0.000630109781112873,"re":-1.1290163577223926e-7,"im":2.0988102648394414e-7}],"neptune":[{"omegaRadPerYr":0.000003264142190007733,"re":0.0024666135030842894,"im":0.008775587400613344},{"omegaRadPerYr":0.000014970654948815882,"re":0.0018887474744340353,"im":-0.003189505850322774},{"omegaRadPerYr":0.000020640631485813794,"re":0.0016295881460619967,"im":0.000961683644938773},{"omegaRadPerYr":-0.00011593901176290913,"re":7.916016803955656e-8,"im":-4.628159935265509e-8}]},"planetZeta":{"mercury":[{"omegaRadPerYr":-0.000027075252688135303,"re":0.034507972993812516,"im":0.012900176231939679},{"omegaRadPerYr":-0.00003413318913085858,"re":0.026012496159635225,"im":-0.02172585587210577},{"omegaRadPerYr":-0.000034712745479739736,"re":-0.013361480308373218,"im":0.010339635523117514},{"omegaRadPerYr":-0.000026480023377443255,"re":0.015942801197796008,"im":0.006759133845456251},{"omegaRadPerYr":-0.000033349745332060077,"re":-0.006620777212650142,"im":0.0054348828656087065},{"omegaRadPerYr":-3.4774826899281137e-12,"re":-0.004031843322538729,"im":0.013058242876892494},{"omegaRadPerYr":-0.00003279123480567384,"re":-0.004724355429712886,"im":0.003800256639249284},{"omegaRadPerYr":-0.00003377235640514452,"re":-0.008107472210747315,"im":0.0045893835953134295},{"omegaRadPerYr":-0.000035937954775865105,"re":-0.0018354952618832169,"im":0.0018360466306206551},{"omegaRadPerYr":-0.000025205876180773693,"re":0.004190579783375374,"im":0.006219803384495396},{"omegaRadPerYr":-0.00003522619481807185,"re":0.003451363183622276,"im":-0.003429703469467511},{"omegaRadPerYr":-0.00002460893757859952,"re":0.0015514177736682254,"im":-0.003343482557081787},{"omegaRadPerYr":-0.00003220030754588825,"re":-0.00481979481891049,"im":0.0014575886708736402},{"omegaRadPerYr":-0.00002746901166902902,"re":0.005026156933258758,"im":-0.0018696330318260762},{"omegaRadPerYr":-0.00002835376181244059,"re":-0.0077883135458340705,"im":-0.0029043854836422276},{"omegaRadPerYr":-0.000025778167151796015,"re":0.002183373273758006,"im":-0.0013049039003242714}],"venus":[{"omegaRadPerYr":-4.578985061220862e-13,"re":-0.0041318092115248915,"im":0.013146591103484302},{"omegaRadPerYr":-0.00009139210919170899,"re":0.004302178836721753,"im":0.007729432797533917},{"omegaRadPerYr":-0.000027083143494426836,"re":0.005615914883393586,"im":0.0022045304155318157},{"omegaRadPerYr":-0.00008606237120253334,"re":-0.0022301115197853986,"im":0.005277916215858448},{"omegaRadPerYr":-0.000034139510627771396,"re":-0.0035164626872607437,"im":0.00288380150424367},{"omegaRadPerYr":-0.00008872538434048303,"re":0.00010168448954934741,"im":0.0029786510659490875},{"omegaRadPerYr":-0.00003324887744727451,"re":0.0011458539946671447,"im":-0.0010836656563101943},{"omegaRadPerYr":-0.0000347088217349638,"re":0.0015412845408843434,"im":-0.0013035938571345094},{"omegaRadPerYr":-0.00002648275561909222,"re":0.002272374764530366,"im":0.0009038443573824938},{"omegaRadPerYr":-0.00009406063896444446,"re":-0.0015058667473360895,"im":-0.0010559368261704855},{"omegaRadPerYr":-0.00003265795309537878,"re":0.0004897093091811535,"im":-0.0005977673084711258},{"omegaRadPerYr":-0.00003371991570770181,"re":0.0014813619869267168,"im":-0.0009775172821254196},{"omegaRadPerYr":-0.00001450751454356847,"re":-0.0007085957618050013,"im":0.0006422400789447052},{"omegaRadPerYr":-0.00009266133914077402,"re":0.0006246261932307497,"im":-0.00015563722141594352},{"omegaRadPerYr":-0.00002832512344480946,"re":-0.0016020043674368754,"im":-0.0006543125422530463},{"omegaRadPerYr":-0.000032150398362331764,"re":0.0008213779545534132,"im":-0.00030630714194617055}],"mars":[{"omegaRadPerYr":-0.00008606279559201778,"re":0.013639492653874496,"im":-0.032457232973951027},{"omegaRadPerYr":-0.0000913904801359063,"re":0.006431371303559773,"im":0.012372958514356934},{"omegaRadPerYr":7.178719078520604e-13,"re":-0.004147560114123825,"im":0.013135204416671533},{"omegaRadPerYr":-0.00008873516698506461,"re":0.0007137105416783799,"im":0.006090775744627018},{"omegaRadPerYr":-0.00008339835200494959,"re":-0.003815582972326408,"im":0.0037214536526753096},{"omegaRadPerYr":-0.0001277379991822036,"re":-0.0027624995312247875,"im":0.0036599601715857025},{"omegaRadPerYr":-0.00008541733709470576,"re":-0.0012596111030881874,"im":0.0026696117573915775},{"omegaRadPerYr":-0.00008665241478930601,"re":0.00015381271816718205,"im":-0.002394293743814612},{"omegaRadPerYr":-0.00008742542996622243,"re":0.0021694962608554704,"im":0.0002873054579435969},{"omegaRadPerYr":-0.00008482959856635888,"re":-0.0019032664140627602,"im":0.0006755353778986731},{"omegaRadPerYr":-0.00009262432229213287,"re":0.0009830959910415024,"im":0.000005860027199403832},{"omegaRadPerYr":-0.00009198101017707057,"re":-0.00019235240131212957,"im":0.0014912372926541026},{"omegaRadPerYr":-0.00009089974343496672,"re":-0.0006620186303747407,"im":0.00031229740047054855},{"omegaRadPerYr":-0.0000898375941694848,"re":0.0009987528296841592,"im":0.0002577758459970291},{"omegaRadPerYr":-0.00008284288338965252,"re":0.0008863277761868815,"im":0.0001976559175664661},{"omegaRadPerYr":-0.000027084012180608065,"re":0.000846135062449316,"im":0.00035738260688301986}],"jupiter":[{"omegaRadPerYr":3.9291145391106677e-13,"re":-0.004161120059549454,"im":0.013131018351038495},{"omegaRadPerYr":-0.0001277379970414418,"re":0.0019098504208538347,"im":-0.0025056495518566172},{"omegaRadPerYr":-0.0000033531105108549395,"re":0.0005277726541164145,"im":0.0002328879502999891},{"omegaRadPerYr":-0.0000145076090184421,"re":-0.0003701997125281074,"im":0.00030787349749028693},{"omegaRadPerYr":-0.0001308029644289767,"re":-0.0000174673874581557,"im":-0.000016336474020498706},{"omegaRadPerYr":-0.00001144215466402018,"re":0.000012451368971721139,"im":0.000012698732278028531},{"omegaRadPerYr":0.0004016105480773955,"re":0.000008815884710045517,"im":-0.000011207394245754605},{"omegaRadPerYr":-0.000008827180221146707,"re":0.000007837212555476044,"im":0.000007802551449626735},{"omegaRadPerYr":-0.00002708207208088882,"re":-0.000008776015189699537,"im":-0.0000034886111726939536},{"omegaRadPerYr":-0.000020176735636704016,"re":0.000006169354705642575,"im":0.000007522482594250937},{"omegaRadPerYr":0.0002853149108189124,"re":0.0000072930805865087815,"im":0.000004377991245001836},{"omegaRadPerYr":-0.00024403364274997374,"re":0.000006275985154445326,"im":0.0000036469498914137506},{"omegaRadPerYr":0.0001690192650191104,"re":-0.0000025183143359112966,"im":0.000005677867571227171},{"omegaRadPerYr":-0.0000027587171161645304,"re":0.000005889365753506005,"im":8.458656285810425e-7},{"omegaRadPerYr":-0.00003414062275168699,"re":0.0000046613972072596195,"im":-0.000003792908608250324},{"omegaRadPerYr":-0.00013340810623493888,"re":0.0000036190653824345688,"im":0.0000026409978837268197}],"saturn":[{"omegaRadPerYr":3.4029253487432276e-13,"re":-0.004160793253251316,"im":0.0131303432564967},{"omegaRadPerYr":-0.00012773799705265138,"re":-0.004757582950277652,"im":0.006241816622455856},{"omegaRadPerYr":-0.0000033531044772245537,"re":0.0005082407388466556,"im":0.0002243634869271189},{"omegaRadPerYr":-0.000014507612210842444,"re":-0.00030032921754301876,"im":0.00024986288121111824},{"omegaRadPerYr":-0.00013080300998151716,"re":0.000044611089261225124,"im":0.000041699286021970765},{"omegaRadPerYr":0.0004016105481817557,"re":-0.000021896079374831962,"im":0.00002783952421618892},{"omegaRadPerYr":0.0002853149035300216,"re":-0.000016969319300307734,"im":-0.000010210429781470916},{"omegaRadPerYr":0.00016901926503904146,"re":0.000006355287457503374,"im":-0.000014465630447413089},{"omegaRadPerYr":-0.000027082413008212254,"re":-0.000011467951961457061,"im":-0.0000045385131674442305},{"omegaRadPerYr":-0.00008606268434458911,"re":-0.000004984845596354589,"im":0.000011816929672694467},{"omegaRadPerYr":-0.00013340785083355746,"re":-0.000008293367962443157,"im":-0.000006037698543442821},{"omegaRadPerYr":-0.00012206699860418157,"re":-0.000007834874620660982,"im":-0.000006194273028109633},{"omegaRadPerYr":-0.00000882765486045031,"re":0.000006926329003489009,"im":0.000007088618273045472},{"omegaRadPerYr":-0.00024403364663941606,"re":-0.0000067688514085649824,"im":-0.0000039372804262236975},{"omegaRadPerYr":-0.0009675115240877072,"re":-0.000004523409148243982,"im":-0.000006118079173710789},{"omegaRadPerYr":-0.00003414022666495201,"re":0.000006744799075224061,"im":-0.000005424494980786279}],"uranus":[{"omegaRadPerYr":1.6035381924529826e-12,"re":-0.004160856574076537,"im":0.013129860263650466},{"omegaRadPerYr":-0.000014507587492148105,"re":0.006819693058704708,"im":-0.005674634427905033},{"omegaRadPerYr":-0.000003353318510922242,"re":-0.0005101468889123178,"im":-0.00022431192788544522},{"omegaRadPerYr":-0.00012773799839573913,"re":0.00021390989911443435,"im":-0.00028067733516422825},{"omegaRadPerYr":-0.00001144228145249911,"re":-0.00021557933455541202,"im":-0.00021506510001186838},{"omegaRadPerYr":-0.000020175262728463126,"re":-0.00012181772747600126,"im":-0.00014562700090550872},{"omegaRadPerYr":-0.00000883170562826008,"re":-0.00012271929112445733,"im":-0.00013405373144391057},{"omegaRadPerYr":-0.00001510440449049501,"re":-0.000058179974245503275,"im":0.000026130858446085462},{"omegaRadPerYr":-0.000005772316459589512,"re":0.000018645941499112344,"im":-0.00001878803213517993},{"omegaRadPerYr":0.00005578878161701158,"re":-0.0000035816201386023236,"im":0.000018771557812212996},{"omegaRadPerYr":0.000050118758792649465,"re":0.000011954632103169795,"im":0.0000022788664124465486},{"omegaRadPerYr":-0.00002708183955964115,"re":0.000008335345344512824,"im":0.0000040982491105863455},{"omegaRadPerYr":-0.00013080309258480877,"re":-0.000007761316945910109,"im":-0.000007176694306362629},{"omegaRadPerYr":-0.00000919291035746893,"re":-0.0000070046918408019785,"im":0.000009861041144242077},{"omegaRadPerYr":-0.000014175994677444206,"re":-0.000012723240021455644,"im":0.00000777853735565578},{"omegaRadPerYr":0.0001017880841622457,"re":-0.0000040435660217196926,"im":-0.0000064036147121467425}],"neptune":[{"omegaRadPerYr":-5.349828375339041e-12,"re":-0.004159713069048624,"im":0.013130967383578487},{"omegaRadPerYr":-0.0000033530986744207723,"re":-0.005314739878282499,"im":-0.002345747737634212},{"omegaRadPerYr":-0.000014507479713283455,"re":-0.0008167131088991813,"im":0.0006798119496759311},{"omegaRadPerYr":-0.00001144257176535115,"re":0.000041026355047958796,"im":0.000040008034057922234},{"omegaRadPerYr":-0.000002757657502334114,"re":-0.00006150279163049683,"im":-0.000008690207476502036},{"omegaRadPerYr":-0.00012773799448148447,"re":0.000022941558795513458,"im":-0.000030013595125175664},{"omegaRadPerYr":-0.000020173286379739758,"re":0.000017859314392695935,"im":0.000021295104154845517},{"omegaRadPerYr":-0.000008980352762861808,"re":-0.0000018668278333279935,"im":0.00001734839960945963},{"omegaRadPerYr":0.0000022939455372302596,"re":-0.000008136491572209451,"im":0.000015966718498480645},{"omegaRadPerYr":-0.000005773435292130715,"re":-0.000010153039434495965,"im":0.00001234648914398541},{"omegaRadPerYr":-0.0000036886933327809922,"re":-0.000013293307017523214,"im":-0.000004964360480464718},{"omegaRadPerYr":-0.000015103757850504649,"re":0.000008464484618207752,"im":-0.0000038066887969154185},{"omegaRadPerYr":0.000002905459397753426,"re":1.1023119841574007e-8,"im":-0.000006670720883801244},{"omegaRadPerYr":0.000050117843996304345,"re":-0.0000051301124302096184,"im":-0.0000010095299944260241},{"omegaRadPerYr":0.00003897825256076914,"re":-0.000002068345816124314,"im":0.0000027758998424355177}]},"anchorE":0.016702435651957018,"anchorPeriEclipticDeg":462.9179213996577,"anchorInclEclipticDeg":0.00010345820355474172,"anchorAscNodeEclipticDeg":140.29217988414328});
|
|
19
|
+
const DEEP_MODES_ARTIFACT = Object.freeze({"meta":{"integrator":"wh","order":2,"dtDays":2,"spanYears":20000000,"sampleDays":20000,"gr":true,"seed":"JPL Horizons J2000 heliocentric state vectors (tools/explore/j2000-state.mjs, the one home)","masses":"DE440 mass ratios (astro-reference physicalConstants)","runCommand":"node tools/explore/lattice-long-window-test.mjs years=20000000 integrator=wh dt=2 order=2 gr=1 frame=both sample=20000","dumpFile":"tools/explore/lattice-long-window-ecliptic-20000000-gr.local.json (untracked, 337 MB)","dumpSha256":"686d6af51a689f7bd64ac1e2d8b26c243a4beccdacd3167adfeeae078e8b990f","conservationMaxDE":1.2738960401328902e-8,"decimation":4,"naffTerms":18,"naffZetaTerms":16,"naffZetaTermsEra":8,"frame":"ecliptic-J2000 (z-modes for the lunar-chain e; ζ-modes for the Stage-C obliquity hybrid — the invariable-frame ζ table remains unbanked, no consumer)","laskarRef":"Laskar, J. et al. (2004), A&A 428, 261–285, Table 3 (theory reference labels)"},"verdict":{"strongestBeatPeriodKyr":405.625567477903,"strongestBeatArcsecPerYr":3.195064867479295,"la2004BeatPeriodKyr":405.6972922210049,"rockMetronomeKyr":405.6,"companion124Kyr":123.84617993487997,"companion95Kyr":94.87791796545507,"earthLeadingModesArcsecPerYr":[4.257358971029763,7.452423838509057,17.917017907389138,17.368946405872247],"topBeatLines":[{"periodKyr":405.625567477903,"productAmp":0.0003123310080848341},{"periodKyr":94.87791796545507,"productAmp":0.00024338439758855827},{"periodKyr":123.84617993487997,"productAmp":0.00020980875877847502},{"periodKyr":98.84386665157218,"productAmp":0.00016694824937892253},{"periodKyr":130.6909747037068,"productAmp":0.00014391721626151482},{"periodKyr":2364.6549700414625,"productAmp":0.00011214770251987629},{"periodKyr":972.3103697584877,"productAmp":0.00007218142389142678},{"periodKyr":695.9670418382926,"productAmp":0.00006222377072471454}],"note":"g5 matches La2004 to 0.0002 ″/yr; the beat gap vs 405.6 is g2 (chaotic-diffusion window sensitivity + omitted separate-Moon/asteroid terms) — the anatomy is the plan’s Stage-B record."},"earthZ":[{"omegaRadPerYr":0.000020640258745496456,"re":0.01640837548946667,"im":0.00964771830356857},{"omegaRadPerYr":0.00003613037034336034,"re":-0.015519645105303494,"im":-0.005327718511512781},{"omegaRadPerYr":0.00008686415406186803,"re":-0.011108307303646387,"im":0.0063324002417276355},{"omegaRadPerYr":0.00008420702844025169,"re":0.005504442820656899,"im":-0.006828487155118338},{"omegaRadPerYr":0.000027102377738159537,"re":0.0005990602912422896,"im":0.0037445139104202996},{"omegaRadPerYr":0.00008284690006982035,"re":0.002385900412412394,"im":0.0008687520930649916},{"omegaRadPerYr":0.00008551634076169395,"re":0.0012667960543480752,"im":0.001284547912075711},{"omegaRadPerYr":0.00008156882804453768,"re":-0.0003413759390549155,"im":0.0016823570425905205},{"omegaRadPerYr":0.000033456117700854,"re":-0.0012412588643094782,"im":0.0009318258971565654},{"omegaRadPerYr":0.00013693625799603712,"re":-0.0009261214276803977,"im":0.0011910509606790575},{"omegaRadPerYr":0.00008736463294475958,"re":0.0013199280789047622,"im":0.0009530586967429039},{"omegaRadPerYr":0.00008630679999141721,"re":-0.00038871245410104777,"im":0.0009912036911146165},{"omegaRadPerYr":0.000026453632677170472,"re":-0.00032615534646350156,"im":-0.0018102501817831135},{"omegaRadPerYr":0.000034145978925786535,"re":0.0009480778866315119,"im":-0.0008230502200947101},{"omegaRadPerYr":0.00003548085475024487,"re":-0.0013007947815593653,"im":-0.00042439393044846465},{"omegaRadPerYr":0.00008951127418467436,"re":-0.0010559339979945592,"im":-0.000005975184481501219},{"omegaRadPerYr":0.00008814769888639652,"re":-0.0003392982459796931,"im":-0.00126615007571311},{"omegaRadPerYr":0.000027692559180942054,"re":0.0004455147622140075,"im":0.0013147856084997915}],"earthZeta":[{"omegaRadPerYr":-6.480692835562015e-14,"re":-0.004134427250631887,"im":0.013144207689667023},{"omegaRadPerYr":-0.00009139020514696892,"re":-0.003762846299946732,"im":-0.007417313993526907},{"omegaRadPerYr":-0.00002707802193107254,"re":0.004228758817782956,"im":0.001552899971393225},{"omegaRadPerYr":-0.00008608086641122392,"re":0.0012161313006493822,"im":-0.0038454411181687697},{"omegaRadPerYr":-0.00003414305478233622,"re":-0.0030829972319892183,"im":0.002522672469285971},{"omegaRadPerYr":-0.00008873899569559657,"re":-0.00020769480131372744,"im":-0.0026850953462850356},{"omegaRadPerYr":-0.00003333897395226539,"re":0.0006468387853619108,"im":-0.0008212555187612507},{"omegaRadPerYr":-0.000034707554013716744,"re":0.0012115602030611985,"im":-0.0008603813396121053},{"omegaRadPerYr":-0.00009404694793046069,"re":0.001124843496312146,"im":0.0009724617908785189},{"omegaRadPerYr":-0.00002647193861971907,"re":0.001606075294689031,"im":0.0005931944911952478},{"omegaRadPerYr":-0.00003277702706161178,"re":0.0005051745779261483,"im":-0.0006705412769950699},{"omegaRadPerYr":-0.00012773805775388969,"re":-0.0008122347824469044,"im":0.0010593881606687687},{"omegaRadPerYr":-0.00009269956713813446,"re":-0.0006909282558950976,"im":0.0004135096481099148},{"omegaRadPerYr":-0.000014507597324441827,"re":-0.0006470785128404058,"im":0.00057746649029071},{"omegaRadPerYr":-0.000033761896788929335,"re":0.001157822428032179,"im":-0.000690971407290411},{"omegaRadPerYr":-0.000028297573329000286,"re":-0.0011184968821771682,"im":-0.0003885179122647609}],"earthZetaEra":[{"omegaRadPerYr":-6.480692835562015e-14,"re":-0.004136170228858843,"im":0.013147349898750587},{"omegaRadPerYr":-0.00009139020514696892,"re":-0.0037451120264298888,"im":-0.007367103224447289},{"omegaRadPerYr":-0.00002707802193107254,"re":0.004192460536906565,"im":0.0015465498581850507},{"omegaRadPerYr":-0.00008608086641122392,"re":0.0012039767467140353,"im":-0.0038572667358382287},{"omegaRadPerYr":-0.00003414305478233622,"re":-0.0032014533879969596,"im":0.0025701217059533803},{"omegaRadPerYr":-0.00008873899569559657,"re":-0.00021856508120855303,"im":-0.002669820778092242},{"omegaRadPerYr":-0.00003333897395226539,"re":0.0003478573166468341,"im":-0.0006130210720886913},{"omegaRadPerYr":-0.000034707554013716744,"re":0.0012188003710118757,"im":-0.000879354385952938}],"planetLeadingZetaArcsecPerYr":{"mercury":-5.583654095308831,"venus":-18.85062201283722,"earth":-18.850582957521933,"mars":-17.75551746317749,"jupiter":-26.34785064223289,"saturn":-26.34785063789155,"uranus":-2.992403454072025,"neptune":-0.6916261380439003},"planetZ":{"mercury":[{"omegaRadPerYr":0.000027101464787379005,"re":0.036443059874745144,"im":0.15312012416846857},{"omegaRadPerYr":0.00002645682320158395,"re":-0.014115236278813163,"im":-0.07933183704397909},{"omegaRadPerYr":0.000027695768774324655,"re":0.014883065162550294,"im":0.04770421699238349},{"omegaRadPerYr":0.000020608825679123343,"re":0.0339424735092415,"im":0.0205886131133393},{"omegaRadPerYr":0.00003613198806683821,"re":0.026373724217244415,"im":0.007998632845938181},{"omegaRadPerYr":0.000025943085765069145,"re":-0.00008287402030671245,"im":0.01382534867142278},{"omegaRadPerYr":0.000021259366308985905,"re":-0.010921101889740678,"im":-0.005391042758241112},{"omegaRadPerYr":0.000033442897144222473,"re":-0.006298873452719107,"im":0.004846731368887027},{"omegaRadPerYr":0.000027342847424225136,"re":-0.031441801079617394,"im":-0.0012828182325896284},{"omegaRadPerYr":0.000026863603353307064,"re":-0.0023658597755055214,"im":0.03845436133115692},{"omegaRadPerYr":0.000029077390952304336,"re":-0.0056672065762804385,"im":0.008668504999729803},{"omegaRadPerYr":0.000025324686199132127,"re":-0.005942232736715857,"im":-0.012274661661212959},{"omegaRadPerYr":0.00002979754974875923,"re":0.0008097924308674098,"im":-0.0064472013829302505},{"omegaRadPerYr":0.000019992412184743173,"re":0.012472217201012077,"im":0.00359833652112381},{"omegaRadPerYr":0.00002454697962536287,"re":0.0020556509667169235,"im":0.0009916346793612978},{"omegaRadPerYr":0.00002812715748715012,"re":-0.002051758629227311,"im":-0.0033287955771129805},{"omegaRadPerYr":0.000019449369227596397,"re":-0.0038021090567115627,"im":-0.0028426209995905025}],"venus":[{"omegaRadPerYr":0.00003613032718771122,"re":-0.020105324941805183,"im":-0.006917696377202324},{"omegaRadPerYr":0.000020639950705137238,"re":0.017068955357371025,"im":0.010006500628836495},{"omegaRadPerYr":0.00008686450325171618,"re":0.011426811376444728,"im":-0.006520605414974846},{"omegaRadPerYr":0.00008420762005329659,"re":-0.006892443369184228,"im":0.008472548929406779},{"omegaRadPerYr":0.000027101843398089462,"re":0.0009492363872320767,"im":0.005898626241129876},{"omegaRadPerYr":0.00008284929259321451,"re":-0.0030327325912061806,"im":-0.0010976776908548803},{"omegaRadPerYr":0.00008156590133143486,"re":0.0004654494107565469,"im":-0.002280587631810283},{"omegaRadPerYr":0.00003345630943302872,"re":-0.0017828402597892042,"im":0.0012954758789217673},{"omegaRadPerYr":0.00008551538095828359,"re":-0.0011609215700463195,"im":-0.0012677518151850962},{"omegaRadPerYr":0.00002645314323665865,"re":-0.0005187468879242992,"im":-0.0028561425016264542},{"omegaRadPerYr":0.000034145633629733906,"re":0.0012933573208605794,"im":-0.001139818586425855},{"omegaRadPerYr":0.00002769519215699273,"re":0.000692247567326856,"im":0.0020562801187020375},{"omegaRadPerYr":0.00003548134649993586,"re":-0.0017504367473210652,"im":-0.0005759353131695786},{"omegaRadPerYr":0.00008736396981192052,"re":-0.0013474628838071549,"im":-0.000992885318268049},{"omegaRadPerYr":0.00008630854715331631,"re":0.0003763610849158857,"im":-0.0010611470059873186},{"omegaRadPerYr":0.00003678579378710168,"re":0.0015965344500683718,"im":0.0003260227593096117},{"omegaRadPerYr":0.00008814539612129297,"re":0.00043027029421162,"im":0.0012698103607611786},{"omegaRadPerYr":0.00009215946508724939,"re":-0.0008157163462856423,"im":-0.0001752965015353975}],"mars":[{"omegaRadPerYr":0.00008686194427246272,"re":0.04150468181977603,"im":-0.02235805720891878},{"omegaRadPerYr":0.00008420997062723613,"re":0.024191159406394575,"im":-0.02897798440552211},{"omegaRadPerYr":0.000020640675066908026,"re":0.01752920390659033,"im":0.010379054381833624},{"omegaRadPerYr":0.00008155902048560256,"re":-0.005126487019269018,"im":0.017498780322239615},{"omegaRadPerYr":0.00008951470797098792,"re":0.012453460704855819,"im":-0.0011162639997386022},{"omegaRadPerYr":0.00008286071984936754,"re":0.012151786749976757,"im":0.005285572685028835},{"omegaRadPerYr":0.00008552376356754678,"re":-0.008207026797923043,"im":-0.006506174683766466},{"omegaRadPerYr":0.00013693612216296713,"re":-0.004303426290032767,"im":0.005495751915005897},{"omegaRadPerYr":0.0000863140674359666,"re":0.003378196925346155,"im":-0.0035707297870487854},{"omegaRadPerYr":0.00009216418711866517,"re":0.004180141329638833,"im":0.001239878529646219},{"omegaRadPerYr":0.00008815294634884687,"re":0.0015478422945863473,"im":0.005394318221250823},{"omegaRadPerYr":0.00008737006869414014,"re":-0.004859264335556832,"im":-0.002468706141182086},{"omegaRadPerYr":0.00008474936320624016,"re":-0.0037175110079883836,"im":0.0005712305102614905},{"omegaRadPerYr":0.00003613060911836741,"re":-0.002878165082426005,"im":-0.0009813871463689},{"omegaRadPerYr":0.00008323445042360793,"re":-0.0021030674464516,"im":0.002382835034113347},{"omegaRadPerYr":0.00008591714206468895,"re":0.00033705398396163035,"im":-0.0031641077910174956},{"omegaRadPerYr":0.00008022543440532314,"re":0.0014077256319658448,"im":0.00023992196561432362},{"omegaRadPerYr":0.0000900335871717643,"re":-0.0007652388036231974,"im":-0.0015581764537776826}],"jupiter":[{"omegaRadPerYr":0.00002064075395335189,"re":0.038028034576741906,"im":0.022474419029067216},{"omegaRadPerYr":0.00013693627466777967,"re":0.009616177715621049,"im":-0.012410735192913122},{"omegaRadPerYr":0.000014970699552264387,"re":-0.0009276176888746422,"im":0.0015645820896462246},{"omegaRadPerYr":0.00025323179539978545,"re":0.0004059157737100984,"im":0.00040456376985595945},{"omegaRadPerYr":0.0001312662749926737,"re":-0.00015614354905163857,"im":-0.00012183629827031596},{"omegaRadPerYr":0.0001426061431474546,"re":-0.00015326196073912603,"im":-0.00011811188348776635},{"omegaRadPerYr":0.00014000309579914057,"re":0.00010317940519689781,"im":0.00006505029768233116},{"omegaRadPerYr":0.00013386863466366606,"re":0.00007960628300069755,"im":0.0000757581826985722},{"omegaRadPerYr":0.0012496810113814863,"re":3.5498901583457483e-9,"im":7.528217439557287e-9}],"saturn":[{"omegaRadPerYr":0.00013693627469533272,"re":-0.02951381641782599,"im":0.038116342187048506},{"omegaRadPerYr":0.000020640753964721574,"re":0.028361784183640975,"im":0.016761738089661193},{"omegaRadPerYr":0.0002532317954411971,"re":-0.0013588658390314074,"im":-0.0013542513704600167},{"omegaRadPerYr":0.000014970698207898392,"re":-0.0007732461228524056,"im":0.0013033726384504506},{"omegaRadPerYr":0.00013126626734545323,"re":0.000471597345592877,"im":0.0003662972802790016},{"omegaRadPerYr":0.00014260613959102947,"re":0.00046558535071819594,"im":0.0003604428232502375},{"omegaRadPerYr":0.0012496810120112478,"re":-2.2413816213183782e-8,"im":-4.3761227707856587e-8}],"uranus":[{"omegaRadPerYr":0.000020640753931894893,"re":-0.03238248798724911,"im":-0.019137541918709554},{"omegaRadPerYr":0.00001497070511159062,"re":-0.014798949407797135,"im":0.024975442503237483},{"omegaRadPerYr":0.000003264464996922227,"re":0.00045075801975650074,"im":0.0016050091168723338},{"omegaRadPerYr":0.00013693627457864556,"re":0.0009471352229324553,"im":-0.0012234989208774374},{"omegaRadPerYr":0.00000929092310040761,"re":-0.0004015633445553787,"im":-0.0002340983045129561},{"omegaRadPerYr":0.00002631265778975313,"re":0.00022664443272842668,"im":-0.0003767093309339966},{"omegaRadPerYr":0.000014377069742263513,"re":0.00005819778777828242,"im":-0.00005910629719132463},{"omegaRadPerYr":0.000630109378889249,"re":-1.1513321171782036e-7,"im":2.121111820496366e-7}],"neptune":[{"omegaRadPerYr":0.000003264141494649585,"re":0.0024665853980857314,"im":0.008775596228059238},{"omegaRadPerYr":0.000014970655663003607,"re":0.0018888606403837439,"im":-0.0031894015693886913},{"omegaRadPerYr":0.00002064075339053921,"re":0.001629524897365034,"im":0.0009616466536353474},{"omegaRadPerYr":-0.00011593914172939557,"re":7.926785905418971e-8,"im":-4.6685992002385664e-8}]},"planetZeta":{"mercury":[{"omegaRadPerYr":-0.000027070318959890106,"re":0.03509799360084889,"im":0.012514361334229175},{"omegaRadPerYr":-0.000034136904111019706,"re":0.02695969560580955,"im":-0.02182848736661456},{"omegaRadPerYr":-0.000034710315380555884,"re":-0.012559168496773116,"im":0.008299078079729882},{"omegaRadPerYr":-0.00002646765287895232,"re":0.015448524016084493,"im":0.005987672372630069},{"omegaRadPerYr":-0.00003340798156431758,"re":-0.006455019023356067,"im":0.006226120154816196},{"omegaRadPerYr":5.384799590336571e-11,"re":-0.0039804878272654606,"im":0.013070100663895403},{"omegaRadPerYr":-0.000032847026422583094,"re":-0.0057003023891457685,"im":0.005259105004808747},{"omegaRadPerYr":-0.00003594792939956603,"re":-0.0012961241060881503,"im":0.0016159947697806383},{"omegaRadPerYr":-0.000025076126902622893,"re":0.0009463621131951934,"im":0.004877886245061111},{"omegaRadPerYr":-0.00003524962055187364,"re":0.0036108114629212922,"im":-0.004623693257308201},{"omegaRadPerYr":-0.000024475658963257535,"re":0.000022935888716433717,"im":-0.004353014017229704},{"omegaRadPerYr":-0.00003379278995294136,"re":-0.007806785352862373,"im":0.004006431979329447},{"omegaRadPerYr":-0.00003218755893963215,"re":-0.003704818024406685,"im":0.0011960062285103251},{"omegaRadPerYr":-0.000028313967733473683,"re":-0.007360063597313632,"im":-0.002796682485956438},{"omegaRadPerYr":-0.000027441506455909732,"re":0.005714284626147598,"im":-0.00031320953109534994},{"omegaRadPerYr":-0.000025718824169110346,"re":-0.00022772395090882533,"im":-0.00196911848110608}],"venus":[{"omegaRadPerYr":-1.6493179814802074e-12,"re":-0.0041316378307605294,"im":0.013147230899595441},{"omegaRadPerYr":-0.00009139039449248062,"re":0.004107318311959544,"im":0.008097727638340723},{"omegaRadPerYr":-0.000027077829093903624,"re":0.005723184464233101,"im":0.002103989760517981},{"omegaRadPerYr":-0.0000860809730098796,"re":-0.0017575781212555862,"im":0.005497182235759365},{"omegaRadPerYr":-0.00003414333446857137,"re":-0.0036683665695228925,"im":0.0029729549111848722},{"omegaRadPerYr":-0.0000887389845132903,"re":0.00017437292720263114,"im":0.002839346558623874},{"omegaRadPerYr":-0.00003332402755350087,"re":0.0008226456090349229,"im":-0.000990196523458664},{"omegaRadPerYr":-0.00003470699633273722,"re":0.0013981977987789472,"im":-0.0010036696718058783},{"omegaRadPerYr":-0.00002647213755615405,"re":0.002192723581813546,"im":0.0008156688371823413},{"omegaRadPerYr":-0.00009404722529229626,"re":-0.001310202146639285,"im":-0.0011534120915617934},{"omegaRadPerYr":-0.00003276165702381588,"re":0.0005497404769706646,"im":-0.0007663000693998108},{"omegaRadPerYr":-0.00009269906010008638,"re":0.000774314512799505,"im":-0.0004388675219967948},{"omegaRadPerYr":-0.00003375443573456643,"re":0.0014500491408612449,"im":-0.0008824349886108636},{"omegaRadPerYr":-0.000014507610514643914,"re":-0.0007092452594379532,"im":0.000644027430133631},{"omegaRadPerYr":-0.00002829966619518156,"re":-0.0015021530175610535,"im":-0.0005258063199032051},{"omegaRadPerYr":-0.00003214220556483202,"re":0.0006661181436053425,"im":-0.0002653316593905635}],"mars":[{"omegaRadPerYr":-0.00008608117781327729,"re":0.01021076871109231,"im":-0.03356452939087538},{"omegaRadPerYr":-0.00009138911102981668,"re":0.006448673929855857,"im":0.013039152420792278},{"omegaRadPerYr":4.816071417209985e-13,"re":-0.004136702437859971,"im":0.013131620521733377},{"omegaRadPerYr":-0.00008873924259238756,"re":0.000719141598532243,"im":0.006332417454417071},{"omegaRadPerYr":-0.00008342553512204505,"re":-0.003385387773112122,"im":0.004320169865314299},{"omegaRadPerYr":-0.00012773796958870522,"re":-0.002768952254262225,"im":0.0036533714419055593},{"omegaRadPerYr":-0.00008732462124121245,"re":0.002315330060230354,"im":0.00021373005960354581},{"omegaRadPerYr":-0.00008533729428600537,"re":0.0000662084835502976,"im":0.0014041635383156973},{"omegaRadPerYr":-0.0000927013779034122,"re":0.0012004630656653568,"im":-0.0007842461095443991},{"omegaRadPerYr":-0.00008675666306804544,"re":0.0007084511153542455,"im":-0.0008188292363296188},{"omegaRadPerYr":-0.00008568093272163965,"re":-0.0022269947606386804,"im":-0.0002915189256492408},{"omegaRadPerYr":-0.0000920127905544982,"re":-0.00012713738691022227,"im":0.0011838067237884178},{"omegaRadPerYr":-0.00008937418687447559,"re":-0.0002755627620382867,"im":0.0007026683188238479},{"omegaRadPerYr":-0.00002707848026399503,"re":0.0008884002528900317,"im":0.00034005750138313076},{"omegaRadPerYr":-0.00009092889696047022,"re":-0.00043281332848104276,"im":0.0003922132913606256},{"omegaRadPerYr":-0.00009004802546465118,"re":0.0008966966123701487,"im":-0.0005174229841345629}],"jupiter":[{"omegaRadPerYr":3.8532251623886294e-13,"re":-0.0041611376264940984,"im":0.013131043712311021},{"omegaRadPerYr":-0.0001277379845918518,"re":0.0019098261437600508,"im":-0.002505661007425496},{"omegaRadPerYr":-0.000003353110004279269,"re":0.0005277820779376669,"im":0.000232885172945674},{"omegaRadPerYr":-0.000014507601866590341,"re":-0.0003702089817814631,"im":0.00030787406163905093},{"omegaRadPerYr":-0.00013080293768331143,"re":-0.000017471248168841094,"im":-0.00001634692544524867},{"omegaRadPerYr":-0.000011442276716160314,"re":0.000012459821928796665,"im":0.00001269474660145274},{"omegaRadPerYr":0.0004016105340997148,"re":0.000008813036156379482,"im":-0.00001120905836048329},{"omegaRadPerYr":-0.00000882703119796523,"re":0.000007828457504338726,"im":0.000007811495266844502},{"omegaRadPerYr":-0.00002707681546885972,"re":-0.000009044718068424064,"im":-0.0000033400395822585094},{"omegaRadPerYr":-0.0000201768700641032,"re":0.000006156498033523465,"im":0.00000751705596830829},{"omegaRadPerYr":0.0002853150225305461,"re":0.000007292599938644516,"im":0.0000043773896212603925},{"omegaRadPerYr":-0.0002440335075107546,"re":0.000006274454282046377,"im":0.0000036485466831589452},{"omegaRadPerYr":0.00016901949668819092,"re":-0.000002519428503521004,"im":0.000005678550409035692},{"omegaRadPerYr":-0.0000027587103410433805,"re":0.000005899853582363865,"im":8.409148783838858e-7},{"omegaRadPerYr":-0.000034144381407487655,"re":0.000004719652715449978,"im":-0.0000037247689900126893},{"omegaRadPerYr":-0.00013340793710151563,"re":0.0000036153371332643194,"im":0.0000026473096931137383}],"saturn":[{"omegaRadPerYr":3.404546335777438e-13,"re":-0.004160815341357166,"im":0.01313037085706424},{"omegaRadPerYr":-0.0001277379845708044,"re":-0.004757531229884148,"im":0.0062418570697877025},{"omegaRadPerYr":-0.000003353103939425025,"re":0.0005082525979425591,"im":0.0002243582817470411},{"omegaRadPerYr":-0.000014507604683407504,"re":-0.0003003418401293427,"im":0.0002498658928695802},{"omegaRadPerYr":-0.00013080297316369022,"re":0.00004462521372870775,"im":0.00004172396328086738},{"omegaRadPerYr":0.0004016105342059343,"re":-0.000021890424766638027,"im":0.00002784479607678065},{"omegaRadPerYr":0.00028531501227593826,"re":-0.000016971705234483944,"im":-0.000010207779625167536},{"omegaRadPerYr":0.00016901949653661777,"re":0.000006353117499272568,"im":-0.000014464465864357296},{"omegaRadPerYr":-0.00002707712299185719,"re":-0.000011819853659803773,"im":-0.000004343694032290057},{"omegaRadPerYr":-0.00008608110335393078,"re":-0.0000038556316501964585,"im":0.000012260170759195859},{"omegaRadPerYr":-0.00013340770427701983,"re":-0.000008291647540272973,"im":-0.0000060449324319747485},{"omegaRadPerYr":-0.00012206708504485138,"re":-0.000007846468613598666,"im":-0.000006177485716796176},{"omegaRadPerYr":-0.000008827506775295263,"re":0.000006912239479621683,"im":0.0000070997530164759055},{"omegaRadPerYr":-0.00024403351156152198,"re":-0.000006770600853713768,"im":-0.000003936350447344142},{"omegaRadPerYr":-0.0009675113430843807,"re":-0.000004521653063656594,"im":-0.000006119593231226156},{"omegaRadPerYr":-0.000034143979713964837,"re":0.000006837682774689789,"im":-0.000005331591672335383}],"uranus":[{"omegaRadPerYr":1.609741252182826e-12,"re":-0.004160857683169045,"im":0.01312987468744944},{"omegaRadPerYr":-0.000014507581339335488,"re":0.006819771098312077,"im":-0.005674555448618447},{"omegaRadPerYr":-0.0000033533175354118582,"re":-0.0005101607663847248,"im":-0.00022431030942694354},{"omegaRadPerYr":-0.00012773798595007094,"re":0.00021390993605577627,"im":-0.00028068024741796866},{"omegaRadPerYr":-0.000011442390269999423,"re":-0.00021565535141600253,"im":-0.0002150430588126844},{"omegaRadPerYr":-0.000020175380767861024,"re":-0.00012178417740316124,"im":-0.0001456136848907788},{"omegaRadPerYr":-0.00000883157541584528,"re":-0.00012271282922940013,"im":-0.0001340577820362881},{"omegaRadPerYr":-0.000015103884918843288,"re":-0.00005803301762598432,"im":0.000026178909117342292},{"omegaRadPerYr":-0.000005772310491116802,"re":0.000018629424113074064,"im":-0.000018786863001070623},{"omegaRadPerYr":0.000055789019292025894,"re":-0.000003583719865681113,"im":0.00001877185158848246},{"omegaRadPerYr":0.00005011887511064967,"re":0.000011951449395631811,"im":0.000002279724016800827},{"omegaRadPerYr":-0.000027076655469348425,"re":0.000008609833687019483,"im":0.0000039638140159356984},{"omegaRadPerYr":-0.00013080298640432038,"re":-0.000007760607234183951,"im":-0.000007178734351197981},{"omegaRadPerYr":-0.000009192811893081681,"re":-0.000006996875336880973,"im":0.000009870536991923898},{"omegaRadPerYr":-0.000014175491386338482,"re":-0.00001270447511881092,"im":0.000007778091287202746},{"omegaRadPerYr":0.00010178796581047778,"re":-0.000004042702368549757,"im":-0.000006403994609904075}],"neptune":[{"omegaRadPerYr":-5.309966632404278e-12,"re":-0.004159721990836072,"im":0.013130987686676325},{"omegaRadPerYr":-0.000003353098139366354,"re":-0.005314734202759442,"im":-0.0023457634229809878},{"omegaRadPerYr":-0.000014507473764320118,"re":-0.0008167253455895104,"im":0.000679803323619701},{"omegaRadPerYr":-0.00001144267951307936,"re":0.00004103714819598339,"im":0.00004000434297961395},{"omegaRadPerYr":-0.0000027576446795887367,"re":-0.00006149846188777267,"im":-0.000008691440917605258},{"omegaRadPerYr":-0.000127737982036136,"re":0.000022941259364012485,"im":-0.000030013884419629694},{"omegaRadPerYr":-0.00002017340325592398,"re":0.00001785684479351327,"im":0.000021295006716797693},{"omegaRadPerYr":-0.000008980453563447026,"re":-0.0000018701512064522262,"im":0.000017342410863083055},{"omegaRadPerYr":0.0000022940676061081706,"re":-0.000008135256823034523,"im":0.0000159660700897465},{"omegaRadPerYr":-0.000005773430993827179,"re":-0.000010150670472290044,"im":0.000012347455189860531},{"omegaRadPerYr":-0.0000036886914876550886,"re":-0.000013289694939214323,"im":-0.000004967461981751487},{"omegaRadPerYr":-0.000015103364422159208,"re":0.000008447715112089554,"im":-0.0000038128138702162122},{"omegaRadPerYr":0.0000029055921239641946,"re":1.0991164784154305e-8,"im":-0.00000667040982519229},{"omegaRadPerYr":0.000050117959348442586,"re":-0.000005129825896938048,"im":-0.0000010095666431561402},{"omegaRadPerYr":0.0000389783728602118,"re":-0.000002068034832737985,"im":0.000002775618631657745}]},"anchorE":0.016702435651957018,"anchorPeriEclipticDeg":462.9179213996577,"anchorInclEclipticDeg":0.00010345820355474172,"anchorAscNodeEclipticDeg":140.29217988414328});
|
|
20
20
|
|
|
21
21
|
module.exports = { DEEP_MODES_ARTIFACT, DEEP_MODES_ARTIFACT_HASH };
|