123456789101112131415161718192021222324252627282930313233(* Claude Code
*
* Copyright (C) 2026 Yoann Padioleau
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public License
* (LGPL) as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*)(* See Planets.mli *)typeplanet={name:string;orbit:Kepler.elements;radius:float}(* JPL's table 1 at J2000: a, e, I, L, long. peri., long. node *)letplanetnameaeinclinationmean_longitudeperihelionnodediameter={name;orbit={Kepler.a;e;inclination;mean_longitude;perihelion;node};radius=diameter/.2.}letplanets=[planet"Mercury"0.387099270.205635937.00497902252.2503235077.4577962848.330765934879.;planet"Venus"0.723335660.006776723.39467605181.97909950131.6024671876.6798425512104.;planet"Earth"1.000002610.01671123(-0.00001531)100.46457166102.937681930.012756.;planet"Mars"1.523710340.093394101.84969142(-4.55343205)(-23.94362959)49.559538916792.;planet"Jupiter"5.202887000.048386241.3043969534.3964405114.72847983100.47390909142984.;planet"Saturn"9.536675940.053861792.4859918749.9542442392.59887831113.66242448120536.;planet"Uranus"19.189164640.047257440.77263783313.23810451170.9542763074.0169250351118.;planet"Neptune"30.069922760.008590481.77004347(-55.12002969)44.96476227131.7842257449528.]letau=149597870.7letsun_radius=695700.letmoon_distance=384400.letmoon_period=27.3217letmoon_radius=3475./.2.