@essrt/physics 4.2.0 → 4.3.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@essrt/physics",
3
- "version": "4.2.0",
3
+ "version": "4.3.0",
4
4
  "description": "ESSRT (Expanding Solar System Resonance Theory) physics core \u2014 pure, injectable-constants, no I/O, no globals, no DOM. The complete model incl. fitted coefficients; every published version immutably ships one recorded model identity.",
5
5
  "essrt": {
6
6
  "modelVersion": "v13.0",
@@ -31,6 +31,7 @@
31
31
  ".": "./src/index.js",
32
32
  "./phase": "./src/phase/index.cjs",
33
33
  "./cardinal": "./src/cardinal/index.cjs",
34
+ "./cardinal/one-source-structure": "./src/cardinal/one-source-structure.cjs",
34
35
  "./moon/ecc-channel": "./src/moon/ecc-channel.cjs",
35
36
  "./moon/deep-ecc-channel": "./src/moon/deep-ecc-channel.cjs",
36
37
  "./moon/deep-modes-artifact": "./src/moon/deep-modes-artifact.cjs",
@@ -49,6 +50,7 @@
49
50
  "./planets/orbit-chain": "./src/planets/orbit-chain.cjs",
50
51
  "./planets/keplerian-chain": "./src/planets/keplerian-chain.cjs",
51
52
  "./planets/inv-plane-frame": "./src/planets/inv-plane-frame.cjs",
53
+ "./planets/secular-series": "./src/planets/secular-series.cjs",
52
54
  "./planets/predict": "./src/planets/predict.cjs",
53
55
  "./planets/model": "./src/planets/model.cjs",
54
56
  "./deltat/cycles": "./src/deltat/cycles.cjs",
@@ -0,0 +1,122 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * ONE-SOURCE CARDINAL STRUCTURE (D4b — plan 02 Stage C/D4).
5
+ *
6
+ * The equation-of-center layer of the cardinal points, driven by the
7
+ * one-source movement's own elements e(t), ϖ(t): the true Sun runs ahead
8
+ * of or behind the mean Sun by the equation of center, so it crosses each
9
+ * cardinal longitude λ_X (VE 0°, SS 90°, AE 180°, WS 270°, equinox of
10
+ * date) early or late by
11
+ *
12
+ * Δt_X(year) = −(T_mean/360°)·EoC(M_X), M_X ≈ λ_X − ϖ(year) − EoC(M_X)
13
+ *
14
+ * and the per-point year length is the EXACT year-over-year difference
15
+ *
16
+ * T_X(year) = T_mean(year+½) + [Δt_X(year+1) − Δt_X(year)]
17
+ *
18
+ * (the difference form, never rate × span — the rate-vs-point rule). The
19
+ * spread of the four T_X around T_mean is ∝ e(t) — ±48 s at e = 0.0167,
20
+ * ±138 s at e = 0.050 — phased by perihelion's passage of each cardinal
21
+ * point (the owner-observed structure; Bromberg's numerical integration
22
+ * reproduced sign-for-sign).
23
+ *
24
+ * VALIDATED against the banked one-source CSV (data/02-solar-measurements
25
+ * .csv, 335,318 measured events per type over the full H window): year
26
+ * lengths close to bias ~1 s / rms ~101 s; the residual is the ecliptic
27
+ * -plane (planetary-precession) term the closed form does not carry.
28
+ * T_mean MUST be supplied in SI seconds — a days-of-date year hides a
29
+ * ~2,400 s LOD-vs-SI bias at −300 kyr (measured).
30
+ *
31
+ * DELIBERATELY NOT HERE: absolute event dates. They need a mean-sun
32
+ * crossing chain, which is a per-renderer concern (the measured ±2–13 min
33
+ * twin-stack split between the browser scene and the Step-6a instrument);
34
+ * the era-certified absolute dates remain the frozen harmonic device
35
+ * (createCardinalModel — the certified era clock).
36
+ *
37
+ * Pure factory: no artifact reads, no registry reads — the caller injects
38
+ * the one-source sampler and the movement's mean tropical year, exactly
39
+ * like createDeepOrbitalHistory injects its surfaces.
40
+ */
41
+
42
+ const D2R = Math.PI / 180;
43
+
44
+ /** Cardinal longitudes, equinox of date. @type {Record<string, number>} */
45
+ const CARDINAL_LONGITUDE_DEG = { VE: 0, SS: 90, AE: 180, WS: 270 };
46
+
47
+ /**
48
+ * Equation of center in degrees, to e⁴ (the computeSunPositionFast family).
49
+ * @param {number} e eccentricity
50
+ * @param {number} meanAnomalyDeg
51
+ * @returns {number} degrees
52
+ */
53
+ function equationOfCenterDeg(e, meanAnomalyDeg) {
54
+ const M = meanAnomalyDeg * D2R;
55
+ const e2 = e * e, e3 = e2 * e, e4 = e3 * e;
56
+ return ((2 * e - e3 / 4) * Math.sin(M)
57
+ + (1.25 * e2 - (11 / 24) * e4) * Math.sin(2 * M)
58
+ + (13 / 12) * e3 * Math.sin(3 * M)
59
+ + (103 / 96) * e4 * Math.sin(4 * M)) / D2R;
60
+ }
61
+
62
+ /**
63
+ * @param {object} opts
64
+ * @param {(year: number) => {e: number, periOfDateDeg: number}} opts.sampleAt
65
+ * the one-source history sampler (createDeepOrbitalHistory build().at,
66
+ * year-keyed by the caller)
67
+ * @param {(year: number) => number} opts.tropicalYearSecondsAtYearFn
68
+ * the movement's mean tropical year of date, SI SECONDS (see header)
69
+ */
70
+ function createCardinalStructure({ sampleAt, tropicalYearSecondsAtYearFn }) {
71
+ if (typeof sampleAt !== 'function' || typeof tropicalYearSecondsAtYearFn !== 'function') {
72
+ throw new Error('createCardinalStructure: sampleAt and tropicalYearSecondsAtYearFn are required');
73
+ }
74
+
75
+ /**
76
+ * Δt_X — the true-sun crossing offset vs the mean sun, SI seconds.
77
+ * Negative when the true sun crosses λ_X early (EoC > 0 at the crossing).
78
+ * @param {number} year epoch (decimal year)
79
+ * @param {'VE'|'SS'|'AE'|'WS'} type
80
+ * @returns {number} seconds
81
+ */
82
+ function eocOffsetSeconds(year, type) {
83
+ const lam = CARDINAL_LONGITUDE_DEG[type];
84
+ if (lam === undefined) throw new Error(`unknown cardinal type: ${type}`);
85
+ const s = sampleAt(year);
86
+ let M = lam - s.periOfDateDeg; // first guess
87
+ M = lam - s.periOfDateDeg - equationOfCenterDeg(s.e, M); // one fixed-point pass
88
+ const T = tropicalYearSecondsAtYearFn(year);
89
+ return -(T / 360) * equationOfCenterDeg(s.e, M);
90
+ }
91
+
92
+ /**
93
+ * T_X — the year length measured between successive passages of the
94
+ * cardinal point, SI seconds (the exact difference form).
95
+ * @param {number} year the interval starts at this year's event
96
+ * @param {'VE'|'SS'|'AE'|'WS'} type
97
+ * @returns {number} seconds
98
+ */
99
+ function yearLengthSeconds(year, type) {
100
+ return tropicalYearSecondsAtYearFn(year + 0.5)
101
+ + eocOffsetSeconds(year + 1, type) - eocOffsetSeconds(year, type);
102
+ }
103
+
104
+ /**
105
+ * The four year lengths minus the mean — the e(t)-proportional spread.
106
+ * @param {number} year
107
+ * @returns {{VE: number, SS: number, AE: number, WS: number, meanSeconds: number}}
108
+ */
109
+ function spreadSeconds(year) {
110
+ const meanSeconds = tropicalYearSecondsAtYearFn(year + 0.5);
111
+ /** @type {any} */
112
+ const out = { meanSeconds };
113
+ for (const type of ['VE', 'SS', 'AE', 'WS']) {
114
+ out[type] = yearLengthSeconds(year, /** @type {'VE'} */(type)) - meanSeconds;
115
+ }
116
+ return out;
117
+ }
118
+
119
+ return { eocOffsetSeconds, yearLengthSeconds, spreadSeconds };
120
+ }
121
+
122
+ module.exports = { createCardinalStructure, equationOfCenterDeg, CARDINAL_LONGITUDE_DEG };
@@ -34,22 +34,36 @@
34
34
  * @param {{
35
35
  * zModes: ReadonlyArray<{omegaRadPerYr: number, re: number, im: number}>,
36
36
  * zetaModes: ReadonlyArray<{omegaRadPerYr: number, re: number, im: number}>,
37
+ * zetaSeries?: {t0Yr: number, stepYr: number,
38
+ * q: ReadonlyArray<number>, p: ReadonlyArray<number>},
39
+ * zSeries?: {t0Yr: number, stepYr: number,
40
+ * q: ReadonlyArray<number>, p: ReadonlyArray<number>},
37
41
  * anchorE: number,
38
42
  * anchorPeriEclipticDeg: number,
39
43
  * anchorInclEclipticDeg: number,
40
44
  * anchorAscNodeEclipticDeg: number,
41
45
  * axialPrecessionYearsJ2000: number,
42
46
  * obliquityJ2000Deg: number,
47
+ * axialPrecessionYearsAtYearFn?: (year: number) => number,
43
48
  * }} deps — mode tables from the governed deep artifact (choose the ζ tier
44
49
  * per consumer: era = its own 8-term extraction, deep = the 16-term
45
50
  * table; NEVER a slice); anchors from the chain artifact's one home; the
46
51
  * axial-precession years and ε₀ from the injecting engine's certified
47
- * surfaces.
52
+ * surfaces. zetaSeries (C-2, the ONE-SOURCE evaluator): the BANKED engine
53
+ * ζ series (data/nbody-earth-zeta-series.json) — when supplied, n̂(t)
54
+ * reads the series itself inside its span (no mode extraction, no tiers;
55
+ * measured at the 500-yr artifact cadence: 0.16″/0.18″ rms vs IAU-2006
56
+ * over 1900–2100/1600–2400 vs the era tier's 0.31″/0.63″, and 0.0396°
57
+ * vs La2004 over −200 kyr vs the deep tier's 0.069° — the C-1 verdict,
58
+ * plan 02) and zetaModes serves only as the TAIL beyond the span (the
59
+ * seam at the span edge is the extraction residual, far outside every
60
+ * certified window).
48
61
  */
49
62
  function createDeepOrbitalHistory({
50
- zModes, zetaModes,
63
+ zModes, zetaModes, zetaSeries, zSeries,
51
64
  anchorE, anchorPeriEclipticDeg, anchorInclEclipticDeg, anchorAscNodeEclipticDeg,
52
65
  axialPrecessionYearsJ2000, obliquityJ2000Deg,
66
+ axialPrecessionYearsAtYearFn,
53
67
  }) {
54
68
  const D2R = Math.PI / 180, R2D = 180 / Math.PI;
55
69
 
@@ -70,10 +84,48 @@ function createDeepOrbitalHistory({
70
84
  return (/** @type {number} */ t) => { const [x, y] = sum(t); return [x + R[0], y + R[1]]; };
71
85
  };
72
86
  const s2h = Math.sin(anchorInclEclipticDeg / 2 * D2R);
73
- const zetaAt = mkAnchored(zetaModes,
87
+ const zetaAnchor = /** @type {[number, number]} */ (
74
88
  [s2h * Math.cos(anchorAscNodeEclipticDeg * D2R), s2h * Math.sin(anchorAscNodeEclipticDeg * D2R)]);
75
- const zAt = mkAnchored(zModes,
89
+ const zetaModeSum = mkAnchored(zetaModes, zetaAnchor);
90
+ // C-2 one-source path: inside the banked series span, n̂(t) reads the
91
+ // engine's own ζ series (anchored at J2000 exactly like the mode sums);
92
+ // outside it, the anchored mode sum is the tail. Without zetaSeries the
93
+ // mode sum serves at every t — the pre-C-2 behavior, bit-identical.
94
+ let zetaAt = zetaModeSum;
95
+ if (zetaSeries) {
96
+ const { t0Yr, stepYr, q: sq, p: sp } = zetaSeries;
97
+ const nS = sq.length, tEndYr = t0Yr + (nS - 1) * stepYr;
98
+ const li = (/** @type {ReadonlyArray<number>} */ arr, /** @type {number} */ tt) => {
99
+ const x = (tt - t0Yr) / stepYr;
100
+ const i = Math.max(0, Math.min(nS - 2, Math.floor(x)));
101
+ const f = x - i;
102
+ return arr[i] * (1 - f) + arr[i + 1] * f;
103
+ };
104
+ const R = [zetaAnchor[0] - li(sq, 0), zetaAnchor[1] - li(sp, 0)];
105
+ zetaAt = (/** @type {number} */ t) => (t >= t0Yr && t <= tEndYr)
106
+ ? [li(sq, t) + R[0], li(sp, t) + R[1]]
107
+ : zetaModeSum(t);
108
+ }
109
+ const zAnchor = /** @type {[number, number]} */ (
76
110
  [anchorE * Math.cos(anchorPeriEclipticDeg * D2R), anchorE * Math.sin(anchorPeriEclipticDeg * D2R)]);
111
+ const zModeSum = mkAnchored(zModes, zAnchor);
112
+ // C-4a: the z-side one-source path — same construction as zetaSeries
113
+ // (anchored engine series inside the span, anchored mode sum as the tail).
114
+ let zAt = zModeSum;
115
+ if (zSeries) {
116
+ const { t0Yr, stepYr, q: sq, p: sp } = zSeries;
117
+ const nS = sq.length, tEndYr = t0Yr + (nS - 1) * stepYr;
118
+ const li = (/** @type {ReadonlyArray<number>} */ arr, /** @type {number} */ tt) => {
119
+ const x = (tt - t0Yr) / stepYr;
120
+ const i = Math.max(0, Math.min(nS - 2, Math.floor(x)));
121
+ const f = x - i;
122
+ return arr[i] * (1 - f) + arr[i + 1] * f;
123
+ };
124
+ const R = [zAnchor[0] - li(sq, 0), zAnchor[1] - li(sp, 0)];
125
+ zAt = (/** @type {number} */ t) => (t >= t0Yr && t <= tEndYr)
126
+ ? [li(sq, t) + R[0], li(sp, t) + R[1]]
127
+ : zModeSum(t);
128
+ }
77
129
 
78
130
  /** @param {number} t */
79
131
  const inclNode = (t) => {
@@ -89,13 +141,25 @@ function createDeepOrbitalHistory({
89
141
  const psiDot = (2 * Math.PI) / axialPrecessionYearsJ2000;
90
142
  const EPS0 = obliquityJ2000Deg * D2R;
91
143
  const ALPHA = psiDot / Math.cos(EPS0);
144
+ // D1-revised (plan 02, owner 2026-09-13): when the injecting engine
145
+ // supplies its epoch-aware axial-precession evaluator, α follows the
146
+ // model's own H(t) recession history — α(t) = ψ̇(t)/cos ε₀ — and the
147
+ // integrated deep-time obliquity IS the sharpened falsification-leg-1
148
+ // form (the beat 2π/(ψ̇(t) − |s₃|), p H-scaled, s₃ dynamical). No new
149
+ // constants: ψ̇(t) comes from the same certified year-length machinery
150
+ // as the J2000 anchor. Absent the option, α stays constant (the
151
+ // pre-D1 ±Myr-class behavior, bit-identical).
152
+ const alphaAt = axialPrecessionYearsAtYearFn
153
+ ? (/** @type {number} */ t) =>
154
+ ((2 * Math.PI) / axialPrecessionYearsAtYearFn(2000 + t)) / Math.cos(EPS0)
155
+ : () => ALPHA;
92
156
 
93
157
  const cross = (/** @type {number[]} */ a, /** @type {number[]} */ b) =>
94
158
  [a[1] * b[2] - a[2] * b[1], a[2] * b[0] - a[0] * b[2], a[0] * b[1] - a[1] * b[0]];
95
159
  const dot = (/** @type {number[]} */ a, /** @type {number[]} */ b) => a[0] * b[0] + a[1] * b[1] + a[2] * b[2];
96
160
  const deriv = (/** @type {number[]} */ s, /** @type {number} */ t) => {
97
161
  const n = orbitNormal(t);
98
- const k = ALPHA * dot(s, n);
162
+ const k = alphaAt(t) * dot(s, n);
99
163
  const c = cross(s, n);
100
164
  return [k * c[0], k * c[1], k * c[2]];
101
165
  };
@@ -145,22 +209,41 @@ function createDeepOrbitalHistory({
145
209
  */
146
210
  function build(t0Yr, t1Yr, stepYr) {
147
211
  const tMin = Math.min(t0Yr, t1Yr, 0), tMax = Math.max(t0Yr, t1Yr, 0);
212
+ // D1 stepping contract: a build reaching beyond the ±50-kyr fine zone
213
+ // integrates at 250-yr steps there, so its grid must be 250-aligned or
214
+ // at() would meet missing keys. Fail loud, not subtly coarse.
215
+ if (Math.max(Math.abs(tMin), Math.abs(tMax)) > 50000 && stepYr % 250 !== 0) {
216
+ throw new Error(`deep-orbital-history: builds beyond ±50 kyr need stepYr % 250 === 0 (got ${stepYr})`);
217
+ }
148
218
  const grid = new Map();
149
219
  const S0 = [0, Math.sin(EPS0), Math.cos(EPS0)];
150
- const H_STEP = 5;
220
+ // D1-revised adaptive stepping: 5-yr RK4 near the era (the certified-
221
+ // precision zone), 250-yr beyond ±50 kyr — still 103 steps per
222
+ // precession cycle and ≥196 samples of the fastest ζ mode (49 kyr), so
223
+ // the integration stays deep in RK4's convergence regime while ±500 Myr
224
+ // becomes a seconds-class one-time build (measured: coarse-vs-fine
225
+ // agree to <1e-4° at ±1 Myr — the generator's regression gate).
226
+ // STRICT < so the walk switches AT the ±50,000 boundary (50,000 is
227
+ // 250-aligned; switching one fine-step later would leave the coarse walk
228
+ // permanently off-grid — measured: every key beyond ±50 kyr missing).
229
+ const hStepAt = (/** @type {number} */ t) => (Math.abs(t) < 50000 ? 5 : 250);
151
230
  for (const dir of [-1, +1]) {
152
231
  let s = S0, t = 0;
153
232
  grid.set(0, sampleAt(s, 0));
154
233
  const end = dir < 0 ? tMin : tMax;
155
234
  while (dir < 0 ? t > end : t < end) {
235
+ const H_STEP = hStepAt(t);
156
236
  s = rk4(s, t, dir * H_STEP);
157
237
  t += dir * H_STEP;
158
- // Store ONLY at true step multiples: an end-of-range sample under a
159
- // ROUNDED key collides with a real grid node (measured during C-3:
160
- // build(+200, …, 1000) stored ε(+200) under key 0, clobbering the
161
- // t = 0 sample by 94 the verdict generator's rms caught it).
162
- // Partial edge segments are covered by at()'s a-side fallback.
163
- if (Math.abs(t % stepYr) < H_STEP / 2) grid.set(Math.round(t / stepYr) * stepYr, sampleAt(s, t));
238
+ // Store ONLY at EXACT step multiples: an off-grid sample under a
239
+ // ROUNDED key collides with (or shifts) a real grid node (measured
240
+ // during C-3: build(+200, …, 1000) stored ε(+200) under key 0,
241
+ // clobbering the t = 0 sample by 94″; and the D1 variable step made
242
+ // the old |t % stepYr| < H_STEP/2 window store 250-yr samples under
243
+ // 100-yr keys, 50 yr off). Exact alignment is guaranteed by the
244
+ // guard below (coarse builds use 250-aligned grids; the 50,000-yr
245
+ // zone boundary is itself 250-aligned, so the walk stays on-grid).
246
+ if (Math.abs(t - Math.round(t / stepYr) * stepYr) < 1e-6) grid.set(Math.round(t / stepYr) * stepYr, sampleAt(s, t));
164
247
  }
165
248
  }
166
249
  return {
package/src/index.js CHANGED
@@ -100,6 +100,11 @@ export { createDerivedViews } from './layer1/index.js';
100
100
  // re-exported here so bundled ESM consumers need only the package root).
101
101
  export { createPhaseMachinery } from './phase/index.cjs';
102
102
  export { createCardinalModel } from './cardinal/index.cjs';
103
+ // D4b: the one-source cardinal structure — the EoC layer (year lengths,
104
+ // crossing offsets, the e(t)-proportional spread) on the movement's own
105
+ // e(t)/ϖ(t). Absolute dates deliberately excluded (per-renderer mean chain);
106
+ // the frozen createCardinalModel stays the certified era device.
107
+ export { createCardinalStructure } from './cardinal/one-source-structure.cjs';
103
108
  // Phase 8.2 — the lunar machinery, extracted layer by layer (survey order:
104
109
  // eccentricity channel → month chain → cycle tables → arguments → series →
105
110
  // apparent). Same CJS + root re-export convention.
@@ -121,6 +126,7 @@ export * as planetOrbitChain from './planets/orbit-chain.cjs';
121
126
  // governed artifact; the browser flag path consumes exactly these).
122
127
  export { buildPlanetChainsFromArtifactData, computePlanetElementsAtYear, computeHeliocentricEclipticFromElements, computePoissonArgRad, computeOsculatingElements, solveKeplerRad, ANCHOR_EPOCH_YEAR, ANCHOR_EPOCH_JD } from './planets/keplerian-chain.cjs';
123
128
  export { computeEquatorNodeOriginSFrameDeg, convertNodeSFrameToEquatorOriginDeg } from './planets/inv-plane-frame.cjs';
129
+ export { createSecularSeriesOverride } from './planets/secular-series.cjs';
124
130
  export { CHAIN_ARTIFACT, CHAIN_ARTIFACT_HASH } from './planets/chain-artifact.js';
125
131
  // Engine-switch Stage B, T5d-(d): the deep-time Earth-z channel (the deep
126
132
  // lunar-chain modulation rides it; era consumers stay on the H/3 channel).
package/src/model.js CHANGED
@@ -22,6 +22,9 @@ 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 { createCardinalStructure } from './cardinal/one-source-structure.cjs';
26
+ import { createDeepOrbitalHistory } from './earth/deep-orbital-history.cjs';
27
+ import { CHAIN_ARTIFACT } from './planets/chain-artifact.js';
25
28
  import { createDeltaTCycles } from './deltat/cycles.cjs';
26
29
  import { createDeepTimeLod } from './deltat/deep-time.cjs';
27
30
  import { createMoonRecessionHistory, createSolarChannelBudget } from './deltat/recession-history.cjs';
@@ -453,6 +456,50 @@ export function assembleModel(C, F, laws = {}) {
453
456
  eccentricityRateAt,
454
457
  },
455
458
  });
459
+ // ── One-source cardinal structure (D4b) ───────────────────────────────────
460
+ // The EoC layer (year lengths, crossing offsets, the e(t)-proportional
461
+ // spread) on the one-source movement's own e(t)/ϖ(t) — the MODE tier (the
462
+ // package's embedded deep-modes artifact; the banked-series tier is the
463
+ // repo-data-bound instrument). Absolute dates deliberately absent — see
464
+ // cardinal/one-source-structure.cjs. The mean year is SI SECONDS: the
465
+ // sidereal year of date reduced by the SECULAR α(H(t)) equinox precession
466
+ // (axial0·H(t)/H0 — the movement's leg-1 convention, NOT the H/13
467
+ // kinematic identity; the two are a recorded 0.09% relation tension).
468
+ const cardinalStructureM = (() => {
469
+ const AEarth = /** @type {any} */ (CHAIN_ARTIFACT).j2000AnchorElements.earth;
470
+ const axial0 = meanSiderealYearDays / (meanSiderealYearDays - meanSolarYearDays);
471
+ const H0 = /** @type {number} */ (deepLod.hAtAge(0));
472
+ const hist = createDeepOrbitalHistory({
473
+ zModes: DEEP_MODES_ARTIFACT.earthZ,
474
+ zetaModes: DEEP_MODES_ARTIFACT.earthZeta,
475
+ anchorE: AEarth.e,
476
+ anchorPeriEclipticDeg: AEarth.lonPeriEclipticDeg,
477
+ anchorInclEclipticDeg: AEarth.inclEclipticDeg,
478
+ anchorAscNodeEclipticDeg: AEarth.ascNodeEclipticDeg,
479
+ axialPrecessionYearsJ2000: axial0,
480
+ obliquityJ2000Deg: obliquityDeg(2000),
481
+ axialPrecessionYearsAtYearFn: (yr) => {
482
+ const h = deepLod.hAtAge((startmodelYear - yr) / 1e6);
483
+ return axial0 * (h === null ? 1 : h / H0);
484
+ },
485
+ });
486
+ // grown-grid sampler, tier-filling (the measured rebuild-storm fix)
487
+ let sampler = /** @type {any} */ (null), rangeYr = 0;
488
+ const gridStep = (/** @type {number} */ n) => (n <= 50000 ? 100 : n <= 2000000 ? 1000 : 5000);
489
+ const tierSpan = (/** @type {number} */ n) => (n <= 50000 ? 50000 : n <= 2000000 ? 2000000 : Math.ceil(n * 1.25 / 5000) * 5000);
490
+ const sampleAt = (/** @type {number} */ year) => {
491
+ const t = year - 2000, need = Math.max(20000, Math.abs(t) * 1.25);
492
+ if (!sampler || need > rangeYr) { rangeYr = tierSpan(need); sampler = hist.build(rangeYr, -rangeYr, gridStep(rangeYr)); }
493
+ return sampler.at(t);
494
+ };
495
+ const tropicalYearSecondsAtYearFn = (/** @type {number} */ year) => {
496
+ const tMa = (startmodelYear - year) / 1e6;
497
+ const h = deepLod.hAtAge(tMa);
498
+ return deepLod.siderealYearSecondsAtAge(tMa) * (1 - 1 / (axial0 * (h === null ? 1 : h / H0)));
499
+ };
500
+ return createCardinalStructure({ sampleAt, tropicalYearSecondsAtYearFn });
501
+ })();
502
+
456
503
  /** Tropical year: mean of the four cardinal intervals. @param {number} year @returns {number} */
457
504
  const tropicalYearDays = (year) => cardinalM.computeTropicalYearLength(year);
458
505
  /** @param {number} year @returns {number} */
@@ -1120,6 +1167,15 @@ export function assembleModel(C, F, laws = {}) {
1120
1167
  },
1121
1168
  yearLengthDays: /** @param {number} year @param {string} type @returns {number} */ (year, type) => cardinalM.computeSolsticeYearLength(year, type),
1122
1169
  }),
1170
+ // D4b: the one-source cardinal STRUCTURE — the EoC layer on the
1171
+ // movement's own e(t)/ϖ(t), valid at every epoch (mode tier). Absolute
1172
+ // dates deliberately absent; `cardinal` above stays the certified era
1173
+ // device for those.
1174
+ cardinalStructure: Object.freeze({
1175
+ yearLengthSeconds: /** @param {number} year @param {'VE'|'SS'|'AE'|'WS'} type @returns {number} */ (year, type) => cardinalStructureM.yearLengthSeconds(year, type),
1176
+ eocOffsetSeconds: /** @param {number} year @param {'VE'|'SS'|'AE'|'WS'} type @returns {number} */ (year, type) => cardinalStructureM.eocOffsetSeconds(year, type),
1177
+ spreadSeconds: /** @param {number} year */ (year) => cardinalStructureM.spreadSeconds(year),
1178
+ }),
1123
1179
  moon: Object.freeze({
1124
1180
  distanceKmAtYear: /** @param {number} year @returns {number} */ (year) => moonDistanceMetresAtAge(yearToTMa(year)) / 1000,
1125
1181
  siderealMonthDaysAtYear: moonSiderealMonthDaysAt,
@@ -6,14 +6,16 @@
6
6
  * Earth-z mode table, engine-switch Stage B), earth z-modes + verdict
7
7
  * emitted VERBATIM, plus the J2000 anchor pair (e, ϖ) joined from
8
8
  * data/nbody-secular-frequencies.json j2000AnchorElements.earth — the
9
- * anchor's ONE home. Two gates guard the chain: check:artifacts pins
10
- * artifact engine; generate.mjs check mode pins this embed artifact.
9
+ * anchor's ONE home, plus the per-planet leading proper ζ modes (″/yr,
10
+ * the C-4 s-lines for the zoom labels doc 109 §19). Two gates guard
11
+ * the chain: check:artifacts pins artifact ↔ engine; generate.mjs
12
+ * check mode pins this embed ↔ artifact.
11
13
  * CJS because the lunar-chain consumers are CommonJS modules.
12
14
  */
13
15
  'use strict';
14
16
 
15
17
  const DEEP_MODES_ARTIFACT_HASH = "b74be2d9b00a3460";
16
18
 
17
- 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}],"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":"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});
18
20
 
19
21
  module.exports = { DEEP_MODES_ARTIFACT, DEEP_MODES_ARTIFACT_HASH };
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  /** @type {string} */
14
- export const CHAIN_ARTIFACT_HASH = "ac23b3048f0fd06f";
14
+ export const CHAIN_ARTIFACT_HASH = "a2ee43bc9815f316";
15
15
 
16
16
  /** @type {Readonly<Record<string, unknown>>} */
17
- export const CHAIN_ARTIFACT = Object.freeze({"_description":"Engine-D secular frequencies from the model’s own N-body pipeline (WH 1-Myr, 1PN on, NAFF), the 1800–2100 window rates (B), the Keplerian chain’s governed inputs (K2.1/P5: windowElementRates + j2000AnchorElements — era-typed window values and the t=0 anchor, the chain’s ONE home), the derived instantaneous 1PN apsidal supplement, and the K4.5/K4.7b derived periodic-term layer (periodicTerms: λ̄/a/z/ζ lines + era window affine, engine-measured — tools/explore/k45e-amplitude-solve.mjs). Frames: g ecliptic-J2000 z-modes, s INVARIABLE-plane ζ-modes. Laskar 2004 values are external reference labels (theory), never inputs. See tools/verify/nbody-secular.js for the assertions carried.","meta":{"integrator":"wh","order":2,"dtDays":2,"spanYears":1000000,"sampleDays":1000,"gr":true,"seed":"JPL Horizons J2000 heliocentric state vectors (tools/explore/j2000-state.mjs, the one home)","masses":"DE440 mass ratios (astro-reference physicalConstants)","naffTerms":8,"windowYears":[1800,2100],"laskarRef":"Laskar, J. et al. (2004), A&A 428, 261–285, Table 3","conservationMaxDE":1.1113907520896154e-8,"note1PN":"Mercury eigen-level 1PN shift ≈ +0.473 ″/yr (cycle-average of 1/(1−e²)) vs +0.430 instantaneous — not a discrepancy; only the instantaneous value is asserted (P8b).","periodicTermsMethod":"k45e era-centered LSQ (self-seeded prewhitening, golden-refined frequencies; K4.7b)","periodicTermsSpanYr":2500,"periodicTermsCadenceYr":0.1},"g":{"mercury":{"arcsecPerYr":5.575712797823945,"amplitude":0.17545096694269685,"nearestLaskar":{"mode":"g1","arcsecPerYr":5.5965}},"venus":{"arcsecPerYr":7.405845742227483,"amplitude":0.022570769830788477,"nearestLaskar":{"mode":"g2","arcsecPerYr":7.4555}},"earth":{"arcsecPerYr":4.346410041032439,"amplitude":0.019341964493845513,"nearestLaskar":{"mode":"g5","arcsecPerYr":4.2575}},"mars":{"arcsecPerYr":17.916696630844026,"amplitude":0.08882914197372903,"nearestLaskar":{"mode":"g4","arcsecPerYr":17.9159}},"jupiter":{"arcsecPerYr":4.256769523195223,"amplitude":0.044182672664934045,"nearestLaskar":{"mode":"g5","arcsecPerYr":4.2575}},"saturn":{"arcsecPerYr":28.245581358956457,"amplitude":0.04819349426795283,"nearestLaskar":{"mode":"g6","arcsecPerYr":28.2455}},"uranus":{"arcsecPerYr":3.921148698318919,"amplitude":0.0332189082697614,"nearestLaskar":{"mode":"g5","arcsecPerYr":4.2575}},"neptune":{"arcsecPerYr":0.6065154396549126,"amplitude":0.009569000717364112,"nearestLaskar":{"mode":"g8","arcsecPerYr":0.673}}},"s":{"mercury":{"arcsecPerYr":-5.586173808637174,"amplitude":0.059409340430501154,"nearestLaskar":{"mode":"s1","arcsecPerYr":-5.6197}},"venus":{"arcsecPerYr":-18.3363903851603,"amplitude":0.013576723462640201,"nearestLaskar":{"mode":"s3","arcsecPerYr":-18.8506}},"earth":{"arcsecPerYr":-18.39611848918824,"amplitude":0.01184463735421656,"nearestLaskar":{"mode":"s3","arcsecPerYr":-18.8506}},"mars":{"arcsecPerYr":-17.545402434182556,"amplitude":0.021473581268835227,"nearestLaskar":{"mode":"s4","arcsecPerYr":-17.7553}},"jupiter":{"arcsecPerYr":-26.347747510182444,"amplitude":0.0031511446932465333,"nearestLaskar":{"mode":"s6","arcsecPerYr":-26.3475}},"saturn":{"arcsecPerYr":-26.34770515585438,"amplitude":0.007853480398801458,"nearestLaskar":{"mode":"s6","arcsecPerYr":-26.3475}},"uranus":{"arcsecPerYr":-2.999782557988895,"amplitude":0.008744980387074497,"nearestLaskar":{"mode":"s7","arcsecPerYr":-2.9927}},"neptune":{"arcsecPerYr":-0.7119237190344891,"amplitude":0.005960579851589255,"nearestLaskar":{"mode":"s8","arcsecPerYr":-0.6919}}},"secularModes":{"mercury":{"z":[{"omegaRadPerYr":0.000027031818463225768,"re":0.0061578259451980115,"im":0.17534287262605214},{"omegaRadPerYr":0.00003762575562965475,"re":0.022801391439964295,"im":0.008306970885650663},{"omegaRadPerYr":0.00001819756010161927,"re":0.019634392385947316,"im":0.014089365629220058},{"omegaRadPerYr":0.000011448057114609211,"re":-0.005593515523159691,"im":-0.0029052231145468826},{"omegaRadPerYr":0.00004414416237516322,"re":-0.0058059195322990535,"im":-0.0014204432190273834}],"zeta":[{"omegaRadPerYr":-0.000027080770518521117,"re":0.058209232182515294,"im":0.011937299831838749},{"omegaRadPerYr":-0.00003532228218977498,"re":0.004745715778503308,"im":0.009067515752921801},{"omegaRadPerYr":6.775714890718091e-8,"re":-0.0039039071253357234,"im":0.013489752627573397},{"omegaRadPerYr":-0.000014531803306709756,"re":-0.0027805829079540424,"im":0.001873307195814228},{"omegaRadPerYr":-0.00008871641521465394,"re":-0.00011206141890946473,"im":-0.0024785290535285108},{"omegaRadPerYr":-0.00004086484773308675,"re":-0.0009298161832617493,"im":0.0013601243172003264},{"omegaRadPerYr":-0.0000320673476361423,"re":-0.013260807519741909,"im":0.010385681846746578}]},"venus":{"z":[{"omegaRadPerYr":0.000035904553360186896,"re":-0.0211984643558249,"im":-0.007750145786322514},{"omegaRadPerYr":0.000021373474422862907,"re":0.016886761236088624,"im":0.011238461694226397},{"omegaRadPerYr":0.0000891126674473552,"re":0.0050874946506860065,"im":-0.005109367673184332},{"omegaRadPerYr":0.00002871637284884016,"re":-0.0017393876896891237,"im":0.005587660035943027},{"omegaRadPerYr":0.0000799342923050964,"re":-0.0044448366327981305,"im":-0.0000503440797393948},{"omegaRadPerYr":0.000012541690188563,"re":0.0004535723363856848,"im":0.0009117376424311817}],"zeta":[{"omegaRadPerYr":-0.00008889595040236661,"re":0.0014429354865157266,"im":0.013492668736937167},{"omegaRadPerYr":-2.9208356071391507e-8,"re":-0.0038419612953034085,"im":0.01343833962446885},{"omegaRadPerYr":-0.000027486544944080902,"re":0.008423422326469315,"im":0.0009256786850090009},{"omegaRadPerYr":-0.000035402171418589797,"re":0.0007435050926828158,"im":-0.0028971907452019956},{"omegaRadPerYr":-0.0000816605133107709,"re":-0.0010567171844393416,"im":0.0017536585345055515},{"omegaRadPerYr":-0.00009527377513796924,"re":0.001562527173160095,"im":0.00142794192883987},{"omegaRadPerYr":-0.000022714283438616226,"re":0.0006900663832152563,"im":0.0009409483713469917},{"omegaRadPerYr":-0.000012901293108561725,"re":-0.0007909153616483306,"im":0.0007730683997926797}]},"earth":{"z":[{"omegaRadPerYr":0.000021071990516043863,"re":0.016301183796398024,"im":0.010410715504576574},{"omegaRadPerYr":0.000035854880135688966,"re":-0.016689300824841616,"im":-0.00587694407980285},{"omegaRadPerYr":0.00008867935711133655,"re":-0.006205359589321793,"im":0.0059045379227095785},{"omegaRadPerYr":0.00007976873965068339,"re":0.003442662776173624,"im":0.00018161801434096533},{"omegaRadPerYr":0.000028440629463153055,"re":-0.0007693818323351555,"im":0.0036759836693912766},{"omegaRadPerYr":0.0001368996733554364,"re":-0.0008112549290125483,"im":0.0011800841029160098}],"zeta":[{"omegaRadPerYr":-2.789132719584616e-8,"re":-0.003980175066603849,"im":0.01346535718722163},{"omegaRadPerYr":-0.00008918684866422754,"re":-0.0017818272301117842,"im":-0.01171473788270621},{"omegaRadPerYr":-0.000027565953011645597,"re":0.005837345967007995,"im":0.0005767264828698533},{"omegaRadPerYr":-0.000035436881992393566,"re":0.0005316599469742484,"im":-0.002298310523068399},{"omegaRadPerYr":-0.00012766579969759884,"re":-0.0006080730450000734,"im":0.0011811620431347754},{"omegaRadPerYr":-0.00008175633290332968,"re":0.0008468767179477169,"im":-0.0014453751935461902},{"omegaRadPerYr":-0.00009544829395201416,"re":-0.0013543922729998166,"im":-0.0011678254911581005},{"omegaRadPerYr":-0.000022618656478089485,"re":0.0008212474154199974,"im":0.0007376186464093101}]},"mars":{"z":[{"omegaRadPerYr":0.00008686259646922313,"re":0.06413361286031954,"im":-0.061461338785219796},{"omegaRadPerYr":0.000020710599293705756,"re":0.0168815770314768,"im":0.010181016750981363},{"omegaRadPerYr":0.00013701274439308748,"re":-0.004154546031788784,"im":0.0052484404204072264},{"omegaRadPerYr":0.00007830364627518509,"re":0.006610030627920962,"im":0.00716773876788036},{"omegaRadPerYr":0.0000967464223286991,"re":0.00669811842776162,"im":-0.0005917424234258758},{"omegaRadPerYr":0.00003622387429863297,"re":-0.0037118530783633074,"im":-0.001197130016454561},{"omegaRadPerYr":0.00007107828755070232,"re":-0.0030272556571569256,"im":-0.0021089438693236047}],"zeta":[{"omegaRadPerYr":-0.00008506290699879281,"re":0.007775523866870005,"im":-0.02001096343618598},{"omegaRadPerYr":-0.00009339911610380382,"re":0.009574153430346467,"im":0.01499249567600023},{"omegaRadPerYr":-2.1361701870262538e-8,"re":-0.003652982290513836,"im":0.013619195708169822},{"omegaRadPerYr":-0.00012775359218502626,"re":-0.0023045039444621073,"im":0.0035319422124707343},{"omegaRadPerYr":-0.00007647491607131078,"re":0.0003559447186960134,"im":0.00225681738420922},{"omegaRadPerYr":-0.00009952035224595763,"re":-0.002686141523001369,"im":-0.0032247663817401412}]},"jupiter":{"z":[{"omegaRadPerYr":0.000020637401021751606,"re":0.03775130376392058,"im":0.022955339856793808},{"omegaRadPerYr":0.0001369384796979771,"re":0.009695326488717567,"im":-0.012378818304894155},{"omegaRadPerYr":0.00001285183951543766,"re":-0.0008196553575553386,"im":0.0013298147968340598},{"omegaRadPerYr":0.0002532450446505381,"re":0.00041541273181667615,"im":0.0003999550758746959},{"omegaRadPerYr":0.000006063027991986138,"re":0.00018743032373578906,"im":-0.0002594778854773961},{"omegaRadPerYr":0.000031414566802098374,"re":-0.00014101517848288215,"im":0.00024144519615503003}],"zeta":[{"omegaRadPerYr":-2.1490404832806168e-8,"re":-0.0036895385366188783,"im":0.013265898846260308},{"omegaRadPerYr":-0.0001277374796658874,"re":0.0018884354550522274,"im":-0.00251606466916287},{"omegaRadPerYr":-0.000015175434386812629,"re":-0.0004021019571492075,"im":0.0003117907932519991},{"omegaRadPerYr":-0.000006632717903107953,"re":0.0003009472423168709,"im":0.0001317099906824581},{"omegaRadPerYr":0.000003955724900485721,"re":-0.0002689226108809528,"im":2.564175400368284e-7},{"omegaRadPerYr":-0.000020525770532327617,"re":0.00010370417805463956,"im":-0.000024424616444032364}]},"saturn":{"z":[{"omegaRadPerYr":0.0001369384427371457,"re":-0.02960653952726686,"im":0.03802717064120847},{"omegaRadPerYr":0.00002063674100262723,"re":0.028150073232470787,"im":0.01709774750149962},{"omegaRadPerYr":0.00025324837081694125,"re":-0.0013606989653353102,"im":-0.0013821126035298548},{"omegaRadPerYr":0.000012847385779998076,"re":-0.0006853047928644228,"im":0.0011218181664192914},{"omegaRadPerYr":0.00012770394549879298,"re":0.00030532747308216533,"im":0.00020649598646880408},{"omegaRadPerYr":0.00014631533310756968,"re":0.0002679684896809784,"im":0.00022796694930874033},{"omegaRadPerYr":-0.00009568507237176567,"re":-0.000049572612945519304,"im":0.00011688249888045971}],"zeta":[{"omegaRadPerYr":-1.9284984538258004e-8,"re":-0.003708721248959303,"im":0.013267262775914458},{"omegaRadPerYr":-0.0001277372896899594,"re":-0.00473585842558015,"im":0.006270978893125488},{"omegaRadPerYr":-0.000015325638313367067,"re":-0.000342091983477944,"im":0.0002459194020261331},{"omegaRadPerYr":-0.0000065831107802777746,"re":0.0002849200201049732,"im":0.00012107400921002766},{"omegaRadPerYr":0.000003999922886015977,"re":-0.00025809587923422754,"im":-0.000010818807501830861},{"omegaRadPerYr":-0.000020373996231109695,"re":0.00011127740663504409,"im":-0.00002191187386888525}]},"uranus":{"z":[{"omegaRadPerYr":0.000019010265346098605,"re":-0.033200286080063916,"im":0.0011121469492544251},{"omegaRadPerYr":0.000012033775574177009,"re":-0.008077561115556027,"im":0.02293125999571007},{"omegaRadPerYr":0.000023775733149813484,"re":-0.008710621833115826,"im":-0.016095355591969604},{"omegaRadPerYr":0.000007822007075432675,"re":0.0016021840612059168,"im":-0.009621969113692156},{"omegaRadPerYr":0.00002952547228417886,"re":0.0016566445996550965,"im":0.006018707505057967},{"omegaRadPerYr":0.00013694007244464723,"re":0.0009292339240691288,"im":-0.0016372467645427197}],"zeta":[{"omegaRadPerYr":7.599421366412143e-8,"re":-0.004660490353585718,"im":0.01324646340758287},{"omegaRadPerYr":-0.000014567449496838837,"re":0.006613328514408994,"im":-0.005878235417711313},{"omegaRadPerYr":-0.000007051181231496491,"re":-0.0004558064482609971,"im":-0.00031393562385899923},{"omegaRadPerYr":0.000003329914022932244,"re":0.0003411959761619822,"im":-0.0003305440071371085},{"omegaRadPerYr":-0.0001277295137673612,"re":0.00021735572403603482,"im":-0.00029463734768672754},{"omegaRadPerYr":-0.00002335403426632458,"re":-0.00006477073255467024,"im":-0.00008547519620498973}]},"neptune":{"z":[{"omegaRadPerYr":0.0000029404698294886683,"re":0.002583276204603991,"im":0.009213710369858697},{"omegaRadPerYr":0.000015819958189246093,"re":0.002410719467240076,"im":-0.0028958675920111618},{"omegaRadPerYr":0.00002325097119532629,"re":0.001159396623354508,"im":0.001106111966705049},{"omegaRadPerYr":-0.0000035890886114523422,"re":-0.00020879605377416773,"im":-0.0006167290950842672},{"omegaRadPerYr":0.000030374670292163826,"re":-0.0002774301776095828,"im":-0.0002388641303570229}],"zeta":[{"omegaRadPerYr":-3.301733513849372e-7,"re":-0.008762838168102518,"im":0.010494876534409803},{"omegaRadPerYr":-0.000007353421929989998,"re":-0.0024807316856027294,"im":-0.0014503561615380218},{"omegaRadPerYr":0.000004080233598697059,"re":0.0018281727993976064,"im":0.002054509738245118},{"omegaRadPerYr":-0.000014881778065736648,"re":-0.00013356695251210882,"im":0.0011500105634289276},{"omegaRadPerYr":0.00001160480877156738,"re":-0.0005630431963197903,"im":-0.0005345014452666219},{"omegaRadPerYr":-0.000020788597979173094,"re":-0.0005111003177756488,"im":-0.00044451839396914716}]}},"windowRatesArcsecCy":{"gr":{"mercury":572.0163954148283,"venus":22.72580010599836,"earth":1154.4288756665303,"mars":1597.8081246982024,"jupiter":488.52901897634354,"saturn":-1576.6419790262526,"uranus":806.6031271547791,"neptune":9101.672820143169},"newton":{"mercury":529.0318184207404,"venus":14.090631090521121,"earth":1150.5947011086469,"mars":1596.4568002639046,"jupiter":488.4665375503103,"saturn":-1576.655982201358,"uranus":806.6007460587327,"neptune":9101.678202054029}},"windowElementRates":{"mercury":{"meanMotionDegPerYr":1494.7257434850626,"nodeRateArcsecCy":-451.23114506979533,"eccDotPerCy":0.000020426777739608027,"inclDotArcsecCy":-21.43063243338586},"venus":{"meanMotionDegPerYr":585.1779096296486,"nodeRateArcsecCy":-1000.3062148126329,"eccDotPerCy":-0.00004798428729899649,"inclDotArcsecCy":-2.9741785335138227},"earth":{"meanMotionDegPerYr":359.9936510408777,"nodeRateArcsecCy":287648.7600662079,"eccDotPerCy":-0.00004200482595462892,"inclDotArcsecCy":-22.64742397865307},"mars":{"meanMotionDegPerYr":191.40299923220516,"nodeRateArcsecCy":-1059.1798892427676,"eccDotPerCy":0.0000917178876575738,"inclDotArcsecCy":-29.268508116285304},"jupiter":{"meanMotionDegPerYr":30.347302970895168,"nodeRateArcsecCy":724.7057759408735,"eccDotPerCy":-0.0000876138498378255,"inclDotArcsecCy":-7.070016683580993},"saturn":{"meanMotionDegPerYr":12.225441692771112,"nodeRateArcsecCy":-1041.0659036365291,"eccDotPerCy":-0.00027446940576446793,"inclDotArcsecCy":8.397686122084723},"uranus":{"meanMotionDegPerYr":4.284939547595869,"nodeRateArcsecCy":114.5093750648986,"eccDotPerCy":-0.00009620843043291943,"inclDotArcsecCy":-8.163218561711115},"neptune":{"meanMotionDegPerYr":2.184556718701332,"nodeRateArcsecCy":-12.96633501054956,"eccDotPerCy":0.00038317519496411644,"inclDotArcsecCy":1.294056435039746}},"j2000AnchorElements":{"mercury":{"aAU":0.3870982306507114,"e":0.20563023607048908,"inclEclipticDeg":7.005014303274938,"ascNodeEclipticDeg":48.33053855197437,"lonPeriEclipticDeg":77.45482144099158,"meanLonEclipticDeg":252.25070308850388},"venus":{"aAU":0.723326980236553,"e":0.006755832524369414,"inclEclipticDeg":3.3945896490801655,"ascNodeEclipticDeg":76.67837411646671,"lonPeriEclipticDeg":131.86481574575365,"meanLonEclipticDeg":181.97911300917644},"earth":{"aAU":0.9999965019964896,"e":0.016702435651957018,"inclEclipticDeg":0.00010345820355474172,"ascNodeEclipticDeg":140.29217988414328,"lonPeriEclipticDeg":462.9179213996577,"meanLonEclipticDeg":100.46313620647612},"mars":{"aAU":1.5236791234560592,"e":0.09331517469683501,"inclEclipticDeg":1.8498764556630205,"ascNodeEclipticDeg":49.56200645402683,"lonPeriEclipticDeg":336.0994054433697,"meanLonEclipticDeg":355.4558712806536},"jupiter":{"aAU":5.204267043121455,"e":0.04877494875045604,"inclEclipticDeg":1.304625372772227,"ascNodeEclipticDeg":100.49162135259076,"lonPeriEclipticDeg":375.5576634246116,"meanLonEclipticDeg":34.37610122976946},"saturn":{"aAU":9.582017927199528,"e":0.05572345073837687,"inclEclipticDeg":2.4852504409844323,"ascNodeEclipticDeg":113.64296212519966,"lonPeriEclipticDeg":449.65653541437854,"meanLonEclipticDeg":50.00443784290724},"uranus":{"aAU":19.22941789809548,"e":0.04440546894120367,"inclEclipticDeg":0.7725675263742898,"ascNodeEclipticDeg":73.98941630128037,"lonPeriEclipticDeg":170.53113765495846,"meanLonEclipticDeg":313.4868371274142},"neptune":{"aAU":30.103641823294048,"e":0.01121513931197063,"inclEclipticDeg":1.7679863485740834,"ascNodeEclipticDeg":131.79386605766496,"lonPeriEclipticDeg":397.44244290669224,"meanLonEclipticDeg":305.20853660850446}},"invariablePlane":{"inclEclipticDeg":1.5785089212841052,"ascNodeEclipticDeg":107.5823599360674},"relativisticSupplementArcsecCy":{"mercury":42.98142753750674,"venus":8.624988679409013,"earth":3.838964853078437,"mars":1.3510691613456707,"jupiter":0.06243854269534776,"saturn":0.013727538363259385,"uranus":0.0023997870642552053,"neptune":0.0007833188044413818},"checks":{"mercuryClosureArcsecCy":{"measuredWindowDelta":42.98457699408789,"derivedInstantaneous":42.98142753750674,"diff":0.003149456581148513,"tolerance":0.1},"earthMeanMotionVsSiderealAnchor":{"engineDegPerYr":359.9936510408777,"modelSiderealDegPerYr":359.9937285652708,"diffArcsecPerYr":-0.279087815283674,"tolerance":2},"saturnG6":{"measured":28.245581358956457,"laskar":28.2455},"jupiterG5":{"measured":4.256769523195223,"laskar":4.2575}},"inputs":{"generator":"node tools/verify/nbody-secular.js --write","files":{"packages/physics/src/planets/keplerian-chain.cjs":"sha256:ac48a70bef8668b8cde7e2ef28f398d96cf03cf46bc4ba742f60c315c5cbeb52","public/input/astro-reference.json":"sha256:f6ae6039bb99affc6ba02952373ba052ca980a267c6d7faa6d7a9abae65102b9","tools/explore/j2000-state.mjs":"sha256:ef15efde06948b36b589e3f790e6c5ccda64b8c1e1899cb4ff1e5f1571149611","tools/explore/k45-residual-naff.mjs":"sha256:228eb4874adca9171d61c1697ffbbaac3ce82891476a34762bf882840ccae406","tools/explore/k45e-amplitude-solve.mjs":"sha256:d5ce9f8d3e38d49988b089542882833dd4c631125b5b4e21eff13b119eee45e8","tools/explore/lattice-long-window-test.mjs":"sha256:d45dea6a754b8ab6502432ecb0cd463ef2d5780418b0fecd694ac1d5c1bed11f","tools/explore/naff-frequencies.mjs":"sha256:d875f65e0346346bde09402a0620f8109e3d0fc90e052ce8900b6f4af4ac0e5f","tools/explore/nbody-wh.mjs":"sha256:42947b7492e81dd412a97e0a794412706d16d6a42f2fde38310877fd1051c777","tools/lib/keplerian-chain.js":"sha256:7be1a96b20174d8c2726ec984250646093a847a5cf7e06d8e1e2ffae926ff5c9","tools/verify/nbody-secular.js":"sha256:95873972aab80bc156ec4c709e6a4e197699a7c0d2f4db1159a08178ffc3e3d8"}},"periodicTerms":{"mercury":{"mlonArcsec":[{"omegaRadPerYr":1.1094782578638633,"cos":0.4283393261961084,"sin":-7.326527509234423},{"omegaRadPerYr":5.661360380927949,"cos":-2.042649039570386,"sin":2.931772290428614}],"aPpm":[],"z":[],"zeta":[],"windowAffine":{"mlon":{"off":-3.0393736875871302,"slope":2.841277225316435},"a":{"off":0.2758746522782975,"slope":-7.212979068927238e-8},"k":{"off":-0.000010308133413000659,"slope":-3.078102566616934e-7},"h":{"off":-0.000016422197583177168,"slope":3.7560192853821967e-7},"q":{"off":0.000010395164103761334,"slope":-1.838228216218485e-7},"p":{"off":-0.0000045514783478873524,"slope":-4.54454512200622e-8}}},"venus":{"mlonArcsec":[],"aPpm":[],"z":[{"omegaRadPerYr":1.5773449192709434,"re":5.7688362360462365e-8,"im":5.534221828564653e-8},{"omegaRadPerYr":-1.5773449192709434,"re":0.000010314865584099027,"im":-0.0000198748787238016}],"zeta":[],"windowAffine":{"mlon":{"off":3.5948127312304887,"slope":0.5465947510597761},"a":{"off":4.008943004747135,"slope":7.075860643009611e-7},"k":{"off":0.00001907619455854608,"slope":-1.3082845363477187e-8},"h":{"off":0.00003129559857960834,"slope":-1.441522288917906e-8},"q":{"off":0.00000369074550376789,"slope":-5.1716895028481445e-8},"p":{"off":0.000005182645310723055,"slope":4.982987600455474e-8}}},"mars":{"mlonArcsec":[{"omegaRadPerYr":0.003412137087635026,"cos":53.66134652943842,"sin":17.0702224095311},{"omegaRadPerYr":0.19158768233986423,"cos":4.119097641894965,"sin":-4.748875287824893},{"omegaRadPerYr":0.39807082074986866,"cos":12.712294840261926,"sin":-4.8937042567324385},{"omegaRadPerYr":0.7961398668364265,"cos":1.4218153844689059,"sin":4.144231910196455}],"aPpm":[],"z":[{"omegaRadPerYr":0.3981475229837692,"re":-0.000006022352586612927,"im":-0.000016334865019193796},{"omegaRadPerYr":-0.3981475229837692,"re":-1.906831770330436e-7,"im":-4.274257222159089e-7},{"omegaRadPerYr":0.5296892164591163,"re":-0.00003701074387998172,"im":-0.000026873075674723054},{"omegaRadPerYr":-0.5296892164591163,"re":-4.860521864995133e-7,"im":3.4682346833132817e-7}],"zeta":[],"windowAffine":{"mlon":{"off":-83.40368679689061,"slope":-0.1308571754299822},"a":{"off":0.22572896074793633,"slope":0.00002462826981976612},"k":{"off":0.000055581565502195474,"slope":-3.330033606281005e-7},"h":{"off":-0.00011828467060704684,"slope":8.036921269251493e-8},"q":{"off":-0.000004188215333238016,"slope":1.6809402416370802e-7},"p":{"off":-0.000015868506481068194,"slope":-5.921860993754493e-8}}},"jupiter":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":193.3832216620771,"sin":380.597621447694},{"omegaRadPerYr":0.0012063073379189023,"cos":-3.9274841583289564,"sin":-80.09301290875467},{"omegaRadPerYr":0.004160979269962051,"cos":-1.69943829568573,"sin":10.726068111658648},{"omegaRadPerYr":0.005711423877210773,"cos":58.571129321431584,"sin":-126.86137607602102},{"omegaRadPerYr":0.0060611490662863445,"cos":-197.7236817832274,"sin":527.5745834567023},{"omegaRadPerYr":0.006400320486794552,"cos":379.14030538693584,"sin":-996.4275081012628},{"omegaRadPerYr":0.006927123132186677,"cos":-96.86651973973018,"sin":-625.8640378432207},{"omegaRadPerYr":0.00734753548346981,"cos":8.43825109969694,"sin":46.700085406090466},{"omegaRadPerYr":0.013416263751242975,"cos":2.917377177432902,"sin":-10.573630606149845},{"omegaRadPerYr":0.10286332259410932,"cos":-55.41328203440606,"sin":28.51871156692714},{"omegaRadPerYr":0.10341539484729162,"cos":-77.12097788008923,"sin":9.202995253429414},{"omegaRadPerYr":0.1100425288520466,"cos":3.899298688610127,"sin":-10.215251943431543},{"omegaRadPerYr":0.20645396403363098,"cos":-12.573442445414853,"sin":6.295822342082753},{"omegaRadPerYr":0.21316426593910423,"cos":10.054032585538861,"sin":-1.4152085169745214},{"omegaRadPerYr":0.3163921030750765,"cos":14.356082594113289,"sin":-47.02291299274492},{"omegaRadPerYr":0.4196206573492547,"cos":-18.86823087866421,"sin":-20.24646022413696},{"omegaRadPerYr":0.5228460556683714,"cos":-3.4375496090271564,"sin":0.6151505966978332},{"omegaRadPerYr":0.5295794256693848,"cos":3.217907378493207,"sin":1.975307816916936},{"omegaRadPerYr":0.6327839673705462,"cos":35.3349228950653,"sin":-56.4049785284849},{"omegaRadPerYr":0.7360122252144383,"cos":-4.7168510713684295,"sin":-9.5724698724},{"omegaRadPerYr":0.949175502963057,"cos":17.822449799701438,"sin":-16.382728937959474},{"omegaRadPerYr":1.2655672106357103,"cos":8.87498412842184,"sin":-4.569657084971597}],"aPpm":[{"omegaRadPerYr":0.006719118472690749,"cos":48.57374276056867,"sin":5.718778591306203},{"omegaRadPerYr":0.10316587166928487,"cos":-20.64279315909391,"sin":-58.4592094563138},{"omegaRadPerYr":0.31639212053382026,"cos":37.85268365288874,"sin":11.814375674076771},{"omegaRadPerYr":0.4196197886355212,"cos":32.19572358006155,"sin":-26.99428023819792},{"omegaRadPerYr":0.6327837640748681,"cos":112.58712391466997,"sin":70.37241144145064},{"omegaRadPerYr":0.7360111762024295,"cos":20.869632878207252,"sin":-9.118091922845995},{"omegaRadPerYr":0.9491754071485186,"cos":40.75667943910494,"sin":43.811460605574815}],"z":[{"omegaRadPerYr":-0.0006207787083493434,"re":-0.000007760801206480335,"im":0.0000016579719102905573},{"omegaRadPerYr":0.0006207787083493449,"re":-0.000008695682534227633,"im":-0.000006359405183752185},{"omegaRadPerYr":-0.004432186705238992,"re":3.2207615300300247e-7,"im":-6.196347944817902e-7},{"omegaRadPerYr":0.006185044486880686,"re":-0.000004731941541673283,"im":-0.0000017729858354297809},{"omegaRadPerYr":0.006526633569639799,"re":0.00004150382284636084,"im":0.000017534400952133703},{"omegaRadPerYr":0.006841730692169909,"re":-0.0002026998234541423,"im":0.0003233646880686746},{"omegaRadPerYr":0.007470533994347621,"re":-0.0000049281296015436406,"im":-0.0000012002820271097082},{"omegaRadPerYr":0.013548716908851125,"re":-0.000002377738793176193,"im":0.000006656435245445941},{"omegaRadPerYr":-0.0963835641459155,"re":0.000004243818371947522,"im":0.000006318732294994447},{"omegaRadPerYr":-0.10309304895354462,"re":0.0002599772038145943,"im":0.0005935193398974658},{"omegaRadPerYr":0.10334256718399279,"re":0.00001068106998793681,"im":-7.548205310553664e-7},{"omegaRadPerYr":-0.10355795380749366,"re":-2.1154636946827e-7,"im":-5.390710095107589e-8},{"omegaRadPerYr":0.10974751126305515,"re":0.0000011302669198675927,"im":0.000006702466721595302},{"omegaRadPerYr":-0.10980538631044515,"re":-0.000002866815045583102,"im":-0.000009885070817152992},{"omegaRadPerYr":0.11007006680531065,"re":-0.00013061727670124666,"im":0.000009881348055011194},{"omegaRadPerYr":0.20631979856483246,"re":5.04298118741976e-7,"im":2.480806224515503e-7},{"omegaRadPerYr":-0.20631979856483246,"re":0.00006341492203955716,"im":0.000011273250168154838},{"omegaRadPerYr":0.2132961022923942,"re":-0.00005065824330209699,"im":-0.00006271190037317963},{"omegaRadPerYr":-0.2132961022923942,"re":-0.000004406921581341513,"im":-0.0000016060783929656262},{"omegaRadPerYr":-0.30955001412647276,"re":0.0000056019124603202195,"im":-0.000005441874625394522},{"omegaRadPerYr":0.41948265838592674,"re":-9.509570952152945e-8,"im":-0.0000012590269907950825},{"omegaRadPerYr":-0.41948265838592674,"re":0.000014641220619062486,"im":0.00010495558350565439},{"omegaRadPerYr":0.426466505091871,"re":-0.0000064497978114164694,"im":0.000013430976495086736},{"omegaRadPerYr":-0.426466505091871,"re":-1.7392937473622375e-8,"im":-0.000002543548554022179},{"omegaRadPerYr":0.5227123063902634,"re":-6.493200167943617e-8,"im":-1.9428718738465597e-7},{"omegaRadPerYr":-0.5227123063902634,"re":0.00001824269392489439,"im":0.00000906975764089715},{"omegaRadPerYr":0.5296909646421464,"re":-0.000023988048624019953,"im":-0.000016305548718652476},{"omegaRadPerYr":0.7358764924026054,"re":-5.772321676657591e-7,"im":-9.031194308086103e-8},{"omegaRadPerYr":-0.7358764924026054,"re":-0.000004926448326111552,"im":0.00003725847350296657}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":0.0000017148670408172224,"im":-1.1979774717324106e-7},{"omegaRadPerYr":0.0006207787083493434,"re":0.0000073648358837529556,"im":-0.000001424067731329963},{"omegaRadPerYr":0.0011047092477748065,"re":-7.000878721120519e-7,"im":-2.3731715104835338e-7},{"omegaRadPerYr":0.0071090112684356,"re":-0.000003975092067696403,"im":0.0000075798744823925934}],"windowAffine":{"mlon":{"off":-276.6789283580293,"slope":6.146016597905851},"a":{"off":-319.6050905273606,"slope":0.0007796076926885039},"k":{"off":0.000014289210688706095,"slope":2.880479286878237e-8},"h":{"off":-0.001073832363366988,"slope":-2.534500776380545e-8},"q":{"off":-0.0000010335341247600158,"slope":1.4914208056557646e-9},"p":{"off":-0.000008818002194016852,"slope":3.0856264717746908e-9}}},"saturn":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":-451.253615891754,"sin":145.98152908438132},{"omegaRadPerYr":0.004165525534002769,"cos":5.787274939055933,"sin":-12.703810065013153},{"omegaRadPerYr":0.005711612505032101,"cos":-189.54704549967167,"sin":-160.138901914935},{"omegaRadPerYr":0.006061128582866573,"cos":603.7466010253094,"sin":-8.700856030526818},{"omegaRadPerYr":0.0064003167157022246,"cos":-1037.3698907699634,"sin":1226.0959465379547},{"omegaRadPerYr":0.006927098454757736,"cos":279.6703017478956,"sin":2098.4367623243365},{"omegaRadPerYr":0.007347527790309774,"cos":-31.43305366096744,"sin":-283.15643985756446},{"omegaRadPerYr":0.009480611716879448,"cos":-0.4507335945350436,"sin":4.79424382361373},{"omegaRadPerYr":0.010945707057204556,"cos":25.998025191315012,"sin":6.51039808953889},{"omegaRadPerYr":0.01341613162135763,"cos":-7.425964486999675,"sin":26.129189937928867},{"omegaRadPerYr":0.06380203049325128,"cos":-4.956781443209341,"sin":-5.857273277892975},{"omegaRadPerYr":0.09641501836240508,"cos":1.093655918412904,"sin":-3.2100722037931555},{"omegaRadPerYr":0.10286386181613702,"cos":99.08099439180381,"sin":-63.162454954986316},{"omegaRadPerYr":0.10333438844615983,"cos":212.53124729979737,"sin":-24.123206548331538},{"omegaRadPerYr":0.11004419279928404,"cos":-8.76642821816064,"sin":25.14155702073091},{"omegaRadPerYr":0.1384221456508977,"cos":-4.142308935304489,"sin":0.3359277714106255},{"omegaRadPerYr":0.2064531916682817,"cos":30.963724773182314,"sin":-15.259788419608947},{"omegaRadPerYr":0.2131887934790523,"cos":-24.29491341571394,"sin":-6.982168144064149},{"omegaRadPerYr":0.2770241887124282,"cos":1.4543542593835515,"sin":6.3793376087284965},{"omegaRadPerYr":0.31639189446899674,"cos":-148.12974553923905,"sin":514.8691214437579},{"omegaRadPerYr":0.3231050733335511,"cos":2.178111128712694,"sin":-4.849441591870168},{"omegaRadPerYr":0.41962101131042784,"cos":43.79639605758242,"sin":47.62049382853528},{"omegaRadPerYr":0.4263384811647367,"cos":-1.9599761156575544,"sin":-4.910375543643042},{"omegaRadPerYr":0.5228461938866507,"cos":7.6492352759963484,"sin":-1.4042408711820147},{"omegaRadPerYr":0.5296206925660197,"cos":20.82311358880523,"sin":-21.723522060178187},{"omegaRadPerYr":0.6327839463508664,"cos":-77.8067933782241,"sin":124.58143011814512},{"omegaRadPerYr":0.7360122996869195,"cos":11.252910261739688,"sin":22.663624511588285},{"omegaRadPerYr":0.8460438288764272,"cos":1.8113799261773025,"sin":20.756673170052206},{"omegaRadPerYr":0.9491754962353995,"cos":-40.339539075190224,"sin":37.047932328557295},{"omegaRadPerYr":1.2655672066097283,"cos":-20.25042369756606,"sin":10.420773654426046}],"aPpm":[{"omegaRadPerYr":0.006719059935042215,"cos":-298.1739213236028,"sin":-35.65492072514902},{"omegaRadPerYr":0.10311278023647517,"cos":329.05242810267646,"sin":168.2053446152665},{"omegaRadPerYr":0.1099870935042278,"cos":-80.20082859738086,"sin":25.677992848453474},{"omegaRadPerYr":0.20645076221400505,"cos":22.365346624696144,"sin":52.11596047023494},{"omegaRadPerYr":0.21316470395286807,"cos":22.417376358933,"sin":148.19540823121667},{"omegaRadPerYr":0.3096741611131529,"cos":40.76320120805859,"sin":6.028630477781981},{"omegaRadPerYr":0.31639181272876266,"cos":3380.8172681042483,"sin":952.19154868527},{"omegaRadPerYr":0.41962072059820554,"cos":-117.61845886216751,"sin":102.62640456035058},{"omegaRadPerYr":0.522848349625552,"cos":2.3692526123597575,"sin":25.55482510964822},{"omegaRadPerYr":0.6327843055552796,"cos":-267.8385275274031,"sin":-178.81334724872872},{"omegaRadPerYr":0.7360113200820578,"cos":-70.20882189811421,"sin":30.840529284060356},{"omegaRadPerYr":0.8460447241275829,"cos":152.71397931748962,"sin":-11.548664498369881},{"omegaRadPerYr":0.9491754312473957,"cos":-100.97703552341146,"sin":-108.78710325854236},{"omegaRadPerYr":1.265567050136826,"cos":-32.69042937836259,"sin":-61.98759537925285}],"z":[{"omegaRadPerYr":-0.004358110846151278,"re":-0.000002445279424852449,"im":0.0000017621954362468656},{"omegaRadPerYr":0.006181644107420951,"re":0.000019239809643427013,"im":0.000026302645815428275},{"omegaRadPerYr":0.006525673611358515,"re":-0.00017162207988757243,"im":-0.00012381490122963492},{"omegaRadPerYr":0.006842443147971666,"re":0.0008160379290510822,"im":-0.0012855611879206686},{"omegaRadPerYr":0.007464263599308896,"re":0.000012700556847236648,"im":-0.000011961876101686816},{"omegaRadPerYr":0.011038687923256879,"re":-0.000039869855044714435,"im":0.00003195328235370556},{"omegaRadPerYr":0.013549298871283269,"re":0.000009801001526091865,"im":-0.000026447688535276757},{"omegaRadPerYr":-0.06373626925966255,"re":-0.00003596115998384089,"im":-0.000028529187552461677},{"omegaRadPerYr":-0.09638538445927783,"re":0.000015535362203103386,"im":0.000026853064771238423},{"omegaRadPerYr":-0.10309247938025248,"re":0.0002905044325100417,"im":0.0006021956537131266},{"omegaRadPerYr":0.10334344954127525,"re":-0.000019533843400768672,"im":0.000010878621921404595},{"omegaRadPerYr":0.10921440834492788,"re":-0.00003560780226338562,"im":0.000008050131621592458},{"omegaRadPerYr":-0.10921440834492788,"re":0.0000017934499315039944,"im":0.00000405315797293809},{"omegaRadPerYr":0.10975358535397606,"re":0.00017369831673455462,"im":-0.00007535465148308143},{"omegaRadPerYr":-0.10975358535397606,"re":-0.000004563988896924535,"im":-0.0000154375327254865},{"omegaRadPerYr":0.11042109885467918,"re":0.00018688710085717507,"im":-0.00012925303231366497},{"omegaRadPerYr":0.1107948956846119,"re":-0.00005742819467953064,"im":0.00002446019747635651},{"omegaRadPerYr":-0.1107948956846119,"re":3.2507064761096937e-7,"im":0.0000014893262878712717},{"omegaRadPerYr":0.2063193110741841,"re":-0.000012094578924974436,"im":-0.000015066272817853064},{"omegaRadPerYr":-0.2063193110741841,"re":-0.0002645706853712598,"im":-0.000043660297027029056},{"omegaRadPerYr":0.2130228704680447,"re":0.0007392110656689748,"im":0.0008891228393192088},{"omegaRadPerYr":-0.2130228704680447,"re":0.000018380819773470427,"im":0.000004389860388892079},{"omegaRadPerYr":-0.30955014898803845,"re":-0.000024631815470831895,"im":0.00002635073382218204},{"omegaRadPerYr":0.3161372566474592,"re":0.000010638067732514132,"im":0.00002903644464320735},{"omegaRadPerYr":-0.3161372566474592,"re":0.000044785364090127505,"im":-0.00007235123203278041},{"omegaRadPerYr":0.3232395099583198,"re":-0.0000030767740423315698,"im":-0.00002580327386509728},{"omegaRadPerYr":-0.3232395099583198,"re":-8.037783708694097e-7,"im":0.0000013792616646490144},{"omegaRadPerYr":0.41948429875117665,"re":-0.0000024400754535557023,"im":8.894450263194997e-7},{"omegaRadPerYr":-0.41948429875117665,"re":-0.00005542845317142494,"im":-0.00044582635037752926},{"omegaRadPerYr":0.42644865463819764,"re":0.00007629843791169079,"im":-0.00004431512896241777},{"omegaRadPerYr":-0.42644865463819764,"re":-3.142917811194328e-7,"im":0.000010823856186704562},{"omegaRadPerYr":0.5227089862323508,"re":0.000003410979417831606,"im":0.0000030363670326161395},{"omegaRadPerYr":-0.5227089862323508,"re":-0.00007781393434095757,"im":-0.000038627649196321925},{"omegaRadPerYr":0.5296908859098071,"re":0.0016272720362705665,"im":0.0011111321002679347},{"omegaRadPerYr":-0.6327562885720048,"re":0.000029869908761550486,"im":0.00004153187994553486},{"omegaRadPerYr":0.7358761721222311,"re":0.000002104902323996618,"im":-5.169275046806296e-7},{"omegaRadPerYr":-0.7358761721222311,"re":0.00002159732009990703,"im":-0.00016115133722286416},{"omegaRadPerYr":0.8391031676474132,"re":-3.2200579003446994e-7,"im":-1.921602155098948e-7},{"omegaRadPerYr":-0.8391031676474132,"re":-0.000029573064620902294,"im":-0.00002687687857849615},{"omegaRadPerYr":0.8460633253903981,"re":-0.0000182912621724972,"im":-0.000004960467884280318},{"omegaRadPerYr":-0.8460633253903981,"re":0.000002270968484351811,"im":-4.1450617474219755e-7},{"omegaRadPerYr":1.0522678070946976,"re":0.000002112495108837071,"im":-6.772836661571395e-7},{"omegaRadPerYr":-1.0522678070946976,"re":0.000026798123887720964,"im":-0.00006313630230370938},{"omegaRadPerYr":1.0593357383703628,"re":0.000055178325520269776,"im":0.00007541106198902492},{"omegaRadPerYr":-1.0593357383703628,"re":-0.0000011488133127119404,"im":0.0000024971143397116498}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":-8.436595912367323e-7,"im":0.000001633263627834134},{"omegaRadPerYr":0.0006207787083493434,"re":-0.000021424440269056364,"im":0.00000406741893133285},{"omegaRadPerYr":0.0011035308302650994,"re":0.0000028014305555000514,"im":3.03429131598728e-7},{"omegaRadPerYr":0.007110979736486372,"re":0.000009782653039468542,"im":-0.000018356544025335236},{"omegaRadPerYr":0.11036111149309716,"re":0.0000053050503083409155,"im":-7.394158520138554e-7},{"omegaRadPerYr":-0.11036111149309716,"re":-1.2281150228540698e-7,"im":-3.07875979063758e-7},{"omegaRadPerYr":0.31648864888649864,"re":5.930263050595727e-7,"im":-0.0000017212036515675988},{"omegaRadPerYr":-0.31648864888649864,"re":0.000006094478957977664,"im":-0.0000045938972600486}],"windowAffine":{"mlon":{"off":709.9722654779956,"slope":-15.579934294638058},"a":{"off":-2829.2103263877525,"slope":-0.004510524074380032},"k":{"off":-0.0032950974609698065,"slope":-2.0051399643096954e-8},"h":{"off":-0.0002907698308219252,"slope":-1.3596818437416563e-8},"q":{"off":-0.0000010497861227947909,"slope":-1.844836227990879e-9},"p":{"off":0.00001949409542224931,"slope":-8.310665514904321e-10}}},"uranus":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":1801.9688215276547,"sin":3696.0402015231675},{"omegaRadPerYr":0.0011579316488608284,"cos":-2487.6534406001147,"sin":-459.55088689711397},{"omegaRadPerYr":0.0016224830408352498,"cos":-1220.2966969515146,"sin":1099.2432996165028},{"omegaRadPerYr":0.002935118567074053,"cos":-86.83674347331831,"sin":-108.24685231024809},{"omegaRadPerYr":0.004155546482813653,"cos":7.118744517059694,"sin":23.57760406645599},{"omegaRadPerYr":0.009315002243089728,"cos":3.7516023313568363,"sin":7.101267898351473},{"omegaRadPerYr":0.010640504204457963,"cos":-45.57910944323328,"sin":-40.20883229440988},{"omegaRadPerYr":0.01119673478710359,"cos":-81.22235365041975,"sin":1.901281748995162},{"omegaRadPerYr":0.012145759710583907,"cos":6.889745560125585,"sin":0.1337542919867262},{"omegaRadPerYr":0.03510485087576988,"cos":-13.688922570681836,"sin":-0.13357807007057396},{"omegaRadPerYr":0.036426329598293165,"cos":-5.668712161443024,"sin":-24.347642616449427},{"omegaRadPerYr":0.03764711514559774,"cos":1.138953309753275,"sin":-6.871151194186152},{"omegaRadPerYr":0.06379838901039833,"cos":20.403291982312666,"sin":27.239956687524646},{"omegaRadPerYr":0.07318148932273885,"cos":-9.790209397106063,"sin":-27.80021241193281},{"omegaRadPerYr":0.07471215976498653,"cos":7.902379642110793,"sin":-0.774442117625175},{"omegaRadPerYr":0.10992640338436127,"cos":-5.939904215836388,"sin":-10.882753324742827},{"omegaRadPerYr":0.1385175392010205,"cos":155.21118912477402,"sin":-15.812055598809634},{"omegaRadPerYr":0.14663782569970274,"cos":-3.7488763779317598,"sin":-4.791075382227249},{"omegaRadPerYr":0.18317858258233016,"cos":-2.2663688645635784,"sin":-2.0807781596480717},{"omegaRadPerYr":0.20224498577277328,"cos":8.906763705097376,"sin":0.1380298652243485},{"omegaRadPerYr":0.21324964619950887,"cos":7.79719866947626,"sin":3.241509288620873},{"omegaRadPerYr":0.2770253845805853,"cos":-5.372427211086557,"sin":-26.160552277645316},{"omegaRadPerYr":0.34075769983231263,"cos":-0.34413062425412416,"sin":-3.4023598781892685},{"omegaRadPerYr":0.35171296920155715,"cos":6.530654205490572,"sin":4.862791616448076},{"omegaRadPerYr":0.3801532980579145,"cos":-10.061663279866217,"sin":6.615060134886086},{"omegaRadPerYr":0.4155393874689375,"cos":-8.765446247114845,"sin":2.7918680516072425},{"omegaRadPerYr":0.4549044622840928,"cos":693.1080948896936,"sin":120.18474838738872},{"omegaRadPerYr":0.45610432617458596,"cos":1.4784723033153024,"sin":-4.600733971723476},{"omegaRadPerYr":0.5296580495362411,"cos":25.53148607890865,"sin":29.126214483562098},{"omegaRadPerYr":0.9098120073368585,"cos":1.5179157507850387,"sin":-4.917034352655555},{"omegaRadPerYr":0.9845575209673397,"cos":34.71485095170867,"sin":-6.198872286264103}],"aPpm":[{"omegaRadPerYr":0.0015195464620650877,"cos":-97.92780120015847,"sin":-170.5428140152202},{"omegaRadPerYr":0.010971188991961797,"cos":15.922068967567228,"sin":-63.432796546205935},{"omegaRadPerYr":0.036210324842414696,"cos":16.212587942173556,"sin":-6.129790120421755},{"omegaRadPerYr":0.0638251399824393,"cos":10.100213421265115,"sin":75.06714450826473},{"omegaRadPerYr":0.0733720075467266,"cos":42.98239259300776,"sin":-17.9418140413923},{"omegaRadPerYr":0.07480628721946354,"cos":-98.25061077714025,"sin":-132.202002201576},{"omegaRadPerYr":0.10992773337349732,"cos":23.527834427275085,"sin":-13.195939312161588},{"omegaRadPerYr":0.13851260798083515,"cos":-111.93654476921755,"sin":-1070.016527121048},{"omegaRadPerYr":0.20224432811824086,"cos":-1.6198240173862555,"sin":23.993058869923644},{"omegaRadPerYr":0.2770277343049128,"cos":61.913236841972406,"sin":-9.835654134674343},{"omegaRadPerYr":0.35171020655145807,"cos":33.74734368162499,"sin":-41.87577534787228},{"omegaRadPerYr":0.38014999979161623,"cos":101.22109160185427,"sin":184.81826525347103},{"omegaRadPerYr":0.4155326059030616,"cos":-8.50929116085849,"sin":-24.32921998914257},{"omegaRadPerYr":0.45490446743623597,"cos":713.139927237936,"sin":-4114.6325172160405},{"omegaRadPerYr":0.4561160600364418,"cos":-27.913180144325082,"sin":-8.624546428335371},{"omegaRadPerYr":0.984557509897134,"cos":-33.18844015424147,"sin":-186.75405236611599}],"z":[{"omegaRadPerYr":-0.0006207787083493432,"re":-0.0010010271541711772,"im":0.0018777044315025746},{"omegaRadPerYr":0.0006207787083493464,"re":0.004669404370945987,"im":-0.009340747389266558},{"omegaRadPerYr":0.0009435296146423852,"re":-0.002693731244410169,"im":0.005515123870617622},{"omegaRadPerYr":-0.0011535901883012222,"re":0.00014035425010575732,"im":-0.00024989373718838423},{"omegaRadPerYr":0.0014837575606668784,"re":-0.00045779885526748995,"im":0.001029220718337651},{"omegaRadPerYr":0.0029527987688873665,"re":0.00009183113654454647,"im":0.00014226780874768813},{"omegaRadPerYr":0.004292938112541269,"re":0.00002604331453241119,"im":-0.0000026087586213451956},{"omegaRadPerYr":0.009597120283040226,"re":-0.000007669844938360622,"im":0.000021294192837364352},{"omegaRadPerYr":-0.009597120283040226,"re":-3.9726713006760554e-7,"im":6.855988059585005e-7},{"omegaRadPerYr":0.010674384178493406,"re":-0.000010533262678437352,"im":-0.0001455148230309594},{"omegaRadPerYr":0.011227739550618343,"re":0.00006715354281438808,"im":-0.00012622016168569206},{"omegaRadPerYr":0.03372910794138875,"re":-5.792844472104949e-7,"im":2.4314285495180073e-7},{"omegaRadPerYr":-0.03372910794138875,"re":-0.00000880378752168949,"im":-0.000006800427022328312},{"omegaRadPerYr":-0.03516446737018353,"re":0.000017036805195683028,"im":-0.00006576383803542369},{"omegaRadPerYr":0.03813277064323463,"re":-0.000014411793574417915,"im":0.000021543930065801352},{"omegaRadPerYr":0.03956799170730824,"re":0.0000060071290961077885,"im":0.000009377006777274802},{"omegaRadPerYr":-0.03956799170730824,"re":2.6935210872742854e-7,"im":-4.916863023382216e-8},{"omegaRadPerYr":0.05268030494966354,"re":-4.237037805796693e-8,"im":-2.2749652861175358e-7},{"omegaRadPerYr":-0.05268030494966354,"re":-0.00001162431242526334,"im":0.000006194880630876984},{"omegaRadPerYr":-0.06373512207652907,"re":-0.00022367795746631777,"im":-0.00017316839062164822},{"omegaRadPerYr":0.07165168074871991,"re":0.0000017015187480928225,"im":7.242338771966972e-7},{"omegaRadPerYr":-0.07165168074871991,"re":0.0000022253065719657005,"im":-0.0000239819546465497},{"omegaRadPerYr":0.07478159870524997,"re":0.0009483157794586808,"im":-0.0009764231771624703},{"omegaRadPerYr":0.10845808945136469,"re":-3.004883965295506e-7,"im":1.7055087357327652e-7},{"omegaRadPerYr":-0.10845808945136469,"re":-9.064387638229779e-7,"im":-0.000011385527941028099},{"omegaRadPerYr":-0.12747767226472656,"re":0.000021699265157246156,"im":0.00002376114754738344},{"omegaRadPerYr":0.13850950308176996,"re":-0.0000010910229098697519,"im":-0.000007886168725902355},{"omegaRadPerYr":-0.13850950308176996,"re":-0.000001434320086571384,"im":-0.00001963808508671571},{"omegaRadPerYr":0.1495497617854712,"re":0.000014732954282267382,"im":0.00008515250779883778},{"omegaRadPerYr":0.20222937823935716,"re":-1.1385591675988417e-7,"im":7.147831866493965e-7},{"omegaRadPerYr":-0.20222937823935716,"re":0.00004353415832027236,"im":-0.00006511784459661798},{"omegaRadPerYr":0.21329897373317086,"re":0.0003933511417178107,"im":0.00047058009044412887},{"omegaRadPerYr":-0.21329897373317086,"re":2.8327811431341513e-7,"im":-3.560359246154832e-7},{"omegaRadPerYr":0.2769038067800174,"re":-6.922779079018568e-7,"im":-0.0000013818132165140064},{"omegaRadPerYr":-0.2769038067800174,"re":-2.3494785512648875e-7,"im":-0.000016621555907303974},{"omegaRadPerYr":0.3053633220183532,"re":-3.828674197691803e-8,"im":-3.0064823844297327e-8},{"omegaRadPerYr":-0.3053633220183532,"re":0.00007882762566993446,"im":0.0000236123586415603},{"omegaRadPerYr":0.3407483470470682,"re":-1.3758316558774432e-7,"im":-2.4367154579582864e-7},{"omegaRadPerYr":-0.3407483470470682,"re":-0.000024185839542396282,"im":-0.000011566031399227259},{"omegaRadPerYr":0.38011803010191847,"re":-5.112230464978982e-8,"im":3.5576083426589514e-7},{"omegaRadPerYr":-0.38011803010191847,"re":-0.000683808108807156,"im":-0.0009409743748576826},{"omegaRadPerYr":0.38132830185858746,"re":-5.8177806967052385e-8,"im":1.6800244502590846e-7},{"omegaRadPerYr":-0.38132830185858746,"re":-0.000014034035119495699,"im":0.000007393494708343985},{"omegaRadPerYr":0.4264958876223484,"re":0.000033536519266374154,"im":0.0000032361816570982316},{"omegaRadPerYr":-0.4264958876223484,"re":2.1135509106302237e-9,"im":-2.2152515698741622e-7},{"omegaRadPerYr":0.4548421909364264,"re":-0.000006897616144456808,"im":-0.00002246641860475243},{"omegaRadPerYr":-0.4548421909364264,"re":0.00000407137788831569,"im":-0.00007288075699841603},{"omegaRadPerYr":0.5296909155630158,"re":0.0022676944652803236,"im":0.0015486566265643551},{"omegaRadPerYr":0.6044398037682881,"re":0.00001772821682494471,"im":-0.000001325745633927324},{"omegaRadPerYr":-0.6044398037682881,"re":1.8671243007549463e-7,"im":5.135484152882108e-9},{"omegaRadPerYr":0.8350185854831645,"re":1.3389962716219148e-7,"im":4.84551878795857e-8},{"omegaRadPerYr":-0.8350185854831645,"re":0.000018812120588273927,"im":-0.000007750077895326201},{"omegaRadPerYr":0.9097702890415831,"re":-5.782380719892394e-7,"im":1.9729873306333605e-7},{"omegaRadPerYr":-0.9097702890415831,"re":-0.00004113467597080967,"im":-0.000028046600646821318},{"omegaRadPerYr":1.0593442234385404,"re":0.00007767832087815946,"im":0.00010783753098964789},{"omegaRadPerYr":-1.0593442234385404,"re":-1.3556647669744362e-9,"im":3.814197973272324e-8}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":0.000009629466068512008,"im":-0.00002700542307681737},{"omegaRadPerYr":0.0006207787083493434,"re":-0.000049798841708766556,"im":0.00013244063973719405},{"omegaRadPerYr":0.0009514858307923093,"re":0.000026789231695805917,"im":-0.00007644359257728086},{"omegaRadPerYr":0.0014527887892821479,"re":-0.0000023897704328165434,"im":0.000013648719577168508},{"omegaRadPerYr":-0.0014792753244575146,"re":0.000002151034415423666,"im":0.000005190682098271777},{"omegaRadPerYr":0.0029820480249223872,"re":-0.0000013160358614767749,"im":-0.000005115909165770176},{"omegaRadPerYr":0.00445001839713232,"re":-6.717165830591991e-7,"im":9.251686604741414e-9},{"omegaRadPerYr":0.011102305337337318,"re":-0.000004628968123150622,"im":-0.0000046908160229297634},{"omegaRadPerYr":0.03663431002433444,"re":-6.097607617781723e-7,"im":9.248254018616485e-8},{"omegaRadPerYr":-0.036662600049736954,"re":4.790966947907778e-7,"im":-2.7030397322901033e-7},{"omegaRadPerYr":-0.1385862814842433,"re":0.0000034400542443838532,"im":0.0000021585069767270156},{"omegaRadPerYr":0.1496020811421664,"re":8.15990123336191e-7,"im":-7.942505016386517e-7},{"omegaRadPerYr":0.2881502651212958,"re":-0.0000010962716988804577,"im":-0.0000016121125699103533},{"omegaRadPerYr":0.45486894002023015,"re":-2.2992966985781707e-8,"im":-9.354657471556091e-9},{"omegaRadPerYr":-0.45486894002023015,"re":0.0000041579007491430415,"im":0.000004891978906915924},{"omegaRadPerYr":0.6044418164850311,"re":-0.0000037738318413916955,"im":-0.0000030151035436098662},{"omegaRadPerYr":-0.6044418164850311,"re":-7.35866162994619e-11,"im":-1.0864146466816922e-9}],"windowAffine":{"mlon":{"off":1210.0916981086646,"slope":-2.356561618102263},"a":{"off":-570.5850928990467,"slope":-0.008328826998351968},"k":{"off":-0.00366228365357873,"slope":-0.000002706626332717455},"h":{"off":0.0013833912074699532,"slope":-0.0000013941565327430463},"q":{"off":0.000017812451313420837,"slope":4.3356058040235435e-8},"p":{"off":-0.00003762382414202915,"slope":1.7014936480391533e-8}}},"neptune":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":1064.212149451297,"sin":-18540.652753959734},{"omegaRadPerYr":0.0010884207287489497,"cos":-924.0362482426459,"sin":8383.82201986771},{"omegaRadPerYr":0.0014542551964391568,"cos":2226.955694353464,"sin":-3270.274366253071},{"omegaRadPerYr":0.0029389628530379795,"cos":48.078439095229676,"sin":94.12365761816456},{"omegaRadPerYr":0.035319889560920095,"cos":9.257473045853379,"sin":2.0734856552080676},{"omegaRadPerYr":0.03664876565539879,"cos":4.7094553822663965,"sin":32.60593260837659},{"omegaRadPerYr":0.0379634784712963,"cos":2.9744193339631977,"sin":2.513917234979188},{"omegaRadPerYr":0.07185421776935363,"cos":2.8052710744993297,"sin":0.02846273088874038},{"omegaRadPerYr":0.0732973641270625,"cos":6.1965389050552835,"sin":17.0773714633508},{"omegaRadPerYr":0.10987969317187546,"cos":3.60363735367916,"sin":6.863360280812679},{"omegaRadPerYr":0.1465411070471313,"cos":2.3029358223686502,"sin":2.954488343602723},{"omegaRadPerYr":0.17516600735395105,"cos":184.4413301288469,"sin":-52.32109605114765},{"omegaRadPerYr":0.35033794653247485,"cos":-1.7861093063080808,"sin":-2.9405528996126975},{"omegaRadPerYr":0.38836651611040063,"cos":9.70081182993168,"sin":5.3192582532981545},{"omegaRadPerYr":0.4915611841446312,"cos":911.0889137852095,"sin":-1.0510799754510758},{"omegaRadPerYr":0.49279773384983616,"cos":-0.5592399822047331,"sin":3.9702700781104827},{"omegaRadPerYr":0.5297024373268707,"cos":2.40320968051373,"sin":-9.399068768105197},{"omegaRadPerYr":1.021214758421749,"cos":42.2020577057518,"sin":-15.309967518050174}],"aPpm":[{"omegaRadPerYr":0.0015262400589186877,"cos":128.59464307443753,"sin":231.15748494462574},{"omegaRadPerYr":0.0028522808070564833,"cos":-21.37258121508621,"sin":10.41064755989285},{"omegaRadPerYr":0.03669498740393444,"cos":151.68816464488373,"sin":-28.109847919847983},{"omegaRadPerYr":0.0732428963963061,"cos":-33.097418893495544,"sin":11.320551289859745},{"omegaRadPerYr":0.11007776654950899,"cos":-15.641429019477593,"sin":8.577259144710313},{"omegaRadPerYr":0.17516937472508654,"cos":-326.96669731853905,"sin":-1149.3821777931403},{"omegaRadPerYr":0.38836651718787407,"cos":29.53675612865252,"sin":-54.13457963760843},{"omegaRadPerYr":0.4534159750526987,"cos":-46.68270557697238,"sin":11.759966469069417},{"omegaRadPerYr":0.49156118009313077,"cos":-5.290056175958509,"sin":-4922.302879177644},{"omegaRadPerYr":0.4928261722960873,"cos":22.10668376967481,"sin":2.1304175891318873},{"omegaRadPerYr":1.0212147268897795,"cos":-78.57315117147935,"sin":-216.34180136813907}],"z":[{"omegaRadPerYr":-0.0006207787083493432,"re":0.00000822910599695662,"im":0.00000566645788782689},{"omegaRadPerYr":0.0006207787083493453,"re":-0.0000033482623738817215,"im":-0.000011998582333036538},{"omegaRadPerYr":0.0014837734825010177,"re":0.0002465285902965811,"im":-0.000542946526804817},{"omegaRadPerYr":0.002952491806788975,"re":-0.00011247629571556469,"im":-0.00011171907883842821},{"omegaRadPerYr":-0.004414051602461347,"re":-1.1949180023376013e-8,"im":-5.895393912563796e-8},{"omegaRadPerYr":0.00441745151969733,"re":-0.000011139829747812603,"im":0.000005957961387581304},{"omegaRadPerYr":-0.0336947851363493,"re":0.000008788563557474915,"im":0.0000066100893572258815},{"omegaRadPerYr":-0.03516438841507151,"re":-0.000016831823497116864,"im":0.00006611363801678594},{"omegaRadPerYr":0.03666424259143439,"re":0.0000067161349630566706,"im":8.5863061450533e-7},{"omegaRadPerYr":0.03813296419381759,"re":0.0007689836932573089,"im":-0.0011245762260255845},{"omegaRadPerYr":-0.07181296843697238,"re":-0.0000023474904524169503,"im":0.000024443385640750307},{"omegaRadPerYr":0.07478167259300009,"re":0.00006051155974368794,"im":-0.00006241188917030075},{"omegaRadPerYr":0.08068029609791652,"re":-2.1385174933710793e-7,"im":9.47807650713311e-8},{"omegaRadPerYr":0.10840999361006448,"re":-2.1894562976651773e-8,"im":-1.842804538376415e-8},{"omegaRadPerYr":-0.10840999361006448,"re":5.153826226655718e-7,"im":0.000011407506356300657},{"omegaRadPerYr":-0.13703303990304816,"re":-0.0003233037620025506,"im":-0.00010732690949601281},{"omegaRadPerYr":0.21329898735568126,"re":0.00048778689719744165,"im":0.0005843247148884207},{"omegaRadPerYr":-0.3121996849254518,"re":2.6584347616665e-7,"im":-0.000009497238475246992},{"omegaRadPerYr":0.3502350293271937,"re":4.843040927610671e-8,"im":-1.0702237146150716e-7},{"omegaRadPerYr":-0.3502350293271937,"re":-0.000007616440459433557,"im":-0.000014833156682859016},{"omegaRadPerYr":0.41529137321236287,"re":1.442005878816463e-7,"im":-3.484512197119509e-7},{"omegaRadPerYr":-0.41529137321236287,"re":-0.00000707795193580432,"im":0.00001836075632727175},{"omegaRadPerYr":0.42649606358473324,"re":0.00004218844308149576,"im":0.000004227571689777453},{"omegaRadPerYr":-0.42649606358473324,"re":-5.658292052953387e-8,"im":-6.845099901226937e-8},{"omegaRadPerYr":0.45343148629777286,"re":-5.680507946629673e-8,"im":-9.841661999629342e-8},{"omegaRadPerYr":-0.45343148629777286,"re":-0.0010841004899122212,"im":-0.000736390221813403},{"omegaRadPerYr":0.4546133901012304,"re":6.67914668314911e-8,"im":6.897609009672202e-8},{"omegaRadPerYr":-0.4546133901012304,"re":0.00000818929299076697,"im":-0.000008038397570237945},{"omegaRadPerYr":0.4915675955310438,"re":-0.000004083522353726188,"im":0.000003744270434963885},{"omegaRadPerYr":-0.4915675955310438,"re":-0.000012301739812453286,"im":0.000010686366413055363},{"omegaRadPerYr":0.5296909041466622,"re":0.002839613383622111,"im":0.0019403577470709873},{"omegaRadPerYr":0.9830852238230905,"re":-6.720721583920492e-8,"im":3.425816645371005e-8},{"omegaRadPerYr":-0.9830852238230905,"re":-0.00005758151994324185,"im":-0.000014754794069635932},{"omegaRadPerYr":1.0593442030083966,"re":0.00009721226174654751,"im":0.0001350049744357107},{"omegaRadPerYr":-1.0593442030083966,"re":-4.1559879847366785e-8,"im":9.802298292992387e-9}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":-5.057373983794714e-7,"im":0.0000031433152031555667},{"omegaRadPerYr":0.0006207787083493438,"re":0.0000029115733404898485,"im":-0.000004309627443672908},{"omegaRadPerYr":0.0014366584800648346,"re":-0.0000013572071156821169,"im":-0.000001020104238423996},{"omegaRadPerYr":-0.001480323771534016,"re":-0.0000011783259528824155,"im":-0.0000018211874549353222},{"omegaRadPerYr":0.002982469348844243,"re":9.458475398560309e-7,"im":0.000003122123819843002},{"omegaRadPerYr":0.0044510414024656955,"re":3.971188256100343e-7,"im":2.94455272695886e-8},{"omegaRadPerYr":0.03663380433896722,"re":3.593149192869475e-7,"im":-5.5827146617815774e-8},{"omegaRadPerYr":-0.17494555869955136,"re":9.099409535530744e-7,"im":-9.024205485759674e-7},{"omegaRadPerYr":-0.17549754071699553,"re":0.000001505121306046405,"im":-3.070442234723798e-7},{"omegaRadPerYr":0.49159407636236985,"re":4.796686684990757e-9,"im":3.358344123813994e-10},{"omegaRadPerYr":-0.49159407636236985,"re":-3.98804489842816e-7,"im":-0.00001005615352417885},{"omegaRadPerYr":0.5676217845108422,"re":0.000004880876845321145,"im":-0.0000023244672855910403},{"omegaRadPerYr":0.5681730424584401,"re":0.000003985093304959338,"im":-7.238476904721648e-7}],"windowAffine":{"mlon":{"off":-3600.978375847875,"slope":6.706848240846746},"a":{"off":228.34220468445073,"slope":0.013417433557641792},"k":{"off":-0.0029101681444154044,"slope":2.5117803834315305e-9},"h":{"off":-0.00012102457242531213,"slope":1.8162297961597065e-8},"q":{"off":-0.000011703165443191566,"slope":-2.5174396402677695e-9},"p":{"off":0.00001578707593265369,"slope":-1.0378417602521395e-8}}}}});
17
+ export const CHAIN_ARTIFACT = Object.freeze({"_description":"Engine-D secular frequencies from the model’s own N-body pipeline (WH 1-Myr, 1PN on, NAFF), the 1800–2100 window rates (B), the Keplerian chain’s governed inputs (K2.1/P5: windowElementRates + j2000AnchorElements — era-typed window values and the t=0 anchor, the chain’s ONE home), the derived instantaneous 1PN apsidal supplement, and the K4.5/K4.7b derived periodic-term layer (periodicTerms: λ̄/a/z/ζ lines + era window affine, engine-measured — tools/explore/k45e-amplitude-solve.mjs). Frames: g ecliptic-J2000 z-modes, s INVARIABLE-plane ζ-modes. Laskar 2004 values are external reference labels (theory), never inputs. See tools/verify/nbody-secular.js for the assertions carried.","meta":{"integrator":"wh","order":2,"dtDays":2,"spanYears":1000000,"sampleDays":1000,"gr":true,"seed":"JPL Horizons J2000 heliocentric state vectors (tools/explore/j2000-state.mjs, the one home)","masses":"DE440 mass ratios (astro-reference physicalConstants)","naffTerms":8,"windowYears":[1800,2100],"laskarRef":"Laskar, J. et al. (2004), A&A 428, 261–285, Table 3","conservationMaxDE":1.1113907520896154e-8,"note1PN":"Mercury eigen-level 1PN shift ≈ +0.473 ″/yr (cycle-average of 1/(1−e²)) vs +0.430 instantaneous — not a discrepancy; only the instantaneous value is asserted (P8b).","periodicTermsMethod":"k45e era-centered LSQ (self-seeded prewhitening, golden-refined frequencies; K4.7b)","periodicTermsSpanYr":2500,"periodicTermsCadenceYr":0.1},"g":{"mercury":{"arcsecPerYr":5.575712797823945,"amplitude":0.17545096694269685,"nearestLaskar":{"mode":"g1","arcsecPerYr":5.5965}},"venus":{"arcsecPerYr":7.405845742227483,"amplitude":0.022570769830788477,"nearestLaskar":{"mode":"g2","arcsecPerYr":7.4555}},"earth":{"arcsecPerYr":4.346410041032439,"amplitude":0.019341964493845513,"nearestLaskar":{"mode":"g5","arcsecPerYr":4.2575}},"mars":{"arcsecPerYr":17.916696630844026,"amplitude":0.08882914197372903,"nearestLaskar":{"mode":"g4","arcsecPerYr":17.9159}},"jupiter":{"arcsecPerYr":4.256769523195223,"amplitude":0.044182672664934045,"nearestLaskar":{"mode":"g5","arcsecPerYr":4.2575}},"saturn":{"arcsecPerYr":28.245581358956457,"amplitude":0.04819349426795283,"nearestLaskar":{"mode":"g6","arcsecPerYr":28.2455}},"uranus":{"arcsecPerYr":3.921148698318919,"amplitude":0.0332189082697614,"nearestLaskar":{"mode":"g5","arcsecPerYr":4.2575}},"neptune":{"arcsecPerYr":0.6065154396549126,"amplitude":0.009569000717364112,"nearestLaskar":{"mode":"g8","arcsecPerYr":0.673}}},"s":{"mercury":{"arcsecPerYr":-5.586173808637174,"amplitude":0.059409340430501154,"nearestLaskar":{"mode":"s1","arcsecPerYr":-5.6197}},"venus":{"arcsecPerYr":-18.3363903851603,"amplitude":0.013576723462640201,"nearestLaskar":{"mode":"s3","arcsecPerYr":-18.8506}},"earth":{"arcsecPerYr":-18.39611848918824,"amplitude":0.01184463735421656,"nearestLaskar":{"mode":"s3","arcsecPerYr":-18.8506}},"mars":{"arcsecPerYr":-17.545402434182556,"amplitude":0.021473581268835227,"nearestLaskar":{"mode":"s4","arcsecPerYr":-17.7553}},"jupiter":{"arcsecPerYr":-26.347747510182444,"amplitude":0.0031511446932465333,"nearestLaskar":{"mode":"s6","arcsecPerYr":-26.3475}},"saturn":{"arcsecPerYr":-26.34770515585438,"amplitude":0.007853480398801458,"nearestLaskar":{"mode":"s6","arcsecPerYr":-26.3475}},"uranus":{"arcsecPerYr":-2.999782557988895,"amplitude":0.008744980387074497,"nearestLaskar":{"mode":"s7","arcsecPerYr":-2.9927}},"neptune":{"arcsecPerYr":-0.7119237190344891,"amplitude":0.005960579851589255,"nearestLaskar":{"mode":"s8","arcsecPerYr":-0.6919}}},"secularModes":{"mercury":{"z":[{"omegaRadPerYr":0.000027031818463225768,"re":0.0061578259451980115,"im":0.17534287262605214},{"omegaRadPerYr":0.00003762575562965475,"re":0.022801391439964295,"im":0.008306970885650663},{"omegaRadPerYr":0.00001819756010161927,"re":0.019634392385947316,"im":0.014089365629220058},{"omegaRadPerYr":0.000011448057114609211,"re":-0.005593515523159691,"im":-0.0029052231145468826},{"omegaRadPerYr":0.00004414416237516322,"re":-0.0058059195322990535,"im":-0.0014204432190273834}],"zeta":[{"omegaRadPerYr":-0.000027080770518521117,"re":0.058209232182515294,"im":0.011937299831838749},{"omegaRadPerYr":-0.00003532228218977498,"re":0.004745715778503308,"im":0.009067515752921801},{"omegaRadPerYr":6.775714890718091e-8,"re":-0.0039039071253357234,"im":0.013489752627573397},{"omegaRadPerYr":-0.000014531803306709756,"re":-0.0027805829079540424,"im":0.001873307195814228},{"omegaRadPerYr":-0.00008871641521465394,"re":-0.00011206141890946473,"im":-0.0024785290535285108},{"omegaRadPerYr":-0.00004086484773308675,"re":-0.0009298161832617493,"im":0.0013601243172003264},{"omegaRadPerYr":-0.0000320673476361423,"re":-0.013260807519741909,"im":0.010385681846746578}]},"venus":{"z":[{"omegaRadPerYr":0.000035904553360186896,"re":-0.0211984643558249,"im":-0.007750145786322514},{"omegaRadPerYr":0.000021373474422862907,"re":0.016886761236088624,"im":0.011238461694226397},{"omegaRadPerYr":0.0000891126674473552,"re":0.0050874946506860065,"im":-0.005109367673184332},{"omegaRadPerYr":0.00002871637284884016,"re":-0.0017393876896891237,"im":0.005587660035943027},{"omegaRadPerYr":0.0000799342923050964,"re":-0.0044448366327981305,"im":-0.0000503440797393948},{"omegaRadPerYr":0.000012541690188563,"re":0.0004535723363856848,"im":0.0009117376424311817}],"zeta":[{"omegaRadPerYr":-0.00008889595040236661,"re":0.0014429354865157266,"im":0.013492668736937167},{"omegaRadPerYr":-2.9208356071391507e-8,"re":-0.0038419612953034085,"im":0.01343833962446885},{"omegaRadPerYr":-0.000027486544944080902,"re":0.008423422326469315,"im":0.0009256786850090009},{"omegaRadPerYr":-0.000035402171418589797,"re":0.0007435050926828158,"im":-0.0028971907452019956},{"omegaRadPerYr":-0.0000816605133107709,"re":-0.0010567171844393416,"im":0.0017536585345055515},{"omegaRadPerYr":-0.00009527377513796924,"re":0.001562527173160095,"im":0.00142794192883987},{"omegaRadPerYr":-0.000022714283438616226,"re":0.0006900663832152563,"im":0.0009409483713469917},{"omegaRadPerYr":-0.000012901293108561725,"re":-0.0007909153616483306,"im":0.0007730683997926797}]},"earth":{"z":[{"omegaRadPerYr":0.000021071990516043863,"re":0.016301183796398024,"im":0.010410715504576574},{"omegaRadPerYr":0.000035854880135688966,"re":-0.016689300824841616,"im":-0.00587694407980285},{"omegaRadPerYr":0.00008867935711133655,"re":-0.006205359589321793,"im":0.0059045379227095785},{"omegaRadPerYr":0.00007976873965068339,"re":0.003442662776173624,"im":0.00018161801434096533},{"omegaRadPerYr":0.000028440629463153055,"re":-0.0007693818323351555,"im":0.0036759836693912766},{"omegaRadPerYr":0.0001368996733554364,"re":-0.0008112549290125483,"im":0.0011800841029160098}],"zeta":[{"omegaRadPerYr":-2.789132719584616e-8,"re":-0.003980175066603849,"im":0.01346535718722163},{"omegaRadPerYr":-0.00008918684866422754,"re":-0.0017818272301117842,"im":-0.01171473788270621},{"omegaRadPerYr":-0.000027565953011645597,"re":0.005837345967007995,"im":0.0005767264828698533},{"omegaRadPerYr":-0.000035436881992393566,"re":0.0005316599469742484,"im":-0.002298310523068399},{"omegaRadPerYr":-0.00012766579969759884,"re":-0.0006080730450000734,"im":0.0011811620431347754},{"omegaRadPerYr":-0.00008175633290332968,"re":0.0008468767179477169,"im":-0.0014453751935461902},{"omegaRadPerYr":-0.00009544829395201416,"re":-0.0013543922729998166,"im":-0.0011678254911581005},{"omegaRadPerYr":-0.000022618656478089485,"re":0.0008212474154199974,"im":0.0007376186464093101}]},"mars":{"z":[{"omegaRadPerYr":0.00008686259646922313,"re":0.06413361286031954,"im":-0.061461338785219796},{"omegaRadPerYr":0.000020710599293705756,"re":0.0168815770314768,"im":0.010181016750981363},{"omegaRadPerYr":0.00013701274439308748,"re":-0.004154546031788784,"im":0.0052484404204072264},{"omegaRadPerYr":0.00007830364627518509,"re":0.006610030627920962,"im":0.00716773876788036},{"omegaRadPerYr":0.0000967464223286991,"re":0.00669811842776162,"im":-0.0005917424234258758},{"omegaRadPerYr":0.00003622387429863297,"re":-0.0037118530783633074,"im":-0.001197130016454561},{"omegaRadPerYr":0.00007107828755070232,"re":-0.0030272556571569256,"im":-0.0021089438693236047}],"zeta":[{"omegaRadPerYr":-0.00008506290699879281,"re":0.007775523866870005,"im":-0.02001096343618598},{"omegaRadPerYr":-0.00009339911610380382,"re":0.009574153430346467,"im":0.01499249567600023},{"omegaRadPerYr":-2.1361701870262538e-8,"re":-0.003652982290513836,"im":0.013619195708169822},{"omegaRadPerYr":-0.00012775359218502626,"re":-0.0023045039444621073,"im":0.0035319422124707343},{"omegaRadPerYr":-0.00007647491607131078,"re":0.0003559447186960134,"im":0.00225681738420922},{"omegaRadPerYr":-0.00009952035224595763,"re":-0.002686141523001369,"im":-0.0032247663817401412}]},"jupiter":{"z":[{"omegaRadPerYr":0.000020637401021751606,"re":0.03775130376392058,"im":0.022955339856793808},{"omegaRadPerYr":0.0001369384796979771,"re":0.009695326488717567,"im":-0.012378818304894155},{"omegaRadPerYr":0.00001285183951543766,"re":-0.0008196553575553386,"im":0.0013298147968340598},{"omegaRadPerYr":0.0002532450446505381,"re":0.00041541273181667615,"im":0.0003999550758746959},{"omegaRadPerYr":0.000006063027991986138,"re":0.00018743032373578906,"im":-0.0002594778854773961},{"omegaRadPerYr":0.000031414566802098374,"re":-0.00014101517848288215,"im":0.00024144519615503003}],"zeta":[{"omegaRadPerYr":-2.1490404832806168e-8,"re":-0.0036895385366188783,"im":0.013265898846260308},{"omegaRadPerYr":-0.0001277374796658874,"re":0.0018884354550522274,"im":-0.00251606466916287},{"omegaRadPerYr":-0.000015175434386812629,"re":-0.0004021019571492075,"im":0.0003117907932519991},{"omegaRadPerYr":-0.000006632717903107953,"re":0.0003009472423168709,"im":0.0001317099906824581},{"omegaRadPerYr":0.000003955724900485721,"re":-0.0002689226108809528,"im":2.564175400368284e-7},{"omegaRadPerYr":-0.000020525770532327617,"re":0.00010370417805463956,"im":-0.000024424616444032364}]},"saturn":{"z":[{"omegaRadPerYr":0.0001369384427371457,"re":-0.02960653952726686,"im":0.03802717064120847},{"omegaRadPerYr":0.00002063674100262723,"re":0.028150073232470787,"im":0.01709774750149962},{"omegaRadPerYr":0.00025324837081694125,"re":-0.0013606989653353102,"im":-0.0013821126035298548},{"omegaRadPerYr":0.000012847385779998076,"re":-0.0006853047928644228,"im":0.0011218181664192914},{"omegaRadPerYr":0.00012770394549879298,"re":0.00030532747308216533,"im":0.00020649598646880408},{"omegaRadPerYr":0.00014631533310756968,"re":0.0002679684896809784,"im":0.00022796694930874033},{"omegaRadPerYr":-0.00009568507237176567,"re":-0.000049572612945519304,"im":0.00011688249888045971}],"zeta":[{"omegaRadPerYr":-1.9284984538258004e-8,"re":-0.003708721248959303,"im":0.013267262775914458},{"omegaRadPerYr":-0.0001277372896899594,"re":-0.00473585842558015,"im":0.006270978893125488},{"omegaRadPerYr":-0.000015325638313367067,"re":-0.000342091983477944,"im":0.0002459194020261331},{"omegaRadPerYr":-0.0000065831107802777746,"re":0.0002849200201049732,"im":0.00012107400921002766},{"omegaRadPerYr":0.000003999922886015977,"re":-0.00025809587923422754,"im":-0.000010818807501830861},{"omegaRadPerYr":-0.000020373996231109695,"re":0.00011127740663504409,"im":-0.00002191187386888525}]},"uranus":{"z":[{"omegaRadPerYr":0.000019010265346098605,"re":-0.033200286080063916,"im":0.0011121469492544251},{"omegaRadPerYr":0.000012033775574177009,"re":-0.008077561115556027,"im":0.02293125999571007},{"omegaRadPerYr":0.000023775733149813484,"re":-0.008710621833115826,"im":-0.016095355591969604},{"omegaRadPerYr":0.000007822007075432675,"re":0.0016021840612059168,"im":-0.009621969113692156},{"omegaRadPerYr":0.00002952547228417886,"re":0.0016566445996550965,"im":0.006018707505057967},{"omegaRadPerYr":0.00013694007244464723,"re":0.0009292339240691288,"im":-0.0016372467645427197}],"zeta":[{"omegaRadPerYr":7.599421366412143e-8,"re":-0.004660490353585718,"im":0.01324646340758287},{"omegaRadPerYr":-0.000014567449496838837,"re":0.006613328514408994,"im":-0.005878235417711313},{"omegaRadPerYr":-0.000007051181231496491,"re":-0.0004558064482609971,"im":-0.00031393562385899923},{"omegaRadPerYr":0.000003329914022932244,"re":0.0003411959761619822,"im":-0.0003305440071371085},{"omegaRadPerYr":-0.0001277295137673612,"re":0.00021735572403603482,"im":-0.00029463734768672754},{"omegaRadPerYr":-0.00002335403426632458,"re":-0.00006477073255467024,"im":-0.00008547519620498973}]},"neptune":{"z":[{"omegaRadPerYr":0.0000029404698294886683,"re":0.002583276204603991,"im":0.009213710369858697},{"omegaRadPerYr":0.000015819958189246093,"re":0.002410719467240076,"im":-0.0028958675920111618},{"omegaRadPerYr":0.00002325097119532629,"re":0.001159396623354508,"im":0.001106111966705049},{"omegaRadPerYr":-0.0000035890886114523422,"re":-0.00020879605377416773,"im":-0.0006167290950842672},{"omegaRadPerYr":0.000030374670292163826,"re":-0.0002774301776095828,"im":-0.0002388641303570229}],"zeta":[{"omegaRadPerYr":-3.301733513849372e-7,"re":-0.008762838168102518,"im":0.010494876534409803},{"omegaRadPerYr":-0.000007353421929989998,"re":-0.0024807316856027294,"im":-0.0014503561615380218},{"omegaRadPerYr":0.000004080233598697059,"re":0.0018281727993976064,"im":0.002054509738245118},{"omegaRadPerYr":-0.000014881778065736648,"re":-0.00013356695251210882,"im":0.0011500105634289276},{"omegaRadPerYr":0.00001160480877156738,"re":-0.0005630431963197903,"im":-0.0005345014452666219},{"omegaRadPerYr":-0.000020788597979173094,"re":-0.0005111003177756488,"im":-0.00044451839396914716}]}},"windowRatesArcsecCy":{"gr":{"mercury":572.0163954148283,"venus":22.72580010599836,"earth":1154.4288756665303,"mars":1597.8081246982024,"jupiter":488.52901897634354,"saturn":-1576.6419790262526,"uranus":806.6031271547791,"neptune":9101.672820143169},"newton":{"mercury":529.0318184207404,"venus":14.090631090521121,"earth":1150.5947011086469,"mars":1596.4568002639046,"jupiter":488.4665375503103,"saturn":-1576.655982201358,"uranus":806.6007460587327,"neptune":9101.678202054029}},"windowElementRates":{"mercury":{"meanMotionDegPerYr":1494.7257434850626,"nodeRateArcsecCy":-451.23114506979533,"eccDotPerCy":0.000020426777739608027,"inclDotArcsecCy":-21.43063243338586},"venus":{"meanMotionDegPerYr":585.1779096296486,"nodeRateArcsecCy":-1000.3062148126329,"eccDotPerCy":-0.00004798428729899649,"inclDotArcsecCy":-2.9741785335138227},"earth":{"meanMotionDegPerYr":359.9936510408777,"nodeRateArcsecCy":287648.7600662079,"eccDotPerCy":-0.00004200482595462892,"inclDotArcsecCy":-22.64742397865307},"mars":{"meanMotionDegPerYr":191.40299923220516,"nodeRateArcsecCy":-1059.1798892427676,"eccDotPerCy":0.0000917178876575738,"inclDotArcsecCy":-29.268508116285304},"jupiter":{"meanMotionDegPerYr":30.347302970895168,"nodeRateArcsecCy":724.7057759408735,"eccDotPerCy":-0.0000876138498378255,"inclDotArcsecCy":-7.070016683580993},"saturn":{"meanMotionDegPerYr":12.225441692771112,"nodeRateArcsecCy":-1041.0659036365291,"eccDotPerCy":-0.00027446940576446793,"inclDotArcsecCy":8.397686122084723},"uranus":{"meanMotionDegPerYr":4.284939547595869,"nodeRateArcsecCy":114.5093750648986,"eccDotPerCy":-0.00009620843043291943,"inclDotArcsecCy":-8.163218561711115},"neptune":{"meanMotionDegPerYr":2.184556718701332,"nodeRateArcsecCy":-12.96633501054956,"eccDotPerCy":0.00038317519496411644,"inclDotArcsecCy":1.294056435039746}},"j2000AnchorElements":{"mercury":{"aAU":0.3870982306507114,"e":0.20563023607048908,"inclEclipticDeg":7.005014303274938,"ascNodeEclipticDeg":48.33053855197437,"lonPeriEclipticDeg":77.45482144099158,"meanLonEclipticDeg":252.25070308850388},"venus":{"aAU":0.723326980236553,"e":0.006755832524369414,"inclEclipticDeg":3.3945896490801655,"ascNodeEclipticDeg":76.67837411646671,"lonPeriEclipticDeg":131.86481574575365,"meanLonEclipticDeg":181.97911300917644},"earth":{"aAU":0.9999965019964896,"e":0.016702435651957018,"inclEclipticDeg":0.00010345820355474172,"ascNodeEclipticDeg":140.29217988414328,"lonPeriEclipticDeg":462.9179213996577,"meanLonEclipticDeg":100.46313620647612},"mars":{"aAU":1.5236791234560592,"e":0.09331517469683501,"inclEclipticDeg":1.8498764556630205,"ascNodeEclipticDeg":49.56200645402683,"lonPeriEclipticDeg":336.0994054433697,"meanLonEclipticDeg":355.4558712806536},"jupiter":{"aAU":5.204267043121455,"e":0.04877494875045604,"inclEclipticDeg":1.304625372772227,"ascNodeEclipticDeg":100.49162135259076,"lonPeriEclipticDeg":375.5576634246116,"meanLonEclipticDeg":34.37610122976946},"saturn":{"aAU":9.582017927199528,"e":0.05572345073837687,"inclEclipticDeg":2.4852504409844323,"ascNodeEclipticDeg":113.64296212519966,"lonPeriEclipticDeg":449.65653541437854,"meanLonEclipticDeg":50.00443784290724},"uranus":{"aAU":19.22941789809548,"e":0.04440546894120367,"inclEclipticDeg":0.7725675263742898,"ascNodeEclipticDeg":73.98941630128037,"lonPeriEclipticDeg":170.53113765495846,"meanLonEclipticDeg":313.4868371274142},"neptune":{"aAU":30.103641823294048,"e":0.01121513931197063,"inclEclipticDeg":1.7679863485740834,"ascNodeEclipticDeg":131.79386605766496,"lonPeriEclipticDeg":397.44244290669224,"meanLonEclipticDeg":305.20853660850446}},"invariablePlane":{"inclEclipticDeg":1.5785089212841052,"ascNodeEclipticDeg":107.5823599360674},"relativisticSupplementArcsecCy":{"mercury":42.98142753750674,"venus":8.624988679409013,"earth":3.838964853078437,"mars":1.3510691613456707,"jupiter":0.06243854269534776,"saturn":0.013727538363259385,"uranus":0.0023997870642552053,"neptune":0.0007833188044413818},"checks":{"mercuryClosureArcsecCy":{"measuredWindowDelta":42.98457699408789,"derivedInstantaneous":42.98142753750674,"diff":0.003149456581148513,"tolerance":0.1},"earthMeanMotionVsSiderealAnchor":{"engineDegPerYr":359.9936510408777,"modelSiderealDegPerYr":359.9937285652708,"diffArcsecPerYr":-0.279087815283674,"tolerance":2},"saturnG6":{"measured":28.245581358956457,"laskar":28.2455},"jupiterG5":{"measured":4.256769523195223,"laskar":4.2575}},"inputs":{"generator":"node tools/verify/nbody-secular.js --write","files":{"packages/physics/src/planets/keplerian-chain.cjs":"sha256:ac48a70bef8668b8cde7e2ef28f398d96cf03cf46bc4ba742f60c315c5cbeb52","public/input/astro-reference.json":"sha256:f6ae6039bb99affc6ba02952373ba052ca980a267c6d7faa6d7a9abae65102b9","tools/explore/j2000-state.mjs":"sha256:ef15efde06948b36b589e3f790e6c5ccda64b8c1e1899cb4ff1e5f1571149611","tools/explore/k45-residual-naff.mjs":"sha256:228eb4874adca9171d61c1697ffbbaac3ce82891476a34762bf882840ccae406","tools/explore/k45e-amplitude-solve.mjs":"sha256:d5ce9f8d3e38d49988b089542882833dd4c631125b5b4e21eff13b119eee45e8","tools/explore/lattice-long-window-test.mjs":"sha256:d45dea6a754b8ab6502432ecb0cd463ef2d5780418b0fecd694ac1d5c1bed11f","tools/explore/naff-frequencies.mjs":"sha256:d875f65e0346346bde09402a0620f8109e3d0fc90e052ce8900b6f4af4ac0e5f","tools/explore/nbody-wh.mjs":"sha256:42947b7492e81dd412a97e0a794412706d16d6a42f2fde38310877fd1051c777","tools/lib/keplerian-chain.js":"sha256:620299515d5520bb3a03fba5affafc7a036fb151fca3457a5194e8771cc97fb8","tools/verify/nbody-secular.js":"sha256:95873972aab80bc156ec4c709e6a4e197699a7c0d2f4db1159a08178ffc3e3d8"}},"periodicTerms":{"mercury":{"mlonArcsec":[{"omegaRadPerYr":1.1094782578638633,"cos":0.4283393261961084,"sin":-7.326527509234423},{"omegaRadPerYr":5.661360380927949,"cos":-2.042649039570386,"sin":2.931772290428614}],"aPpm":[],"z":[],"zeta":[],"windowAffine":{"mlon":{"off":-3.0393736875871302,"slope":2.841277225316435},"a":{"off":0.2758746522782975,"slope":-7.212979068927238e-8},"k":{"off":-0.000010308133413000659,"slope":-3.078102566616934e-7},"h":{"off":-0.000016422197583177168,"slope":3.7560192853821967e-7},"q":{"off":0.000010395164103761334,"slope":-1.838228216218485e-7},"p":{"off":-0.0000045514783478873524,"slope":-4.54454512200622e-8}}},"venus":{"mlonArcsec":[],"aPpm":[],"z":[{"omegaRadPerYr":1.5773449192709434,"re":5.7688362360462365e-8,"im":5.534221828564653e-8},{"omegaRadPerYr":-1.5773449192709434,"re":0.000010314865584099027,"im":-0.0000198748787238016}],"zeta":[],"windowAffine":{"mlon":{"off":3.5948127312304887,"slope":0.5465947510597761},"a":{"off":4.008943004747135,"slope":7.075860643009611e-7},"k":{"off":0.00001907619455854608,"slope":-1.3082845363477187e-8},"h":{"off":0.00003129559857960834,"slope":-1.441522288917906e-8},"q":{"off":0.00000369074550376789,"slope":-5.1716895028481445e-8},"p":{"off":0.000005182645310723055,"slope":4.982987600455474e-8}}},"mars":{"mlonArcsec":[{"omegaRadPerYr":0.003412137087635026,"cos":53.66134652943842,"sin":17.0702224095311},{"omegaRadPerYr":0.19158768233986423,"cos":4.119097641894965,"sin":-4.748875287824893},{"omegaRadPerYr":0.39807082074986866,"cos":12.712294840261926,"sin":-4.8937042567324385},{"omegaRadPerYr":0.7961398668364265,"cos":1.4218153844689059,"sin":4.144231910196455}],"aPpm":[],"z":[{"omegaRadPerYr":0.3981475229837692,"re":-0.000006022352586612927,"im":-0.000016334865019193796},{"omegaRadPerYr":-0.3981475229837692,"re":-1.906831770330436e-7,"im":-4.274257222159089e-7},{"omegaRadPerYr":0.5296892164591163,"re":-0.00003701074387998172,"im":-0.000026873075674723054},{"omegaRadPerYr":-0.5296892164591163,"re":-4.860521864995133e-7,"im":3.4682346833132817e-7}],"zeta":[],"windowAffine":{"mlon":{"off":-83.40368679689061,"slope":-0.1308571754299822},"a":{"off":0.22572896074793633,"slope":0.00002462826981976612},"k":{"off":0.000055581565502195474,"slope":-3.330033606281005e-7},"h":{"off":-0.00011828467060704684,"slope":8.036921269251493e-8},"q":{"off":-0.000004188215333238016,"slope":1.6809402416370802e-7},"p":{"off":-0.000015868506481068194,"slope":-5.921860993754493e-8}}},"jupiter":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":193.3832216620771,"sin":380.597621447694},{"omegaRadPerYr":0.0012063073379189023,"cos":-3.9274841583289564,"sin":-80.09301290875467},{"omegaRadPerYr":0.004160979269962051,"cos":-1.69943829568573,"sin":10.726068111658648},{"omegaRadPerYr":0.005711423877210773,"cos":58.571129321431584,"sin":-126.86137607602102},{"omegaRadPerYr":0.0060611490662863445,"cos":-197.7236817832274,"sin":527.5745834567023},{"omegaRadPerYr":0.006400320486794552,"cos":379.14030538693584,"sin":-996.4275081012628},{"omegaRadPerYr":0.006927123132186677,"cos":-96.86651973973018,"sin":-625.8640378432207},{"omegaRadPerYr":0.00734753548346981,"cos":8.43825109969694,"sin":46.700085406090466},{"omegaRadPerYr":0.013416263751242975,"cos":2.917377177432902,"sin":-10.573630606149845},{"omegaRadPerYr":0.10286332259410932,"cos":-55.41328203440606,"sin":28.51871156692714},{"omegaRadPerYr":0.10341539484729162,"cos":-77.12097788008923,"sin":9.202995253429414},{"omegaRadPerYr":0.1100425288520466,"cos":3.899298688610127,"sin":-10.215251943431543},{"omegaRadPerYr":0.20645396403363098,"cos":-12.573442445414853,"sin":6.295822342082753},{"omegaRadPerYr":0.21316426593910423,"cos":10.054032585538861,"sin":-1.4152085169745214},{"omegaRadPerYr":0.3163921030750765,"cos":14.356082594113289,"sin":-47.02291299274492},{"omegaRadPerYr":0.4196206573492547,"cos":-18.86823087866421,"sin":-20.24646022413696},{"omegaRadPerYr":0.5228460556683714,"cos":-3.4375496090271564,"sin":0.6151505966978332},{"omegaRadPerYr":0.5295794256693848,"cos":3.217907378493207,"sin":1.975307816916936},{"omegaRadPerYr":0.6327839673705462,"cos":35.3349228950653,"sin":-56.4049785284849},{"omegaRadPerYr":0.7360122252144383,"cos":-4.7168510713684295,"sin":-9.5724698724},{"omegaRadPerYr":0.949175502963057,"cos":17.822449799701438,"sin":-16.382728937959474},{"omegaRadPerYr":1.2655672106357103,"cos":8.87498412842184,"sin":-4.569657084971597}],"aPpm":[{"omegaRadPerYr":0.006719118472690749,"cos":48.57374276056867,"sin":5.718778591306203},{"omegaRadPerYr":0.10316587166928487,"cos":-20.64279315909391,"sin":-58.4592094563138},{"omegaRadPerYr":0.31639212053382026,"cos":37.85268365288874,"sin":11.814375674076771},{"omegaRadPerYr":0.4196197886355212,"cos":32.19572358006155,"sin":-26.99428023819792},{"omegaRadPerYr":0.6327837640748681,"cos":112.58712391466997,"sin":70.37241144145064},{"omegaRadPerYr":0.7360111762024295,"cos":20.869632878207252,"sin":-9.118091922845995},{"omegaRadPerYr":0.9491754071485186,"cos":40.75667943910494,"sin":43.811460605574815}],"z":[{"omegaRadPerYr":-0.0006207787083493434,"re":-0.000007760801206480335,"im":0.0000016579719102905573},{"omegaRadPerYr":0.0006207787083493449,"re":-0.000008695682534227633,"im":-0.000006359405183752185},{"omegaRadPerYr":-0.004432186705238992,"re":3.2207615300300247e-7,"im":-6.196347944817902e-7},{"omegaRadPerYr":0.006185044486880686,"re":-0.000004731941541673283,"im":-0.0000017729858354297809},{"omegaRadPerYr":0.006526633569639799,"re":0.00004150382284636084,"im":0.000017534400952133703},{"omegaRadPerYr":0.006841730692169909,"re":-0.0002026998234541423,"im":0.0003233646880686746},{"omegaRadPerYr":0.007470533994347621,"re":-0.0000049281296015436406,"im":-0.0000012002820271097082},{"omegaRadPerYr":0.013548716908851125,"re":-0.000002377738793176193,"im":0.000006656435245445941},{"omegaRadPerYr":-0.0963835641459155,"re":0.000004243818371947522,"im":0.000006318732294994447},{"omegaRadPerYr":-0.10309304895354462,"re":0.0002599772038145943,"im":0.0005935193398974658},{"omegaRadPerYr":0.10334256718399279,"re":0.00001068106998793681,"im":-7.548205310553664e-7},{"omegaRadPerYr":-0.10355795380749366,"re":-2.1154636946827e-7,"im":-5.390710095107589e-8},{"omegaRadPerYr":0.10974751126305515,"re":0.0000011302669198675927,"im":0.000006702466721595302},{"omegaRadPerYr":-0.10980538631044515,"re":-0.000002866815045583102,"im":-0.000009885070817152992},{"omegaRadPerYr":0.11007006680531065,"re":-0.00013061727670124666,"im":0.000009881348055011194},{"omegaRadPerYr":0.20631979856483246,"re":5.04298118741976e-7,"im":2.480806224515503e-7},{"omegaRadPerYr":-0.20631979856483246,"re":0.00006341492203955716,"im":0.000011273250168154838},{"omegaRadPerYr":0.2132961022923942,"re":-0.00005065824330209699,"im":-0.00006271190037317963},{"omegaRadPerYr":-0.2132961022923942,"re":-0.000004406921581341513,"im":-0.0000016060783929656262},{"omegaRadPerYr":-0.30955001412647276,"re":0.0000056019124603202195,"im":-0.000005441874625394522},{"omegaRadPerYr":0.41948265838592674,"re":-9.509570952152945e-8,"im":-0.0000012590269907950825},{"omegaRadPerYr":-0.41948265838592674,"re":0.000014641220619062486,"im":0.00010495558350565439},{"omegaRadPerYr":0.426466505091871,"re":-0.0000064497978114164694,"im":0.000013430976495086736},{"omegaRadPerYr":-0.426466505091871,"re":-1.7392937473622375e-8,"im":-0.000002543548554022179},{"omegaRadPerYr":0.5227123063902634,"re":-6.493200167943617e-8,"im":-1.9428718738465597e-7},{"omegaRadPerYr":-0.5227123063902634,"re":0.00001824269392489439,"im":0.00000906975764089715},{"omegaRadPerYr":0.5296909646421464,"re":-0.000023988048624019953,"im":-0.000016305548718652476},{"omegaRadPerYr":0.7358764924026054,"re":-5.772321676657591e-7,"im":-9.031194308086103e-8},{"omegaRadPerYr":-0.7358764924026054,"re":-0.000004926448326111552,"im":0.00003725847350296657}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":0.0000017148670408172224,"im":-1.1979774717324106e-7},{"omegaRadPerYr":0.0006207787083493434,"re":0.0000073648358837529556,"im":-0.000001424067731329963},{"omegaRadPerYr":0.0011047092477748065,"re":-7.000878721120519e-7,"im":-2.3731715104835338e-7},{"omegaRadPerYr":0.0071090112684356,"re":-0.000003975092067696403,"im":0.0000075798744823925934}],"windowAffine":{"mlon":{"off":-276.6789283580293,"slope":6.146016597905851},"a":{"off":-319.6050905273606,"slope":0.0007796076926885039},"k":{"off":0.000014289210688706095,"slope":2.880479286878237e-8},"h":{"off":-0.001073832363366988,"slope":-2.534500776380545e-8},"q":{"off":-0.0000010335341247600158,"slope":1.4914208056557646e-9},"p":{"off":-0.000008818002194016852,"slope":3.0856264717746908e-9}}},"saturn":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":-451.253615891754,"sin":145.98152908438132},{"omegaRadPerYr":0.004165525534002769,"cos":5.787274939055933,"sin":-12.703810065013153},{"omegaRadPerYr":0.005711612505032101,"cos":-189.54704549967167,"sin":-160.138901914935},{"omegaRadPerYr":0.006061128582866573,"cos":603.7466010253094,"sin":-8.700856030526818},{"omegaRadPerYr":0.0064003167157022246,"cos":-1037.3698907699634,"sin":1226.0959465379547},{"omegaRadPerYr":0.006927098454757736,"cos":279.6703017478956,"sin":2098.4367623243365},{"omegaRadPerYr":0.007347527790309774,"cos":-31.43305366096744,"sin":-283.15643985756446},{"omegaRadPerYr":0.009480611716879448,"cos":-0.4507335945350436,"sin":4.79424382361373},{"omegaRadPerYr":0.010945707057204556,"cos":25.998025191315012,"sin":6.51039808953889},{"omegaRadPerYr":0.01341613162135763,"cos":-7.425964486999675,"sin":26.129189937928867},{"omegaRadPerYr":0.06380203049325128,"cos":-4.956781443209341,"sin":-5.857273277892975},{"omegaRadPerYr":0.09641501836240508,"cos":1.093655918412904,"sin":-3.2100722037931555},{"omegaRadPerYr":0.10286386181613702,"cos":99.08099439180381,"sin":-63.162454954986316},{"omegaRadPerYr":0.10333438844615983,"cos":212.53124729979737,"sin":-24.123206548331538},{"omegaRadPerYr":0.11004419279928404,"cos":-8.76642821816064,"sin":25.14155702073091},{"omegaRadPerYr":0.1384221456508977,"cos":-4.142308935304489,"sin":0.3359277714106255},{"omegaRadPerYr":0.2064531916682817,"cos":30.963724773182314,"sin":-15.259788419608947},{"omegaRadPerYr":0.2131887934790523,"cos":-24.29491341571394,"sin":-6.982168144064149},{"omegaRadPerYr":0.2770241887124282,"cos":1.4543542593835515,"sin":6.3793376087284965},{"omegaRadPerYr":0.31639189446899674,"cos":-148.12974553923905,"sin":514.8691214437579},{"omegaRadPerYr":0.3231050733335511,"cos":2.178111128712694,"sin":-4.849441591870168},{"omegaRadPerYr":0.41962101131042784,"cos":43.79639605758242,"sin":47.62049382853528},{"omegaRadPerYr":0.4263384811647367,"cos":-1.9599761156575544,"sin":-4.910375543643042},{"omegaRadPerYr":0.5228461938866507,"cos":7.6492352759963484,"sin":-1.4042408711820147},{"omegaRadPerYr":0.5296206925660197,"cos":20.82311358880523,"sin":-21.723522060178187},{"omegaRadPerYr":0.6327839463508664,"cos":-77.8067933782241,"sin":124.58143011814512},{"omegaRadPerYr":0.7360122996869195,"cos":11.252910261739688,"sin":22.663624511588285},{"omegaRadPerYr":0.8460438288764272,"cos":1.8113799261773025,"sin":20.756673170052206},{"omegaRadPerYr":0.9491754962353995,"cos":-40.339539075190224,"sin":37.047932328557295},{"omegaRadPerYr":1.2655672066097283,"cos":-20.25042369756606,"sin":10.420773654426046}],"aPpm":[{"omegaRadPerYr":0.006719059935042215,"cos":-298.1739213236028,"sin":-35.65492072514902},{"omegaRadPerYr":0.10311278023647517,"cos":329.05242810267646,"sin":168.2053446152665},{"omegaRadPerYr":0.1099870935042278,"cos":-80.20082859738086,"sin":25.677992848453474},{"omegaRadPerYr":0.20645076221400505,"cos":22.365346624696144,"sin":52.11596047023494},{"omegaRadPerYr":0.21316470395286807,"cos":22.417376358933,"sin":148.19540823121667},{"omegaRadPerYr":0.3096741611131529,"cos":40.76320120805859,"sin":6.028630477781981},{"omegaRadPerYr":0.31639181272876266,"cos":3380.8172681042483,"sin":952.19154868527},{"omegaRadPerYr":0.41962072059820554,"cos":-117.61845886216751,"sin":102.62640456035058},{"omegaRadPerYr":0.522848349625552,"cos":2.3692526123597575,"sin":25.55482510964822},{"omegaRadPerYr":0.6327843055552796,"cos":-267.8385275274031,"sin":-178.81334724872872},{"omegaRadPerYr":0.7360113200820578,"cos":-70.20882189811421,"sin":30.840529284060356},{"omegaRadPerYr":0.8460447241275829,"cos":152.71397931748962,"sin":-11.548664498369881},{"omegaRadPerYr":0.9491754312473957,"cos":-100.97703552341146,"sin":-108.78710325854236},{"omegaRadPerYr":1.265567050136826,"cos":-32.69042937836259,"sin":-61.98759537925285}],"z":[{"omegaRadPerYr":-0.004358110846151278,"re":-0.000002445279424852449,"im":0.0000017621954362468656},{"omegaRadPerYr":0.006181644107420951,"re":0.000019239809643427013,"im":0.000026302645815428275},{"omegaRadPerYr":0.006525673611358515,"re":-0.00017162207988757243,"im":-0.00012381490122963492},{"omegaRadPerYr":0.006842443147971666,"re":0.0008160379290510822,"im":-0.0012855611879206686},{"omegaRadPerYr":0.007464263599308896,"re":0.000012700556847236648,"im":-0.000011961876101686816},{"omegaRadPerYr":0.011038687923256879,"re":-0.000039869855044714435,"im":0.00003195328235370556},{"omegaRadPerYr":0.013549298871283269,"re":0.000009801001526091865,"im":-0.000026447688535276757},{"omegaRadPerYr":-0.06373626925966255,"re":-0.00003596115998384089,"im":-0.000028529187552461677},{"omegaRadPerYr":-0.09638538445927783,"re":0.000015535362203103386,"im":0.000026853064771238423},{"omegaRadPerYr":-0.10309247938025248,"re":0.0002905044325100417,"im":0.0006021956537131266},{"omegaRadPerYr":0.10334344954127525,"re":-0.000019533843400768672,"im":0.000010878621921404595},{"omegaRadPerYr":0.10921440834492788,"re":-0.00003560780226338562,"im":0.000008050131621592458},{"omegaRadPerYr":-0.10921440834492788,"re":0.0000017934499315039944,"im":0.00000405315797293809},{"omegaRadPerYr":0.10975358535397606,"re":0.00017369831673455462,"im":-0.00007535465148308143},{"omegaRadPerYr":-0.10975358535397606,"re":-0.000004563988896924535,"im":-0.0000154375327254865},{"omegaRadPerYr":0.11042109885467918,"re":0.00018688710085717507,"im":-0.00012925303231366497},{"omegaRadPerYr":0.1107948956846119,"re":-0.00005742819467953064,"im":0.00002446019747635651},{"omegaRadPerYr":-0.1107948956846119,"re":3.2507064761096937e-7,"im":0.0000014893262878712717},{"omegaRadPerYr":0.2063193110741841,"re":-0.000012094578924974436,"im":-0.000015066272817853064},{"omegaRadPerYr":-0.2063193110741841,"re":-0.0002645706853712598,"im":-0.000043660297027029056},{"omegaRadPerYr":0.2130228704680447,"re":0.0007392110656689748,"im":0.0008891228393192088},{"omegaRadPerYr":-0.2130228704680447,"re":0.000018380819773470427,"im":0.000004389860388892079},{"omegaRadPerYr":-0.30955014898803845,"re":-0.000024631815470831895,"im":0.00002635073382218204},{"omegaRadPerYr":0.3161372566474592,"re":0.000010638067732514132,"im":0.00002903644464320735},{"omegaRadPerYr":-0.3161372566474592,"re":0.000044785364090127505,"im":-0.00007235123203278041},{"omegaRadPerYr":0.3232395099583198,"re":-0.0000030767740423315698,"im":-0.00002580327386509728},{"omegaRadPerYr":-0.3232395099583198,"re":-8.037783708694097e-7,"im":0.0000013792616646490144},{"omegaRadPerYr":0.41948429875117665,"re":-0.0000024400754535557023,"im":8.894450263194997e-7},{"omegaRadPerYr":-0.41948429875117665,"re":-0.00005542845317142494,"im":-0.00044582635037752926},{"omegaRadPerYr":0.42644865463819764,"re":0.00007629843791169079,"im":-0.00004431512896241777},{"omegaRadPerYr":-0.42644865463819764,"re":-3.142917811194328e-7,"im":0.000010823856186704562},{"omegaRadPerYr":0.5227089862323508,"re":0.000003410979417831606,"im":0.0000030363670326161395},{"omegaRadPerYr":-0.5227089862323508,"re":-0.00007781393434095757,"im":-0.000038627649196321925},{"omegaRadPerYr":0.5296908859098071,"re":0.0016272720362705665,"im":0.0011111321002679347},{"omegaRadPerYr":-0.6327562885720048,"re":0.000029869908761550486,"im":0.00004153187994553486},{"omegaRadPerYr":0.7358761721222311,"re":0.000002104902323996618,"im":-5.169275046806296e-7},{"omegaRadPerYr":-0.7358761721222311,"re":0.00002159732009990703,"im":-0.00016115133722286416},{"omegaRadPerYr":0.8391031676474132,"re":-3.2200579003446994e-7,"im":-1.921602155098948e-7},{"omegaRadPerYr":-0.8391031676474132,"re":-0.000029573064620902294,"im":-0.00002687687857849615},{"omegaRadPerYr":0.8460633253903981,"re":-0.0000182912621724972,"im":-0.000004960467884280318},{"omegaRadPerYr":-0.8460633253903981,"re":0.000002270968484351811,"im":-4.1450617474219755e-7},{"omegaRadPerYr":1.0522678070946976,"re":0.000002112495108837071,"im":-6.772836661571395e-7},{"omegaRadPerYr":-1.0522678070946976,"re":0.000026798123887720964,"im":-0.00006313630230370938},{"omegaRadPerYr":1.0593357383703628,"re":0.000055178325520269776,"im":0.00007541106198902492},{"omegaRadPerYr":-1.0593357383703628,"re":-0.0000011488133127119404,"im":0.0000024971143397116498}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":-8.436595912367323e-7,"im":0.000001633263627834134},{"omegaRadPerYr":0.0006207787083493434,"re":-0.000021424440269056364,"im":0.00000406741893133285},{"omegaRadPerYr":0.0011035308302650994,"re":0.0000028014305555000514,"im":3.03429131598728e-7},{"omegaRadPerYr":0.007110979736486372,"re":0.000009782653039468542,"im":-0.000018356544025335236},{"omegaRadPerYr":0.11036111149309716,"re":0.0000053050503083409155,"im":-7.394158520138554e-7},{"omegaRadPerYr":-0.11036111149309716,"re":-1.2281150228540698e-7,"im":-3.07875979063758e-7},{"omegaRadPerYr":0.31648864888649864,"re":5.930263050595727e-7,"im":-0.0000017212036515675988},{"omegaRadPerYr":-0.31648864888649864,"re":0.000006094478957977664,"im":-0.0000045938972600486}],"windowAffine":{"mlon":{"off":709.9722654779956,"slope":-15.579934294638058},"a":{"off":-2829.2103263877525,"slope":-0.004510524074380032},"k":{"off":-0.0032950974609698065,"slope":-2.0051399643096954e-8},"h":{"off":-0.0002907698308219252,"slope":-1.3596818437416563e-8},"q":{"off":-0.0000010497861227947909,"slope":-1.844836227990879e-9},"p":{"off":0.00001949409542224931,"slope":-8.310665514904321e-10}}},"uranus":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":1801.9688215276547,"sin":3696.0402015231675},{"omegaRadPerYr":0.0011579316488608284,"cos":-2487.6534406001147,"sin":-459.55088689711397},{"omegaRadPerYr":0.0016224830408352498,"cos":-1220.2966969515146,"sin":1099.2432996165028},{"omegaRadPerYr":0.002935118567074053,"cos":-86.83674347331831,"sin":-108.24685231024809},{"omegaRadPerYr":0.004155546482813653,"cos":7.118744517059694,"sin":23.57760406645599},{"omegaRadPerYr":0.009315002243089728,"cos":3.7516023313568363,"sin":7.101267898351473},{"omegaRadPerYr":0.010640504204457963,"cos":-45.57910944323328,"sin":-40.20883229440988},{"omegaRadPerYr":0.01119673478710359,"cos":-81.22235365041975,"sin":1.901281748995162},{"omegaRadPerYr":0.012145759710583907,"cos":6.889745560125585,"sin":0.1337542919867262},{"omegaRadPerYr":0.03510485087576988,"cos":-13.688922570681836,"sin":-0.13357807007057396},{"omegaRadPerYr":0.036426329598293165,"cos":-5.668712161443024,"sin":-24.347642616449427},{"omegaRadPerYr":0.03764711514559774,"cos":1.138953309753275,"sin":-6.871151194186152},{"omegaRadPerYr":0.06379838901039833,"cos":20.403291982312666,"sin":27.239956687524646},{"omegaRadPerYr":0.07318148932273885,"cos":-9.790209397106063,"sin":-27.80021241193281},{"omegaRadPerYr":0.07471215976498653,"cos":7.902379642110793,"sin":-0.774442117625175},{"omegaRadPerYr":0.10992640338436127,"cos":-5.939904215836388,"sin":-10.882753324742827},{"omegaRadPerYr":0.1385175392010205,"cos":155.21118912477402,"sin":-15.812055598809634},{"omegaRadPerYr":0.14663782569970274,"cos":-3.7488763779317598,"sin":-4.791075382227249},{"omegaRadPerYr":0.18317858258233016,"cos":-2.2663688645635784,"sin":-2.0807781596480717},{"omegaRadPerYr":0.20224498577277328,"cos":8.906763705097376,"sin":0.1380298652243485},{"omegaRadPerYr":0.21324964619950887,"cos":7.79719866947626,"sin":3.241509288620873},{"omegaRadPerYr":0.2770253845805853,"cos":-5.372427211086557,"sin":-26.160552277645316},{"omegaRadPerYr":0.34075769983231263,"cos":-0.34413062425412416,"sin":-3.4023598781892685},{"omegaRadPerYr":0.35171296920155715,"cos":6.530654205490572,"sin":4.862791616448076},{"omegaRadPerYr":0.3801532980579145,"cos":-10.061663279866217,"sin":6.615060134886086},{"omegaRadPerYr":0.4155393874689375,"cos":-8.765446247114845,"sin":2.7918680516072425},{"omegaRadPerYr":0.4549044622840928,"cos":693.1080948896936,"sin":120.18474838738872},{"omegaRadPerYr":0.45610432617458596,"cos":1.4784723033153024,"sin":-4.600733971723476},{"omegaRadPerYr":0.5296580495362411,"cos":25.53148607890865,"sin":29.126214483562098},{"omegaRadPerYr":0.9098120073368585,"cos":1.5179157507850387,"sin":-4.917034352655555},{"omegaRadPerYr":0.9845575209673397,"cos":34.71485095170867,"sin":-6.198872286264103}],"aPpm":[{"omegaRadPerYr":0.0015195464620650877,"cos":-97.92780120015847,"sin":-170.5428140152202},{"omegaRadPerYr":0.010971188991961797,"cos":15.922068967567228,"sin":-63.432796546205935},{"omegaRadPerYr":0.036210324842414696,"cos":16.212587942173556,"sin":-6.129790120421755},{"omegaRadPerYr":0.0638251399824393,"cos":10.100213421265115,"sin":75.06714450826473},{"omegaRadPerYr":0.0733720075467266,"cos":42.98239259300776,"sin":-17.9418140413923},{"omegaRadPerYr":0.07480628721946354,"cos":-98.25061077714025,"sin":-132.202002201576},{"omegaRadPerYr":0.10992773337349732,"cos":23.527834427275085,"sin":-13.195939312161588},{"omegaRadPerYr":0.13851260798083515,"cos":-111.93654476921755,"sin":-1070.016527121048},{"omegaRadPerYr":0.20224432811824086,"cos":-1.6198240173862555,"sin":23.993058869923644},{"omegaRadPerYr":0.2770277343049128,"cos":61.913236841972406,"sin":-9.835654134674343},{"omegaRadPerYr":0.35171020655145807,"cos":33.74734368162499,"sin":-41.87577534787228},{"omegaRadPerYr":0.38014999979161623,"cos":101.22109160185427,"sin":184.81826525347103},{"omegaRadPerYr":0.4155326059030616,"cos":-8.50929116085849,"sin":-24.32921998914257},{"omegaRadPerYr":0.45490446743623597,"cos":713.139927237936,"sin":-4114.6325172160405},{"omegaRadPerYr":0.4561160600364418,"cos":-27.913180144325082,"sin":-8.624546428335371},{"omegaRadPerYr":0.984557509897134,"cos":-33.18844015424147,"sin":-186.75405236611599}],"z":[{"omegaRadPerYr":-0.0006207787083493432,"re":-0.0010010271541711772,"im":0.0018777044315025746},{"omegaRadPerYr":0.0006207787083493464,"re":0.004669404370945987,"im":-0.009340747389266558},{"omegaRadPerYr":0.0009435296146423852,"re":-0.002693731244410169,"im":0.005515123870617622},{"omegaRadPerYr":-0.0011535901883012222,"re":0.00014035425010575732,"im":-0.00024989373718838423},{"omegaRadPerYr":0.0014837575606668784,"re":-0.00045779885526748995,"im":0.001029220718337651},{"omegaRadPerYr":0.0029527987688873665,"re":0.00009183113654454647,"im":0.00014226780874768813},{"omegaRadPerYr":0.004292938112541269,"re":0.00002604331453241119,"im":-0.0000026087586213451956},{"omegaRadPerYr":0.009597120283040226,"re":-0.000007669844938360622,"im":0.000021294192837364352},{"omegaRadPerYr":-0.009597120283040226,"re":-3.9726713006760554e-7,"im":6.855988059585005e-7},{"omegaRadPerYr":0.010674384178493406,"re":-0.000010533262678437352,"im":-0.0001455148230309594},{"omegaRadPerYr":0.011227739550618343,"re":0.00006715354281438808,"im":-0.00012622016168569206},{"omegaRadPerYr":0.03372910794138875,"re":-5.792844472104949e-7,"im":2.4314285495180073e-7},{"omegaRadPerYr":-0.03372910794138875,"re":-0.00000880378752168949,"im":-0.000006800427022328312},{"omegaRadPerYr":-0.03516446737018353,"re":0.000017036805195683028,"im":-0.00006576383803542369},{"omegaRadPerYr":0.03813277064323463,"re":-0.000014411793574417915,"im":0.000021543930065801352},{"omegaRadPerYr":0.03956799170730824,"re":0.0000060071290961077885,"im":0.000009377006777274802},{"omegaRadPerYr":-0.03956799170730824,"re":2.6935210872742854e-7,"im":-4.916863023382216e-8},{"omegaRadPerYr":0.05268030494966354,"re":-4.237037805796693e-8,"im":-2.2749652861175358e-7},{"omegaRadPerYr":-0.05268030494966354,"re":-0.00001162431242526334,"im":0.000006194880630876984},{"omegaRadPerYr":-0.06373512207652907,"re":-0.00022367795746631777,"im":-0.00017316839062164822},{"omegaRadPerYr":0.07165168074871991,"re":0.0000017015187480928225,"im":7.242338771966972e-7},{"omegaRadPerYr":-0.07165168074871991,"re":0.0000022253065719657005,"im":-0.0000239819546465497},{"omegaRadPerYr":0.07478159870524997,"re":0.0009483157794586808,"im":-0.0009764231771624703},{"omegaRadPerYr":0.10845808945136469,"re":-3.004883965295506e-7,"im":1.7055087357327652e-7},{"omegaRadPerYr":-0.10845808945136469,"re":-9.064387638229779e-7,"im":-0.000011385527941028099},{"omegaRadPerYr":-0.12747767226472656,"re":0.000021699265157246156,"im":0.00002376114754738344},{"omegaRadPerYr":0.13850950308176996,"re":-0.0000010910229098697519,"im":-0.000007886168725902355},{"omegaRadPerYr":-0.13850950308176996,"re":-0.000001434320086571384,"im":-0.00001963808508671571},{"omegaRadPerYr":0.1495497617854712,"re":0.000014732954282267382,"im":0.00008515250779883778},{"omegaRadPerYr":0.20222937823935716,"re":-1.1385591675988417e-7,"im":7.147831866493965e-7},{"omegaRadPerYr":-0.20222937823935716,"re":0.00004353415832027236,"im":-0.00006511784459661798},{"omegaRadPerYr":0.21329897373317086,"re":0.0003933511417178107,"im":0.00047058009044412887},{"omegaRadPerYr":-0.21329897373317086,"re":2.8327811431341513e-7,"im":-3.560359246154832e-7},{"omegaRadPerYr":0.2769038067800174,"re":-6.922779079018568e-7,"im":-0.0000013818132165140064},{"omegaRadPerYr":-0.2769038067800174,"re":-2.3494785512648875e-7,"im":-0.000016621555907303974},{"omegaRadPerYr":0.3053633220183532,"re":-3.828674197691803e-8,"im":-3.0064823844297327e-8},{"omegaRadPerYr":-0.3053633220183532,"re":0.00007882762566993446,"im":0.0000236123586415603},{"omegaRadPerYr":0.3407483470470682,"re":-1.3758316558774432e-7,"im":-2.4367154579582864e-7},{"omegaRadPerYr":-0.3407483470470682,"re":-0.000024185839542396282,"im":-0.000011566031399227259},{"omegaRadPerYr":0.38011803010191847,"re":-5.112230464978982e-8,"im":3.5576083426589514e-7},{"omegaRadPerYr":-0.38011803010191847,"re":-0.000683808108807156,"im":-0.0009409743748576826},{"omegaRadPerYr":0.38132830185858746,"re":-5.8177806967052385e-8,"im":1.6800244502590846e-7},{"omegaRadPerYr":-0.38132830185858746,"re":-0.000014034035119495699,"im":0.000007393494708343985},{"omegaRadPerYr":0.4264958876223484,"re":0.000033536519266374154,"im":0.0000032361816570982316},{"omegaRadPerYr":-0.4264958876223484,"re":2.1135509106302237e-9,"im":-2.2152515698741622e-7},{"omegaRadPerYr":0.4548421909364264,"re":-0.000006897616144456808,"im":-0.00002246641860475243},{"omegaRadPerYr":-0.4548421909364264,"re":0.00000407137788831569,"im":-0.00007288075699841603},{"omegaRadPerYr":0.5296909155630158,"re":0.0022676944652803236,"im":0.0015486566265643551},{"omegaRadPerYr":0.6044398037682881,"re":0.00001772821682494471,"im":-0.000001325745633927324},{"omegaRadPerYr":-0.6044398037682881,"re":1.8671243007549463e-7,"im":5.135484152882108e-9},{"omegaRadPerYr":0.8350185854831645,"re":1.3389962716219148e-7,"im":4.84551878795857e-8},{"omegaRadPerYr":-0.8350185854831645,"re":0.000018812120588273927,"im":-0.000007750077895326201},{"omegaRadPerYr":0.9097702890415831,"re":-5.782380719892394e-7,"im":1.9729873306333605e-7},{"omegaRadPerYr":-0.9097702890415831,"re":-0.00004113467597080967,"im":-0.000028046600646821318},{"omegaRadPerYr":1.0593442234385404,"re":0.00007767832087815946,"im":0.00010783753098964789},{"omegaRadPerYr":-1.0593442234385404,"re":-1.3556647669744362e-9,"im":3.814197973272324e-8}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":0.000009629466068512008,"im":-0.00002700542307681737},{"omegaRadPerYr":0.0006207787083493434,"re":-0.000049798841708766556,"im":0.00013244063973719405},{"omegaRadPerYr":0.0009514858307923093,"re":0.000026789231695805917,"im":-0.00007644359257728086},{"omegaRadPerYr":0.0014527887892821479,"re":-0.0000023897704328165434,"im":0.000013648719577168508},{"omegaRadPerYr":-0.0014792753244575146,"re":0.000002151034415423666,"im":0.000005190682098271777},{"omegaRadPerYr":0.0029820480249223872,"re":-0.0000013160358614767749,"im":-0.000005115909165770176},{"omegaRadPerYr":0.00445001839713232,"re":-6.717165830591991e-7,"im":9.251686604741414e-9},{"omegaRadPerYr":0.011102305337337318,"re":-0.000004628968123150622,"im":-0.0000046908160229297634},{"omegaRadPerYr":0.03663431002433444,"re":-6.097607617781723e-7,"im":9.248254018616485e-8},{"omegaRadPerYr":-0.036662600049736954,"re":4.790966947907778e-7,"im":-2.7030397322901033e-7},{"omegaRadPerYr":-0.1385862814842433,"re":0.0000034400542443838532,"im":0.0000021585069767270156},{"omegaRadPerYr":0.1496020811421664,"re":8.15990123336191e-7,"im":-7.942505016386517e-7},{"omegaRadPerYr":0.2881502651212958,"re":-0.0000010962716988804577,"im":-0.0000016121125699103533},{"omegaRadPerYr":0.45486894002023015,"re":-2.2992966985781707e-8,"im":-9.354657471556091e-9},{"omegaRadPerYr":-0.45486894002023015,"re":0.0000041579007491430415,"im":0.000004891978906915924},{"omegaRadPerYr":0.6044418164850311,"re":-0.0000037738318413916955,"im":-0.0000030151035436098662},{"omegaRadPerYr":-0.6044418164850311,"re":-7.35866162994619e-11,"im":-1.0864146466816922e-9}],"windowAffine":{"mlon":{"off":1210.0916981086646,"slope":-2.356561618102263},"a":{"off":-570.5850928990467,"slope":-0.008328826998351968},"k":{"off":-0.00366228365357873,"slope":-0.000002706626332717455},"h":{"off":0.0013833912074699532,"slope":-0.0000013941565327430463},"q":{"off":0.000017812451313420837,"slope":4.3356058040235435e-8},"p":{"off":-0.00003762382414202915,"slope":1.7014936480391533e-8}}},"neptune":{"mlonArcsec":[{"omegaRadPerYr":0.0006208681133576669,"cos":1064.212149451297,"sin":-18540.652753959734},{"omegaRadPerYr":0.0010884207287489497,"cos":-924.0362482426459,"sin":8383.82201986771},{"omegaRadPerYr":0.0014542551964391568,"cos":2226.955694353464,"sin":-3270.274366253071},{"omegaRadPerYr":0.0029389628530379795,"cos":48.078439095229676,"sin":94.12365761816456},{"omegaRadPerYr":0.035319889560920095,"cos":9.257473045853379,"sin":2.0734856552080676},{"omegaRadPerYr":0.03664876565539879,"cos":4.7094553822663965,"sin":32.60593260837659},{"omegaRadPerYr":0.0379634784712963,"cos":2.9744193339631977,"sin":2.513917234979188},{"omegaRadPerYr":0.07185421776935363,"cos":2.8052710744993297,"sin":0.02846273088874038},{"omegaRadPerYr":0.0732973641270625,"cos":6.1965389050552835,"sin":17.0773714633508},{"omegaRadPerYr":0.10987969317187546,"cos":3.60363735367916,"sin":6.863360280812679},{"omegaRadPerYr":0.1465411070471313,"cos":2.3029358223686502,"sin":2.954488343602723},{"omegaRadPerYr":0.17516600735395105,"cos":184.4413301288469,"sin":-52.32109605114765},{"omegaRadPerYr":0.35033794653247485,"cos":-1.7861093063080808,"sin":-2.9405528996126975},{"omegaRadPerYr":0.38836651611040063,"cos":9.70081182993168,"sin":5.3192582532981545},{"omegaRadPerYr":0.4915611841446312,"cos":911.0889137852095,"sin":-1.0510799754510758},{"omegaRadPerYr":0.49279773384983616,"cos":-0.5592399822047331,"sin":3.9702700781104827},{"omegaRadPerYr":0.5297024373268707,"cos":2.40320968051373,"sin":-9.399068768105197},{"omegaRadPerYr":1.021214758421749,"cos":42.2020577057518,"sin":-15.309967518050174}],"aPpm":[{"omegaRadPerYr":0.0015262400589186877,"cos":128.59464307443753,"sin":231.15748494462574},{"omegaRadPerYr":0.0028522808070564833,"cos":-21.37258121508621,"sin":10.41064755989285},{"omegaRadPerYr":0.03669498740393444,"cos":151.68816464488373,"sin":-28.109847919847983},{"omegaRadPerYr":0.0732428963963061,"cos":-33.097418893495544,"sin":11.320551289859745},{"omegaRadPerYr":0.11007776654950899,"cos":-15.641429019477593,"sin":8.577259144710313},{"omegaRadPerYr":0.17516937472508654,"cos":-326.96669731853905,"sin":-1149.3821777931403},{"omegaRadPerYr":0.38836651718787407,"cos":29.53675612865252,"sin":-54.13457963760843},{"omegaRadPerYr":0.4534159750526987,"cos":-46.68270557697238,"sin":11.759966469069417},{"omegaRadPerYr":0.49156118009313077,"cos":-5.290056175958509,"sin":-4922.302879177644},{"omegaRadPerYr":0.4928261722960873,"cos":22.10668376967481,"sin":2.1304175891318873},{"omegaRadPerYr":1.0212147268897795,"cos":-78.57315117147935,"sin":-216.34180136813907}],"z":[{"omegaRadPerYr":-0.0006207787083493432,"re":0.00000822910599695662,"im":0.00000566645788782689},{"omegaRadPerYr":0.0006207787083493453,"re":-0.0000033482623738817215,"im":-0.000011998582333036538},{"omegaRadPerYr":0.0014837734825010177,"re":0.0002465285902965811,"im":-0.000542946526804817},{"omegaRadPerYr":0.002952491806788975,"re":-0.00011247629571556469,"im":-0.00011171907883842821},{"omegaRadPerYr":-0.004414051602461347,"re":-1.1949180023376013e-8,"im":-5.895393912563796e-8},{"omegaRadPerYr":0.00441745151969733,"re":-0.000011139829747812603,"im":0.000005957961387581304},{"omegaRadPerYr":-0.0336947851363493,"re":0.000008788563557474915,"im":0.0000066100893572258815},{"omegaRadPerYr":-0.03516438841507151,"re":-0.000016831823497116864,"im":0.00006611363801678594},{"omegaRadPerYr":0.03666424259143439,"re":0.0000067161349630566706,"im":8.5863061450533e-7},{"omegaRadPerYr":0.03813296419381759,"re":0.0007689836932573089,"im":-0.0011245762260255845},{"omegaRadPerYr":-0.07181296843697238,"re":-0.0000023474904524169503,"im":0.000024443385640750307},{"omegaRadPerYr":0.07478167259300009,"re":0.00006051155974368794,"im":-0.00006241188917030075},{"omegaRadPerYr":0.08068029609791652,"re":-2.1385174933710793e-7,"im":9.47807650713311e-8},{"omegaRadPerYr":0.10840999361006448,"re":-2.1894562976651773e-8,"im":-1.842804538376415e-8},{"omegaRadPerYr":-0.10840999361006448,"re":5.153826226655718e-7,"im":0.000011407506356300657},{"omegaRadPerYr":-0.13703303990304816,"re":-0.0003233037620025506,"im":-0.00010732690949601281},{"omegaRadPerYr":0.21329898735568126,"re":0.00048778689719744165,"im":0.0005843247148884207},{"omegaRadPerYr":-0.3121996849254518,"re":2.6584347616665e-7,"im":-0.000009497238475246992},{"omegaRadPerYr":0.3502350293271937,"re":4.843040927610671e-8,"im":-1.0702237146150716e-7},{"omegaRadPerYr":-0.3502350293271937,"re":-0.000007616440459433557,"im":-0.000014833156682859016},{"omegaRadPerYr":0.41529137321236287,"re":1.442005878816463e-7,"im":-3.484512197119509e-7},{"omegaRadPerYr":-0.41529137321236287,"re":-0.00000707795193580432,"im":0.00001836075632727175},{"omegaRadPerYr":0.42649606358473324,"re":0.00004218844308149576,"im":0.000004227571689777453},{"omegaRadPerYr":-0.42649606358473324,"re":-5.658292052953387e-8,"im":-6.845099901226937e-8},{"omegaRadPerYr":0.45343148629777286,"re":-5.680507946629673e-8,"im":-9.841661999629342e-8},{"omegaRadPerYr":-0.45343148629777286,"re":-0.0010841004899122212,"im":-0.000736390221813403},{"omegaRadPerYr":0.4546133901012304,"re":6.67914668314911e-8,"im":6.897609009672202e-8},{"omegaRadPerYr":-0.4546133901012304,"re":0.00000818929299076697,"im":-0.000008038397570237945},{"omegaRadPerYr":0.4915675955310438,"re":-0.000004083522353726188,"im":0.000003744270434963885},{"omegaRadPerYr":-0.4915675955310438,"re":-0.000012301739812453286,"im":0.000010686366413055363},{"omegaRadPerYr":0.5296909041466622,"re":0.002839613383622111,"im":0.0019403577470709873},{"omegaRadPerYr":0.9830852238230905,"re":-6.720721583920492e-8,"im":3.425816645371005e-8},{"omegaRadPerYr":-0.9830852238230905,"re":-0.00005758151994324185,"im":-0.000014754794069635932},{"omegaRadPerYr":1.0593442030083966,"re":0.00009721226174654751,"im":0.0001350049744357107},{"omegaRadPerYr":-1.0593442030083966,"re":-4.1559879847366785e-8,"im":9.802298292992387e-9}],"zeta":[{"omegaRadPerYr":-0.0006207787083493432,"re":-5.057373983794714e-7,"im":0.0000031433152031555667},{"omegaRadPerYr":0.0006207787083493438,"re":0.0000029115733404898485,"im":-0.000004309627443672908},{"omegaRadPerYr":0.0014366584800648346,"re":-0.0000013572071156821169,"im":-0.000001020104238423996},{"omegaRadPerYr":-0.001480323771534016,"re":-0.0000011783259528824155,"im":-0.0000018211874549353222},{"omegaRadPerYr":0.002982469348844243,"re":9.458475398560309e-7,"im":0.000003122123819843002},{"omegaRadPerYr":0.0044510414024656955,"re":3.971188256100343e-7,"im":2.94455272695886e-8},{"omegaRadPerYr":0.03663380433896722,"re":3.593149192869475e-7,"im":-5.5827146617815774e-8},{"omegaRadPerYr":-0.17494555869955136,"re":9.099409535530744e-7,"im":-9.024205485759674e-7},{"omegaRadPerYr":-0.17549754071699553,"re":0.000001505121306046405,"im":-3.070442234723798e-7},{"omegaRadPerYr":0.49159407636236985,"re":4.796686684990757e-9,"im":3.358344123813994e-10},{"omegaRadPerYr":-0.49159407636236985,"re":-3.98804489842816e-7,"im":-0.00001005615352417885},{"omegaRadPerYr":0.5676217845108422,"re":0.000004880876845321145,"im":-0.0000023244672855910403},{"omegaRadPerYr":0.5681730424584401,"re":0.000003985093304959338,"im":-7.238476904721648e-7}],"windowAffine":{"mlon":{"off":-3600.978375847875,"slope":6.706848240846746},"a":{"off":228.34220468445073,"slope":0.013417433557641792},"k":{"off":-0.0029101681444154044,"slope":2.5117803834315305e-9},"h":{"off":-0.00012102457242531213,"slope":1.8162297961597065e-8},"q":{"off":-0.000011703165443191566,"slope":-2.5174396402677695e-9},"p":{"off":0.00001578707593265369,"slope":-1.0378417602521395e-8}}}}});
@@ -0,0 +1,141 @@
1
+ /**
2
+ * THE SECULAR-SERIES ELEMENT OVERRIDE — one home for the D5/D5b planet
3
+ * deep-time element logic (plan 02, the early planet flip).
4
+ *
5
+ * Beyond a planet's MEASURED chain-handover boundary (banked in the series
6
+ * artifact's verdict — the era chain's extrapolation is unphysical there:
7
+ * the owner-found Mercury e 0.62 / i 31° at +1.35 Myr), the secular
8
+ * elements e/ϖ/i/Ω substitute from the banked engine series inside its
9
+ * ±10-Myr span, and from the deep mode tables beyond it (the same tail
10
+ * role the obliquity hybrid uses). aAU and the mean longitude stay the
11
+ * chain's — the fast angle is well-behaved (the secular/fast split). The
12
+ * invariable-plane pair is recomputed from the substituted ecliptic
13
+ * elements with the SAME K5c exact rotation the chain evaluator applies
14
+ * (keplerian-chain.cjs is the rotation's origin; it is mirrored here
15
+ * because editing that file re-stamps the governed era artifact — a
16
+ * 30-min regen for a display consumer; fold the mirror back on the next
17
+ * natural keplerian-chain regen).
18
+ *
19
+ * Consumers (each injecting its own certified surfaces): the browser
20
+ * (src/script.js — elements, rings and positions through one path) and
21
+ * the Node engine mirror (tools/lib — the K4 parity instruments), kept
22
+ * bit-identical by the cross-engine planet probes.
23
+ */
24
+
25
+ 'use strict';
26
+
27
+ const D2R = Math.PI / 180, R2D = 180 / Math.PI;
28
+
29
+ /** Anchored mode-sum: z(t) = Σ (re + i·im)·e^{iωt}, t years from J2000. */
30
+ function modeSum(/** @type {ReadonlyArray<{omegaRadPerYr:number,re:number,im:number}>} */ modes, /** @type {number} */ t) {
31
+ let re = 0, im = 0;
32
+ for (const m of modes) {
33
+ const c = Math.cos(m.omegaRadPerYr * t), s = Math.sin(m.omegaRadPerYr * t);
34
+ re += m.re * c - m.im * s;
35
+ im += m.re * s + m.im * c;
36
+ }
37
+ return [re, im];
38
+ }
39
+
40
+ /**
41
+ * @param {{
42
+ * series: {t0Yr: number,
43
+ * bodies: Object<string, {stepYr: number,
44
+ * zetaQ: ReadonlyArray<number>, zetaP: ReadonlyArray<number>,
45
+ * zQ: ReadonlyArray<number>, zP: ReadonlyArray<number>}>,
46
+ * verdict?: {planetHandover?: {rows?: Object<string, {pastKyr: number, futureKyr: number}>}}},
47
+ * anchorElements: Object<string, {e: number, lonPeriEclipticDeg: number,
48
+ * inclEclipticDeg: number, ascNodeEclipticDeg: number}>,
49
+ * invariablePlane?: {inclEclipticDeg: number, ascNodeEclipticDeg: number},
50
+ * planetZModes: Object<string, ReadonlyArray<{omegaRadPerYr:number,re:number,im:number}>>,
51
+ * planetZetaModes: Object<string, ReadonlyArray<{omegaRadPerYr:number,re:number,im:number}>>,
52
+ * }} deps — the parsed series artifact, the chain's J2000 anchors + banked
53
+ * invariable plane, and the deep mode tables (the beyond-span tail).
54
+ */
55
+ function createSecularSeriesOverride({ series, anchorElements, invariablePlane, planetZModes, planetZetaModes }) {
56
+ const rows = (series.verdict && series.verdict.planetHandover && series.verdict.planetHandover.rows) || {};
57
+ /** @type {Object<string, any>} */
58
+ const B = {};
59
+ for (const [nm, b] of Object.entries(series.bodies)) {
60
+ if (nm === 'earth') continue;
61
+ const hv = rows[nm] || { pastKyr: 50, futureKyr: 50 };
62
+ B[nm] = {
63
+ stepYr: b.stepYr, zetaQ: b.zetaQ, zetaP: b.zetaP, zQ: b.zQ, zP: b.zP,
64
+ endYr: series.t0Yr + (b.zetaQ.length - 1) * b.stepYr,
65
+ pastYr: hv.pastKyr * 1000, futureYr: hv.futureKyr * 1000,
66
+ R: null,
67
+ };
68
+ }
69
+ const t0Yr = series.t0Yr;
70
+
71
+ const anchorsFor = (/** @type {string} */ nm, /** @type {any} */ b) => {
72
+ const A = anchorElements[nm];
73
+ const s2h = Math.sin(A.inclEclipticDeg / 2 * D2R);
74
+ const li0 = (/** @type {ReadonlyArray<number>} */ arr) => {
75
+ const x = -t0Yr / b.stepYr, i = Math.max(0, Math.min(arr.length - 2, Math.floor(x))), f = x - i;
76
+ return arr[i] * (1 - f) + arr[i + 1] * f;
77
+ };
78
+ const mz0 = modeSum(planetZModes[nm], 0);
79
+ const mq0 = modeSum(planetZetaModes[nm], 0);
80
+ return {
81
+ sz: [A.e * Math.cos(A.lonPeriEclipticDeg * D2R) - li0(b.zQ), A.e * Math.sin(A.lonPeriEclipticDeg * D2R) - li0(b.zP)],
82
+ sq: [s2h * Math.cos(A.ascNodeEclipticDeg * D2R) - li0(b.zetaQ), s2h * Math.sin(A.ascNodeEclipticDeg * D2R) - li0(b.zetaP)],
83
+ mz: [A.e * Math.cos(A.lonPeriEclipticDeg * D2R) - mz0[0], A.e * Math.sin(A.lonPeriEclipticDeg * D2R) - mz0[1]],
84
+ mq: [s2h * Math.cos(A.ascNodeEclipticDeg * D2R) - mq0[0], s2h * Math.sin(A.ascNodeEclipticDeg * D2R) - mq0[1]],
85
+ };
86
+ };
87
+
88
+ /**
89
+ * Substitute the secular elements when |t| exceeds the planet's boundary.
90
+ * Returns el untouched inside the boundary or for bodies without a block.
91
+ * @param {string} nm planet key, lowercase
92
+ * @param {number} year decimal year
93
+ * @param {*} el the chain's elements-of-date (mutated copy returned)
94
+ */
95
+ function applyToElements(nm, year, el) {
96
+ const b = B[nm];
97
+ if (!b) return el;
98
+ const t = year - 2000;
99
+ if (t >= -b.pastYr && t <= b.futureYr) return el;
100
+ if (b.R === null) b.R = anchorsFor(nm, b);
101
+ let zx, zy, qx, qy;
102
+ if (t >= t0Yr && t <= b.endYr) {
103
+ const li = (/** @type {ReadonlyArray<number>} */ arr, /** @type {number} */ tt) => {
104
+ const x = (tt - t0Yr) / b.stepYr, i = Math.max(0, Math.min(arr.length - 2, Math.floor(x))), f = x - i;
105
+ return arr[i] * (1 - f) + arr[i + 1] * f;
106
+ };
107
+ zx = li(b.zQ, t) + b.R.sz[0]; zy = li(b.zP, t) + b.R.sz[1];
108
+ qx = li(b.zetaQ, t) + b.R.sq[0]; qy = li(b.zetaP, t) + b.R.sq[1];
109
+ } else {
110
+ const mz = modeSum(planetZModes[nm], t);
111
+ const mq = modeSum(planetZetaModes[nm], t);
112
+ zx = mz[0] + b.R.mz[0]; zy = mz[1] + b.R.mz[1];
113
+ qx = mq[0] + b.R.mq[0]; qy = mq[1] + b.R.mq[1];
114
+ }
115
+ const out = Object.assign({}, el);
116
+ out.e = Math.hypot(zx, zy);
117
+ out.lonPeriEclipticDeg = ((Math.atan2(zy, zx) * R2D) % 360 + 360) % 360;
118
+ out.inclEclipticDeg = 2 * Math.asin(Math.min(1, Math.hypot(qx, qy))) * R2D;
119
+ out.ascNodeEclipticDeg = ((Math.atan2(qy, qx) * R2D) % 360 + 360) % 360;
120
+ if (invariablePlane) {
121
+ const fi = invariablePlane.inclEclipticDeg * D2R, fO = invariablePlane.ascNodeEclipticDeg * D2R;
122
+ const zf = [Math.sin(fi) * Math.sin(fO), -Math.sin(fi) * Math.cos(fO), Math.cos(fi)];
123
+ let xf = [1 - zf[0] * zf[0], -zf[0] * zf[1], -zf[0] * zf[2]];
124
+ const xn = Math.hypot(xf[0], xf[1], xf[2]); xf = [xf[0] / xn, xf[1] / xn, xf[2] / xn];
125
+ const yf = [zf[1] * xf[2] - zf[2] * xf[1], zf[2] * xf[0] - zf[0] * xf[2], zf[0] * xf[1] - zf[1] * xf[0]];
126
+ const oi = out.inclEclipticDeg * D2R, oO = out.ascNodeEclipticDeg * D2R;
127
+ const nO = [Math.sin(oi) * Math.sin(oO), -Math.sin(oi) * Math.cos(oO), Math.cos(oi)];
128
+ const nz = nO[0] * zf[0] + nO[1] * zf[1] + nO[2] * zf[2];
129
+ out.inclInvPlaneDeg = Math.acos(Math.min(1, Math.max(-1, nz))) * R2D;
130
+ const c = [zf[1] * nO[2] - zf[2] * nO[1], zf[2] * nO[0] - zf[0] * nO[2], zf[0] * nO[1] - zf[1] * nO[0]];
131
+ const cx = c[0] * xf[0] + c[1] * xf[1] + c[2] * xf[2];
132
+ const cy = c[0] * yf[0] + c[1] * yf[1] + c[2] * yf[2];
133
+ out.ascNodeInvPlaneDeg = ((Math.atan2(cy, cx) * R2D) % 360 + 360) % 360;
134
+ }
135
+ return out;
136
+ }
137
+
138
+ return { applyToElements };
139
+ }
140
+
141
+ module.exports = { createSecularSeriesOverride, modeSum };