ootk 6.0.0-rc.4 → 6.0.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.
Files changed (1008) hide show
  1. package/dist/main.cjs +29551 -0
  2. package/dist/main.d.cts +16961 -0
  3. package/dist/main.d.ts +16940 -32
  4. package/dist/main.js +29243 -35
  5. package/package.json +38 -25
  6. package/.claude/PROMPT.md +0 -13
  7. package/.claude/hooks/post-tool-use.ts +0 -33
  8. package/.claude/hooks/user-prompt-submit.ts +0 -138
  9. package/.claude/settings.local.json +0 -21
  10. package/.claude/skill-rules.json +0 -11
  11. package/.claude/skills/ootk-dev/SKILL.md +0 -16
  12. package/ADVANCED_FEATURES_GUIDE.md +0 -1025
  13. package/CHANGELOG.md +0 -511
  14. package/CLAUDE.md +0 -67
  15. package/FUTURE-WORK.md +0 -325
  16. package/dist/body/CelestialBody.d.ts +0 -155
  17. package/dist/body/CelestialBody.js +0 -207
  18. package/dist/body/CelestialBody.js.map +0 -1
  19. package/dist/body/CelestialBodyType.d.ts +0 -41
  20. package/dist/body/CelestialBodyType.js +0 -55
  21. package/dist/body/CelestialBodyType.js.map +0 -1
  22. package/dist/body/Earth.d.ts +0 -68
  23. package/dist/body/Earth.js +0 -198
  24. package/dist/body/Earth.js.map +0 -1
  25. package/dist/body/EphemerisBody.d.ts +0 -153
  26. package/dist/body/EphemerisBody.js +0 -235
  27. package/dist/body/EphemerisBody.js.map +0 -1
  28. package/dist/body/MoonBody.d.ts +0 -200
  29. package/dist/body/MoonBody.js +0 -414
  30. package/dist/body/MoonBody.js.map +0 -1
  31. package/dist/body/NutationAngles.d.ts +0 -38
  32. package/dist/body/NutationAngles.js +0 -24
  33. package/dist/body/NutationAngles.js.map +0 -1
  34. package/dist/body/PlanetBody.d.ts +0 -130
  35. package/dist/body/PlanetBody.js +0 -293
  36. package/dist/body/PlanetBody.js.map +0 -1
  37. package/dist/body/PrecessionAngles.d.ts +0 -29
  38. package/dist/body/PrecessionAngles.js +0 -24
  39. package/dist/body/PrecessionAngles.js.map +0 -1
  40. package/dist/body/SolarSystem.d.ts +0 -124
  41. package/dist/body/SolarSystem.js +0 -218
  42. package/dist/body/SolarSystem.js.map +0 -1
  43. package/dist/body/SunBody.d.ts +0 -253
  44. package/dist/body/SunBody.js +0 -433
  45. package/dist/body/SunBody.js.map +0 -1
  46. package/dist/body/index.d.ts +0 -36
  47. package/dist/body/index.js +0 -39
  48. package/dist/body/index.js.map +0 -1
  49. package/dist/comm/Antenna.d.ts +0 -112
  50. package/dist/comm/Antenna.js +0 -173
  51. package/dist/comm/Antenna.js.map +0 -1
  52. package/dist/comm/Beacon.d.ts +0 -141
  53. package/dist/comm/Beacon.js +0 -268
  54. package/dist/comm/Beacon.js.map +0 -1
  55. package/dist/comm/CommTypes.d.ts +0 -181
  56. package/dist/comm/CommTypes.js +0 -115
  57. package/dist/comm/CommTypes.js.map +0 -1
  58. package/dist/comm/CommunicationDevice.d.ts +0 -115
  59. package/dist/comm/CommunicationDevice.js +0 -142
  60. package/dist/comm/CommunicationDevice.js.map +0 -1
  61. package/dist/comm/Receiver.d.ts +0 -139
  62. package/dist/comm/Receiver.js +0 -219
  63. package/dist/comm/Receiver.js.map +0 -1
  64. package/dist/comm/Transmitter.d.ts +0 -136
  65. package/dist/comm/Transmitter.js +0 -273
  66. package/dist/comm/Transmitter.js.map +0 -1
  67. package/dist/comm/Transponder.d.ts +0 -154
  68. package/dist/comm/Transponder.js +0 -281
  69. package/dist/comm/Transponder.js.map +0 -1
  70. package/dist/comm/index.d.ts +0 -30
  71. package/dist/comm/index.js +0 -26
  72. package/dist/comm/index.js.map +0 -1
  73. package/dist/conjunction/CatalogScreener.d.ts +0 -134
  74. package/dist/conjunction/CatalogScreener.js +0 -213
  75. package/dist/conjunction/CatalogScreener.js.map +0 -1
  76. package/dist/conjunction/ConjunctionAssessment.d.ts +0 -149
  77. package/dist/conjunction/ConjunctionAssessment.js +0 -288
  78. package/dist/conjunction/ConjunctionAssessment.js.map +0 -1
  79. package/dist/conjunction/ConjunctionEvent.d.ts +0 -110
  80. package/dist/conjunction/ConjunctionEvent.js +0 -154
  81. package/dist/conjunction/ConjunctionEvent.js.map +0 -1
  82. package/dist/conjunction/CovarianceRealism.d.ts +0 -189
  83. package/dist/conjunction/CovarianceRealism.js +0 -348
  84. package/dist/conjunction/CovarianceRealism.js.map +0 -1
  85. package/dist/conjunction/ProbabilityOfCollision.d.ts +0 -102
  86. package/dist/conjunction/ProbabilityOfCollision.js +0 -242
  87. package/dist/conjunction/ProbabilityOfCollision.js.map +0 -1
  88. package/dist/conjunction/ScreeningFilter.d.ts +0 -112
  89. package/dist/conjunction/ScreeningFilter.js +0 -160
  90. package/dist/conjunction/ScreeningFilter.js.map +0 -1
  91. package/dist/conjunction/index.d.ts +0 -22
  92. package/dist/conjunction/index.js +0 -23
  93. package/dist/conjunction/index.js.map +0 -1
  94. package/dist/constellation/ConstellationGenerator.d.ts +0 -137
  95. package/dist/constellation/ConstellationGenerator.js +0 -270
  96. package/dist/constellation/ConstellationGenerator.js.map +0 -1
  97. package/dist/constellation/index.d.ts +0 -17
  98. package/dist/constellation/index.js +0 -18
  99. package/dist/constellation/index.js.map +0 -1
  100. package/dist/coordinate/ClassicalElements.d.ts +0 -170
  101. package/dist/coordinate/ClassicalElements.js +0 -334
  102. package/dist/coordinate/ClassicalElements.js.map +0 -1
  103. package/dist/coordinate/EquinoctialElements.d.ts +0 -114
  104. package/dist/coordinate/EquinoctialElements.js +0 -172
  105. package/dist/coordinate/EquinoctialElements.js.map +0 -1
  106. package/dist/coordinate/FormatTle.d.ts +0 -95
  107. package/dist/coordinate/FormatTle.js +0 -188
  108. package/dist/coordinate/FormatTle.js.map +0 -1
  109. package/dist/coordinate/Geodetic.d.ts +0 -110
  110. package/dist/coordinate/Geodetic.js +0 -164
  111. package/dist/coordinate/Geodetic.js.map +0 -1
  112. package/dist/coordinate/Hill.d.ts +0 -49
  113. package/dist/coordinate/Hill.js +0 -222
  114. package/dist/coordinate/Hill.js.map +0 -1
  115. package/dist/coordinate/ITRF.d.ts +0 -75
  116. package/dist/coordinate/ITRF.js +0 -135
  117. package/dist/coordinate/ITRF.js.map +0 -1
  118. package/dist/coordinate/J2000.d.ts +0 -65
  119. package/dist/coordinate/J2000.js +0 -120
  120. package/dist/coordinate/J2000.js.map +0 -1
  121. package/dist/coordinate/RIC.d.ts +0 -64
  122. package/dist/coordinate/RIC.js +0 -79
  123. package/dist/coordinate/RIC.js.map +0 -1
  124. package/dist/coordinate/RelativeState.d.ts +0 -70
  125. package/dist/coordinate/RelativeState.js +0 -79
  126. package/dist/coordinate/RelativeState.js.map +0 -1
  127. package/dist/coordinate/StateVector.d.ts +0 -76
  128. package/dist/coordinate/StateVector.js +0 -97
  129. package/dist/coordinate/StateVector.js.map +0 -1
  130. package/dist/coordinate/TEME.d.ts +0 -57
  131. package/dist/coordinate/TEME.js +0 -89
  132. package/dist/coordinate/TEME.js.map +0 -1
  133. package/dist/coordinate/Tle.d.ts +0 -429
  134. package/dist/coordinate/Tle.js +0 -866
  135. package/dist/coordinate/Tle.js.map +0 -1
  136. package/dist/coordinate/index.d.ts +0 -12
  137. package/dist/coordinate/index.js +0 -13
  138. package/dist/coordinate/index.js.map +0 -1
  139. package/dist/coordinate/tle-format-data.d.ts +0 -41
  140. package/dist/coordinate/tle-format-data.js +0 -46
  141. package/dist/coordinate/tle-format-data.js.map +0 -1
  142. package/dist/covariance/CovarianceSample.d.ts +0 -46
  143. package/dist/covariance/CovarianceSample.js +0 -221
  144. package/dist/covariance/CovarianceSample.js.map +0 -1
  145. package/dist/covariance/StateCovariance.d.ts +0 -42
  146. package/dist/covariance/StateCovariance.js +0 -65
  147. package/dist/covariance/StateCovariance.js.map +0 -1
  148. package/dist/covariance/index.d.ts +0 -2
  149. package/dist/covariance/index.js +0 -3
  150. package/dist/covariance/index.js.map +0 -1
  151. package/dist/data/DataHandler.d.ts +0 -66
  152. package/dist/data/DataHandler.js +0 -80
  153. package/dist/data/DataHandler.js.map +0 -1
  154. package/dist/data/values/Egm96Data.d.ts +0 -37
  155. package/dist/data/values/Egm96Data.js +0 -63
  156. package/dist/data/values/Egm96Data.js.map +0 -1
  157. package/dist/data/values/HpAtmosphereData.d.ts +0 -33
  158. package/dist/data/values/HpAtmosphereData.js +0 -58
  159. package/dist/data/values/HpAtmosphereData.js.map +0 -1
  160. package/dist/data/values/HpAtmosphereResult.d.ts +0 -29
  161. package/dist/data/values/HpAtmosphereResult.js +0 -38
  162. package/dist/data/values/HpAtmosphereResult.js.map +0 -1
  163. package/dist/data/values/Iau1980Data.d.ts +0 -36
  164. package/dist/data/values/Iau1980Data.js +0 -52
  165. package/dist/data/values/Iau1980Data.js.map +0 -1
  166. package/dist/data/values/LeapSecond.d.ts +0 -27
  167. package/dist/data/values/LeapSecond.js +0 -35
  168. package/dist/data/values/LeapSecond.js.map +0 -1
  169. package/dist/data/values/LeapSecondData.d.ts +0 -41
  170. package/dist/data/values/LeapSecondData.js +0 -103
  171. package/dist/data/values/LeapSecondData.js.map +0 -1
  172. package/dist/data/values/egm96.d.ts +0 -24
  173. package/dist/data/values/egm96.js +0 -726
  174. package/dist/data/values/egm96.js.map +0 -1
  175. package/dist/data/values/hpAtmosphere.d.ts +0 -24
  176. package/dist/data/values/hpAtmosphere.js +0 -76
  177. package/dist/data/values/hpAtmosphere.js.map +0 -1
  178. package/dist/data/values/iau1980.d.ts +0 -24
  179. package/dist/data/values/iau1980.js +0 -30
  180. package/dist/data/values/iau1980.js.map +0 -1
  181. package/dist/enums/AngularDiameterMethod.d.ts +0 -27
  182. package/dist/enums/AngularDiameterMethod.js +0 -29
  183. package/dist/enums/AngularDiameterMethod.js.map +0 -1
  184. package/dist/enums/AngularDistanceMethod.d.ts +0 -27
  185. package/dist/enums/AngularDistanceMethod.js +0 -29
  186. package/dist/enums/AngularDistanceMethod.js.map +0 -1
  187. package/dist/enums/CatalogSource.d.ts +0 -10
  188. package/dist/enums/CatalogSource.js +0 -12
  189. package/dist/enums/CatalogSource.js.map +0 -1
  190. package/dist/enums/CommLink.d.ts +0 -7
  191. package/dist/enums/CommLink.js +0 -9
  192. package/dist/enums/CommLink.js.map +0 -1
  193. package/dist/enums/FovFrame.d.ts +0 -25
  194. package/dist/enums/FovFrame.js +0 -27
  195. package/dist/enums/FovFrame.js.map +0 -1
  196. package/dist/enums/FovShape.d.ts +0 -25
  197. package/dist/enums/FovShape.js +0 -27
  198. package/dist/enums/FovShape.js.map +0 -1
  199. package/dist/enums/OrbitRegime.d.ts +0 -30
  200. package/dist/enums/OrbitRegime.js +0 -32
  201. package/dist/enums/OrbitRegime.js.map +0 -1
  202. package/dist/enums/PassType.d.ts +0 -28
  203. package/dist/enums/PassType.js +0 -30
  204. package/dist/enums/PassType.js.map +0 -1
  205. package/dist/enums/SensorType.d.ts +0 -33
  206. package/dist/enums/SensorType.js +0 -35
  207. package/dist/enums/SensorType.js.map +0 -1
  208. package/dist/enums/Sgp4OpsMode.d.ts +0 -26
  209. package/dist/enums/Sgp4OpsMode.js +0 -28
  210. package/dist/enums/Sgp4OpsMode.js.map +0 -1
  211. package/dist/enums/index.d.ts +0 -10
  212. package/dist/enums/index.js +0 -11
  213. package/dist/enums/index.js.map +0 -1
  214. package/dist/errors/index.d.ts +0 -153
  215. package/dist/errors/index.js +0 -179
  216. package/dist/errors/index.js.map +0 -1
  217. package/dist/force/AtmosphericDrag.d.ts +0 -50
  218. package/dist/force/AtmosphericDrag.js +0 -92
  219. package/dist/force/AtmosphericDrag.js.map +0 -1
  220. package/dist/force/EarthGravity.d.ts +0 -53
  221. package/dist/force/EarthGravity.js +0 -142
  222. package/dist/force/EarthGravity.js.map +0 -1
  223. package/dist/force/Force.d.ts +0 -26
  224. package/dist/force/Force.js +0 -22
  225. package/dist/force/Force.js.map +0 -1
  226. package/dist/force/ForceModel.d.ts +0 -45
  227. package/dist/force/ForceModel.js +0 -83
  228. package/dist/force/ForceModel.js.map +0 -1
  229. package/dist/force/Gravity.d.ts +0 -38
  230. package/dist/force/Gravity.js +0 -47
  231. package/dist/force/Gravity.js.map +0 -1
  232. package/dist/force/SolarRadiationPressure.d.ts +0 -26
  233. package/dist/force/SolarRadiationPressure.js +0 -45
  234. package/dist/force/SolarRadiationPressure.js.map +0 -1
  235. package/dist/force/ThirdBodyGravity.d.ts +0 -26
  236. package/dist/force/ThirdBodyGravity.js +0 -59
  237. package/dist/force/ThirdBodyGravity.js.map +0 -1
  238. package/dist/force/Thrust.d.ts +0 -34
  239. package/dist/force/Thrust.js +0 -58
  240. package/dist/force/Thrust.js.map +0 -1
  241. package/dist/force/index.d.ts +0 -8
  242. package/dist/force/index.js +0 -9
  243. package/dist/force/index.js.map +0 -1
  244. package/dist/interfaces/BaseObjectParams.d.ts +0 -30
  245. package/dist/interfaces/BaseObjectParams.js +0 -24
  246. package/dist/interfaces/BaseObjectParams.js.map +0 -1
  247. package/dist/interfaces/ClassicalElementsParams.d.ts +0 -33
  248. package/dist/interfaces/ClassicalElementsParams.js +0 -24
  249. package/dist/interfaces/ClassicalElementsParams.js.map +0 -1
  250. package/dist/interfaces/EquinoctialElementsParams.d.ts +0 -35
  251. package/dist/interfaces/EquinoctialElementsParams.js +0 -24
  252. package/dist/interfaces/EquinoctialElementsParams.js.map +0 -1
  253. package/dist/interfaces/GroundPositionParams.d.ts +0 -28
  254. package/dist/interfaces/GroundPositionParams.js +0 -24
  255. package/dist/interfaces/GroundPositionParams.js.map +0 -1
  256. package/dist/interfaces/OmmFormat.d.ts +0 -62
  257. package/dist/interfaces/OmmFormat.js +0 -2
  258. package/dist/interfaces/OmmFormat.js.map +0 -1
  259. package/dist/interfaces/OptionsParams.d.ts +0 -3
  260. package/dist/interfaces/OptionsParams.js +0 -2
  261. package/dist/interfaces/OptionsParams.js.map +0 -1
  262. package/dist/interfaces/SatelliteParams.d.ts +0 -38
  263. package/dist/interfaces/SatelliteParams.js +0 -2
  264. package/dist/interfaces/SatelliteParams.js.map +0 -1
  265. package/dist/interfaces/StarObjectParams.d.ts +0 -10
  266. package/dist/interfaces/StarObjectParams.js +0 -2
  267. package/dist/interfaces/StarObjectParams.js.map +0 -1
  268. package/dist/interfaces/TimeVariables.d.ts +0 -6
  269. package/dist/interfaces/TimeVariables.js +0 -2
  270. package/dist/interfaces/TimeVariables.js.map +0 -1
  271. package/dist/interfaces/index.d.ts +0 -7
  272. package/dist/interfaces/index.js +0 -2
  273. package/dist/interfaces/index.js.map +0 -1
  274. package/dist/interpolator/ChebyshevCoefficients.d.ts +0 -50
  275. package/dist/interpolator/ChebyshevCoefficients.js +0 -94
  276. package/dist/interpolator/ChebyshevCoefficients.js.map +0 -1
  277. package/dist/interpolator/ChebyshevInterpolator.d.ts +0 -38
  278. package/dist/interpolator/ChebyshevInterpolator.js +0 -71
  279. package/dist/interpolator/ChebyshevInterpolator.js.map +0 -1
  280. package/dist/interpolator/CubicSpline.d.ts +0 -35
  281. package/dist/interpolator/CubicSpline.js +0 -69
  282. package/dist/interpolator/CubicSpline.js.map +0 -1
  283. package/dist/interpolator/CubicSplineInterpolator.d.ts +0 -36
  284. package/dist/interpolator/CubicSplineInterpolator.js +0 -80
  285. package/dist/interpolator/CubicSplineInterpolator.js.map +0 -1
  286. package/dist/interpolator/FieldInterpolator.d.ts +0 -28
  287. package/dist/interpolator/FieldInterpolator.js +0 -24
  288. package/dist/interpolator/FieldInterpolator.js.map +0 -1
  289. package/dist/interpolator/Interpolator.d.ts +0 -22
  290. package/dist/interpolator/Interpolator.js +0 -47
  291. package/dist/interpolator/Interpolator.js.map +0 -1
  292. package/dist/interpolator/LagrangeInterpolator.d.ts +0 -40
  293. package/dist/interpolator/LagrangeInterpolator.js +0 -159
  294. package/dist/interpolator/LagrangeInterpolator.js.map +0 -1
  295. package/dist/interpolator/StateInterpolator.d.ts +0 -27
  296. package/dist/interpolator/StateInterpolator.js +0 -27
  297. package/dist/interpolator/StateInterpolator.js.map +0 -1
  298. package/dist/interpolator/VerletBlendInterpolator.d.ts +0 -43
  299. package/dist/interpolator/VerletBlendInterpolator.js +0 -118
  300. package/dist/interpolator/VerletBlendInterpolator.js.map +0 -1
  301. package/dist/interpolator/index.d.ts +0 -31
  302. package/dist/interpolator/index.js +0 -32
  303. package/dist/interpolator/index.js.map +0 -1
  304. package/dist/main.js.map +0 -1
  305. package/dist/maneuver/TwoBurnOrbitTransfer.d.ts +0 -41
  306. package/dist/maneuver/TwoBurnOrbitTransfer.js +0 -65
  307. package/dist/maneuver/TwoBurnOrbitTransfer.js.map +0 -1
  308. package/dist/maneuver/Waypoint.d.ts +0 -91
  309. package/dist/maneuver/Waypoint.js +0 -179
  310. package/dist/maneuver/Waypoint.js.map +0 -1
  311. package/dist/maneuver/index.d.ts +0 -24
  312. package/dist/maneuver/index.js +0 -25
  313. package/dist/maneuver/index.js.map +0 -1
  314. package/dist/objects/AccessCalculator.d.ts +0 -112
  315. package/dist/objects/AccessCalculator.js +0 -268
  316. package/dist/objects/AccessCalculator.js.map +0 -1
  317. package/dist/objects/AccessWindow.d.ts +0 -95
  318. package/dist/objects/AccessWindow.js +0 -69
  319. package/dist/objects/AccessWindow.js.map +0 -1
  320. package/dist/objects/BaseObject.d.ts +0 -119
  321. package/dist/objects/BaseObject.js +0 -203
  322. package/dist/objects/BaseObject.js.map +0 -1
  323. package/dist/objects/CenterBody.d.ts +0 -41
  324. package/dist/objects/CenterBody.js +0 -85
  325. package/dist/objects/CenterBody.js.map +0 -1
  326. package/dist/objects/DynamicGroundObject.d.ts +0 -309
  327. package/dist/objects/DynamicGroundObject.js +0 -758
  328. package/dist/objects/DynamicGroundObject.js.map +0 -1
  329. package/dist/objects/EphemerisSatellite.d.ts +0 -209
  330. package/dist/objects/EphemerisSatellite.js +0 -480
  331. package/dist/objects/EphemerisSatellite.js.map +0 -1
  332. package/dist/objects/GroundObject.d.ts +0 -124
  333. package/dist/objects/GroundObject.js +0 -192
  334. package/dist/objects/GroundObject.js.map +0 -1
  335. package/dist/objects/GroundStation.d.ts +0 -60
  336. package/dist/objects/GroundStation.js +0 -113
  337. package/dist/objects/GroundStation.js.map +0 -1
  338. package/dist/objects/History.d.ts +0 -101
  339. package/dist/objects/History.js +0 -180
  340. package/dist/objects/History.js.map +0 -1
  341. package/dist/objects/InterpolatorType.d.ts +0 -39
  342. package/dist/objects/InterpolatorType.js +0 -41
  343. package/dist/objects/InterpolatorType.js.map +0 -1
  344. package/dist/objects/LandObject.d.ts +0 -38
  345. package/dist/objects/LandObject.js +0 -48
  346. package/dist/objects/LandObject.js.map +0 -1
  347. package/dist/objects/Marker.d.ts +0 -24
  348. package/dist/objects/Marker.js +0 -30
  349. package/dist/objects/Marker.js.map +0 -1
  350. package/dist/objects/ObjectTypes.d.ts +0 -60
  351. package/dist/objects/ObjectTypes.js +0 -18
  352. package/dist/objects/ObjectTypes.js.map +0 -1
  353. package/dist/objects/Satellite.d.ts +0 -443
  354. package/dist/objects/Satellite.js +0 -843
  355. package/dist/objects/Satellite.js.map +0 -1
  356. package/dist/objects/SpaceObject.d.ts +0 -205
  357. package/dist/objects/SpaceObject.js +0 -149
  358. package/dist/objects/SpaceObject.js.map +0 -1
  359. package/dist/objects/Star.d.ts +0 -44
  360. package/dist/objects/Star.js +0 -95
  361. package/dist/objects/Star.js.map +0 -1
  362. package/dist/objects/VisualizationHelpers.d.ts +0 -148
  363. package/dist/objects/VisualizationHelpers.js +0 -218
  364. package/dist/objects/VisualizationHelpers.js.map +0 -1
  365. package/dist/objects/index.d.ts +0 -24
  366. package/dist/objects/index.js +0 -16
  367. package/dist/objects/index.js.map +0 -1
  368. package/dist/observation/Observation.d.ts +0 -89
  369. package/dist/observation/Observation.js +0 -51
  370. package/dist/observation/Observation.js.map +0 -1
  371. package/dist/observation/ObservationOptical.d.ts +0 -48
  372. package/dist/observation/ObservationOptical.js +0 -105
  373. package/dist/observation/ObservationOptical.js.map +0 -1
  374. package/dist/observation/ObservationRadar.d.ts +0 -46
  375. package/dist/observation/ObservationRadar.js +0 -96
  376. package/dist/observation/ObservationRadar.js.map +0 -1
  377. package/dist/observation/ObservationUtils.d.ts +0 -22
  378. package/dist/observation/ObservationUtils.js +0 -46
  379. package/dist/observation/ObservationUtils.js.map +0 -1
  380. package/dist/observation/PropagatorPairs.d.ts +0 -32
  381. package/dist/observation/PropagatorPairs.js +0 -43
  382. package/dist/observation/PropagatorPairs.js.map +0 -1
  383. package/dist/observation/RAE.d.ts +0 -111
  384. package/dist/observation/RAE.js +0 -214
  385. package/dist/observation/RAE.js.map +0 -1
  386. package/dist/observation/RadecGeocentric.d.ts +0 -111
  387. package/dist/observation/RadecGeocentric.js +0 -169
  388. package/dist/observation/RadecGeocentric.js.map +0 -1
  389. package/dist/observation/RadecTopocentric.d.ts +0 -123
  390. package/dist/observation/RadecTopocentric.js +0 -200
  391. package/dist/observation/RadecTopocentric.js.map +0 -1
  392. package/dist/observation/index.d.ts +0 -26
  393. package/dist/observation/index.js +0 -27
  394. package/dist/observation/index.js.map +0 -1
  395. package/dist/operations/BoxMuller.d.ts +0 -46
  396. package/dist/operations/BoxMuller.js +0 -77
  397. package/dist/operations/BoxMuller.js.map +0 -1
  398. package/dist/operations/EulerAngles.d.ts +0 -105
  399. package/dist/operations/EulerAngles.js +0 -161
  400. package/dist/operations/EulerAngles.js.map +0 -1
  401. package/dist/operations/Matrix.d.ts +0 -170
  402. package/dist/operations/Matrix.js +0 -405
  403. package/dist/operations/Matrix.js.map +0 -1
  404. package/dist/operations/Quaternion.d.ts +0 -56
  405. package/dist/operations/Quaternion.js +0 -167
  406. package/dist/operations/Quaternion.js.map +0 -1
  407. package/dist/operations/Random.d.ts +0 -40
  408. package/dist/operations/Random.js +0 -50
  409. package/dist/operations/Random.js.map +0 -1
  410. package/dist/operations/RandomGaussianSource.d.ts +0 -24
  411. package/dist/operations/RandomGaussianSource.js +0 -43
  412. package/dist/operations/RandomGaussianSource.js.map +0 -1
  413. package/dist/operations/Vector.d.ts +0 -262
  414. package/dist/operations/Vector.js +0 -415
  415. package/dist/operations/Vector.js.map +0 -1
  416. package/dist/operations/Vector3D.d.ts +0 -80
  417. package/dist/operations/Vector3D.js +0 -224
  418. package/dist/operations/Vector3D.js.map +0 -1
  419. package/dist/operations/index.d.ts +0 -4
  420. package/dist/operations/index.js +0 -5
  421. package/dist/operations/index.js.map +0 -1
  422. package/dist/operations/operations.d.ts +0 -26
  423. package/dist/operations/operations.js +0 -27
  424. package/dist/operations/operations.js.map +0 -1
  425. package/dist/optimize/ChebyshevCompressor.d.ts +0 -80
  426. package/dist/optimize/ChebyshevCompressor.js +0 -128
  427. package/dist/optimize/ChebyshevCompressor.js.map +0 -1
  428. package/dist/optimize/DownhillSimplex.d.ts +0 -98
  429. package/dist/optimize/DownhillSimplex.js +0 -216
  430. package/dist/optimize/DownhillSimplex.js.map +0 -1
  431. package/dist/optimize/GoldenSection.d.ts +0 -177
  432. package/dist/optimize/GoldenSection.js +0 -202
  433. package/dist/optimize/GoldenSection.js.map +0 -1
  434. package/dist/optimize/PolynomialRegression.d.ts +0 -151
  435. package/dist/optimize/PolynomialRegression.js +0 -184
  436. package/dist/optimize/PolynomialRegression.js.map +0 -1
  437. package/dist/optimize/SimpleLinearRegression.d.ts +0 -153
  438. package/dist/optimize/SimpleLinearRegression.js +0 -212
  439. package/dist/optimize/SimpleLinearRegression.js.map +0 -1
  440. package/dist/optimize/index.d.ts +0 -5
  441. package/dist/optimize/index.js +0 -6
  442. package/dist/optimize/index.js.map +0 -1
  443. package/dist/optimize/internal/PolynomicalRegressionResult.d.ts +0 -118
  444. package/dist/optimize/internal/PolynomicalRegressionResult.js +0 -123
  445. package/dist/optimize/internal/PolynomicalRegressionResult.js.map +0 -1
  446. package/dist/optimize/internal/SimplexEntry.d.ts +0 -150
  447. package/dist/optimize/internal/SimplexEntry.js +0 -147
  448. package/dist/optimize/internal/SimplexEntry.js.map +0 -1
  449. package/dist/orbit-design/RepeatGroundTrack.d.ts +0 -184
  450. package/dist/orbit-design/RepeatGroundTrack.js +0 -359
  451. package/dist/orbit-design/RepeatGroundTrack.js.map +0 -1
  452. package/dist/orbit-design/index.d.ts +0 -18
  453. package/dist/orbit-design/index.js +0 -18
  454. package/dist/orbit-design/index.js.map +0 -1
  455. package/dist/orbit-determination/BatchLeastSquaresOD.d.ts +0 -69
  456. package/dist/orbit-determination/BatchLeastSquaresOD.js +0 -143
  457. package/dist/orbit-determination/BatchLeastSquaresOD.js.map +0 -1
  458. package/dist/orbit-determination/BatchLeastSquaresResult.d.ts +0 -31
  459. package/dist/orbit-determination/BatchLeastSquaresResult.js +0 -36
  460. package/dist/orbit-determination/BatchLeastSquaresResult.js.map +0 -1
  461. package/dist/orbit-determination/GaussIOD.d.ts +0 -98
  462. package/dist/orbit-determination/GaussIOD.js +0 -294
  463. package/dist/orbit-determination/GaussIOD.js.map +0 -1
  464. package/dist/orbit-determination/GibbsIOD.d.ts +0 -38
  465. package/dist/orbit-determination/GibbsIOD.js +0 -77
  466. package/dist/orbit-determination/GibbsIOD.js.map +0 -1
  467. package/dist/orbit-determination/GoodingIOD.d.ts +0 -155
  468. package/dist/orbit-determination/GoodingIOD.js +0 -492
  469. package/dist/orbit-determination/GoodingIOD.js.map +0 -1
  470. package/dist/orbit-determination/HerrickGibbsIOD.d.ts +0 -33
  471. package/dist/orbit-determination/HerrickGibbsIOD.js +0 -50
  472. package/dist/orbit-determination/HerrickGibbsIOD.js.map +0 -1
  473. package/dist/orbit-determination/LambertIOD.d.ts +0 -59
  474. package/dist/orbit-determination/LambertIOD.js +0 -213
  475. package/dist/orbit-determination/LambertIOD.js.map +0 -1
  476. package/dist/orbit-determination/LevenbergMarquardtOD.d.ts +0 -72
  477. package/dist/orbit-determination/LevenbergMarquardtOD.js +0 -202
  478. package/dist/orbit-determination/LevenbergMarquardtOD.js.map +0 -1
  479. package/dist/orbit-determination/LevenbergMarquardtResult.d.ts +0 -36
  480. package/dist/orbit-determination/LevenbergMarquardtResult.js +0 -43
  481. package/dist/orbit-determination/LevenbergMarquardtResult.js.map +0 -1
  482. package/dist/orbit-determination/ModifiedGoodingIOD.d.ts +0 -41
  483. package/dist/orbit-determination/ModifiedGoodingIOD.js +0 -94
  484. package/dist/orbit-determination/ModifiedGoodingIOD.js.map +0 -1
  485. package/dist/orbit-determination/index.d.ts +0 -9
  486. package/dist/orbit-determination/index.js +0 -10
  487. package/dist/orbit-determination/index.js.map +0 -1
  488. package/dist/parsers/CdmExporter.d.ts +0 -85
  489. package/dist/parsers/CdmExporter.js +0 -235
  490. package/dist/parsers/CdmExporter.js.map +0 -1
  491. package/dist/parsers/CdmParser.d.ts +0 -97
  492. package/dist/parsers/CdmParser.js +0 -396
  493. package/dist/parsers/CdmParser.js.map +0 -1
  494. package/dist/parsers/CdmTypes.d.ts +0 -240
  495. package/dist/parsers/CdmTypes.js +0 -18
  496. package/dist/parsers/CdmTypes.js.map +0 -1
  497. package/dist/parsers/HorizonsParser.d.ts +0 -128
  498. package/dist/parsers/HorizonsParser.js +0 -320
  499. package/dist/parsers/HorizonsParser.js.map +0 -1
  500. package/dist/parsers/OemParser.d.ts +0 -56
  501. package/dist/parsers/OemParser.js +0 -235
  502. package/dist/parsers/OemParser.js.map +0 -1
  503. package/dist/parsers/OemTypes.d.ts +0 -100
  504. package/dist/parsers/OemTypes.js +0 -18
  505. package/dist/parsers/OemTypes.js.map +0 -1
  506. package/dist/parsers/index.d.ts +0 -23
  507. package/dist/parsers/index.js +0 -24
  508. package/dist/parsers/index.js.map +0 -1
  509. package/dist/propagator/DormandPrince54Propagator.d.ts +0 -28
  510. package/dist/propagator/DormandPrince54Propagator.js +0 -64
  511. package/dist/propagator/DormandPrince54Propagator.js.map +0 -1
  512. package/dist/propagator/KeplerPropagator.d.ts +0 -35
  513. package/dist/propagator/KeplerPropagator.js +0 -83
  514. package/dist/propagator/KeplerPropagator.js.map +0 -1
  515. package/dist/propagator/Propagator.d.ts +0 -34
  516. package/dist/propagator/Propagator.js +0 -162
  517. package/dist/propagator/Propagator.js.map +0 -1
  518. package/dist/propagator/RkCheckpoint.d.ts +0 -22
  519. package/dist/propagator/RkCheckpoint.js +0 -27
  520. package/dist/propagator/RkCheckpoint.js.map +0 -1
  521. package/dist/propagator/RkResult.d.ts +0 -23
  522. package/dist/propagator/RkResult.js +0 -30
  523. package/dist/propagator/RkResult.js.map +0 -1
  524. package/dist/propagator/RungeKutta4Propagator.d.ts +0 -50
  525. package/dist/propagator/RungeKutta4Propagator.js +0 -141
  526. package/dist/propagator/RungeKutta4Propagator.js.map +0 -1
  527. package/dist/propagator/RungeKutta89Propagator.d.ts +0 -28
  528. package/dist/propagator/RungeKutta89Propagator.js +0 -126
  529. package/dist/propagator/RungeKutta89Propagator.js.map +0 -1
  530. package/dist/propagator/RungeKuttaAdaptive.d.ts +0 -51
  531. package/dist/propagator/RungeKuttaAdaptive.js +0 -199
  532. package/dist/propagator/RungeKuttaAdaptive.js.map +0 -1
  533. package/dist/propagator/Sgp4Propagator.d.ts +0 -76
  534. package/dist/propagator/Sgp4Propagator.js +0 -96
  535. package/dist/propagator/Sgp4Propagator.js.map +0 -1
  536. package/dist/propagator/index.d.ts +0 -9
  537. package/dist/propagator/index.js +0 -10
  538. package/dist/propagator/index.js.map +0 -1
  539. package/dist/scheduling/ContactScheduler.d.ts +0 -248
  540. package/dist/scheduling/ContactScheduler.js +0 -503
  541. package/dist/scheduling/ContactScheduler.js.map +0 -1
  542. package/dist/scheduling/ScheduledContact.d.ts +0 -155
  543. package/dist/scheduling/ScheduledContact.js +0 -189
  544. package/dist/scheduling/ScheduledContact.js.map +0 -1
  545. package/dist/scheduling/index.d.ts +0 -5
  546. package/dist/scheduling/index.js +0 -4
  547. package/dist/scheduling/index.js.map +0 -1
  548. package/dist/sensor/FieldOfView.d.ts +0 -250
  549. package/dist/sensor/FieldOfView.js +0 -470
  550. package/dist/sensor/FieldOfView.js.map +0 -1
  551. package/dist/sensor/LaserRangingSensor.d.ts +0 -122
  552. package/dist/sensor/LaserRangingSensor.js +0 -174
  553. package/dist/sensor/LaserRangingSensor.js.map +0 -1
  554. package/dist/sensor/MechanicalRadar.d.ts +0 -86
  555. package/dist/sensor/MechanicalRadar.js +0 -130
  556. package/dist/sensor/MechanicalRadar.js.map +0 -1
  557. package/dist/sensor/OpticalSensor.d.ts +0 -111
  558. package/dist/sensor/OpticalSensor.js +0 -164
  559. package/dist/sensor/OpticalSensor.js.map +0 -1
  560. package/dist/sensor/PassiveRFSensor.d.ts +0 -115
  561. package/dist/sensor/PassiveRFSensor.js +0 -168
  562. package/dist/sensor/PassiveRFSensor.js.map +0 -1
  563. package/dist/sensor/PhasedArrayRadar.d.ts +0 -170
  564. package/dist/sensor/PhasedArrayRadar.js +0 -290
  565. package/dist/sensor/PhasedArrayRadar.js.map +0 -1
  566. package/dist/sensor/RadarSensor.d.ts +0 -94
  567. package/dist/sensor/RadarSensor.js +0 -106
  568. package/dist/sensor/RadarSensor.js.map +0 -1
  569. package/dist/sensor/Sensor.d.ts +0 -271
  570. package/dist/sensor/Sensor.js +0 -343
  571. package/dist/sensor/Sensor.js.map +0 -1
  572. package/dist/sensor/index.d.ts +0 -74
  573. package/dist/sensor/index.js +0 -70
  574. package/dist/sensor/index.js.map +0 -1
  575. package/dist/sgp4/index.d.ts +0 -25
  576. package/dist/sgp4/index.js +0 -25
  577. package/dist/sgp4/index.js.map +0 -1
  578. package/dist/sgp4/sgp4-error.d.ts +0 -22
  579. package/dist/sgp4/sgp4-error.js +0 -44
  580. package/dist/sgp4/sgp4-error.js.map +0 -1
  581. package/dist/sgp4/sgp4.d.ts +0 -99
  582. package/dist/sgp4/sgp4.js +0 -3170
  583. package/dist/sgp4/sgp4.js.map +0 -1
  584. package/dist/smoothing/ExponentialSmoothing.d.ts +0 -37
  585. package/dist/smoothing/ExponentialSmoothing.js +0 -75
  586. package/dist/smoothing/ExponentialSmoothing.js.map +0 -1
  587. package/dist/time/Epoch.d.ts +0 -81
  588. package/dist/time/Epoch.js +0 -146
  589. package/dist/time/Epoch.js.map +0 -1
  590. package/dist/time/EpochGPS.d.ts +0 -106
  591. package/dist/time/EpochGPS.js +0 -134
  592. package/dist/time/EpochGPS.js.map +0 -1
  593. package/dist/time/EpochTAI.d.ts +0 -62
  594. package/dist/time/EpochTAI.js +0 -63
  595. package/dist/time/EpochTAI.js.map +0 -1
  596. package/dist/time/EpochTDB.d.ts +0 -72
  597. package/dist/time/EpochTDB.js +0 -73
  598. package/dist/time/EpochTDB.js.map +0 -1
  599. package/dist/time/EpochTT.d.ts +0 -75
  600. package/dist/time/EpochTT.js +0 -76
  601. package/dist/time/EpochTT.js.map +0 -1
  602. package/dist/time/EpochUTC.d.ts +0 -123
  603. package/dist/time/EpochUTC.js +0 -200
  604. package/dist/time/EpochUTC.js.map +0 -1
  605. package/dist/time/EpochWindow.d.ts +0 -28
  606. package/dist/time/EpochWindow.js +0 -31
  607. package/dist/time/EpochWindow.js.map +0 -1
  608. package/dist/time/TimeStamped.d.ts +0 -61
  609. package/dist/time/TimeStamped.js +0 -73
  610. package/dist/time/TimeStamped.js.map +0 -1
  611. package/dist/time/index.d.ts +0 -8
  612. package/dist/time/index.js +0 -9
  613. package/dist/time/index.js.map +0 -1
  614. package/dist/transforms/TransformCache.d.ts +0 -27
  615. package/dist/transforms/TransformCache.js +0 -41
  616. package/dist/transforms/TransformCache.js.map +0 -1
  617. package/dist/transforms/conversions.d.ts +0 -63
  618. package/dist/transforms/conversions.js +0 -89
  619. package/dist/transforms/conversions.js.map +0 -1
  620. package/dist/transforms/index.d.ts +0 -2
  621. package/dist/transforms/index.js +0 -3
  622. package/dist/transforms/index.js.map +0 -1
  623. package/dist/transforms/transforms.d.ts +0 -241
  624. package/dist/transforms/transforms.js +0 -479
  625. package/dist/transforms/transforms.js.map +0 -1
  626. package/dist/types/types.d.ts +0 -757
  627. package/dist/types/types.js +0 -90
  628. package/dist/types/types.js.map +0 -1
  629. package/dist/utils/constants.d.ts +0 -80
  630. package/dist/utils/constants.js +0 -87
  631. package/dist/utils/constants.js.map +0 -1
  632. package/dist/utils/create-covariance-from-tle.d.ts +0 -18
  633. package/dist/utils/create-covariance-from-tle.js +0 -57
  634. package/dist/utils/create-covariance-from-tle.js.map +0 -1
  635. package/dist/utils/functions.d.ts +0 -236
  636. package/dist/utils/functions.js +0 -501
  637. package/dist/utils/functions.js.map +0 -1
  638. package/dist/utils/index.d.ts +0 -5
  639. package/dist/utils/index.js +0 -6
  640. package/dist/utils/index.js.map +0 -1
  641. package/dist/utils/jacobian.d.ts +0 -17
  642. package/dist/utils/jacobian.js +0 -34
  643. package/dist/utils/jacobian.js.map +0 -1
  644. package/dist/utils/linearDistance.d.ts +0 -8
  645. package/dist/utils/linearDistance.js +0 -10
  646. package/dist/utils/linearDistance.js.map +0 -1
  647. package/docs/README.md +0 -151
  648. package/docs/getting-started.md +0 -792
  649. package/docs/lambert-satellite-integration-guide.md +0 -766
  650. package/docs/user-guide.md +0 -1935
  651. package/jest.config.mjs +0 -29
  652. package/src/body/CelestialBody.ts +0 -316
  653. package/src/body/CelestialBodyType.ts +0 -55
  654. package/src/body/Earth.ts +0 -260
  655. package/src/body/EphemerisBody.ts +0 -349
  656. package/src/body/MoonBody.ts +0 -552
  657. package/src/body/NutationAngles.ts +0 -40
  658. package/src/body/PlanetBody.ts +0 -354
  659. package/src/body/PrecessionAngles.ts +0 -31
  660. package/src/body/SolarSystem.ts +0 -276
  661. package/src/body/SunBody.ts +0 -538
  662. package/src/body/__tests__/Earth.test.ts +0 -135
  663. package/src/body/__tests__/EphemerisBody.test.ts +0 -323
  664. package/src/body/__tests__/MoonBody.test.ts +0 -198
  665. package/src/body/__tests__/PlanetBody.test.ts +0 -257
  666. package/src/body/__tests__/SolarSystem.test.ts +0 -237
  667. package/src/body/__tests__/SunBody.test.ts +0 -227
  668. package/src/body/__tests__/__snapshots__/Earth.test.ts.snap +0 -39
  669. package/src/body/index.ts +0 -64
  670. package/src/body/suncalc.LICENSE.md +0 -18
  671. package/src/comm/Antenna.ts +0 -213
  672. package/src/comm/Beacon.ts +0 -328
  673. package/src/comm/CommTypes.ts +0 -216
  674. package/src/comm/CommunicationDevice.ts +0 -199
  675. package/src/comm/Receiver.ts +0 -263
  676. package/src/comm/Transmitter.ts +0 -349
  677. package/src/comm/Transponder.ts +0 -360
  678. package/src/comm/__tests__/Antenna.test.ts +0 -155
  679. package/src/comm/__tests__/Beacon.test.ts +0 -333
  680. package/src/comm/__tests__/CommTypes.test.ts +0 -165
  681. package/src/comm/__tests__/Receiver.test.ts +0 -215
  682. package/src/comm/__tests__/Transmitter.test.ts +0 -164
  683. package/src/comm/__tests__/Transponder.test.ts +0 -181
  684. package/src/comm/index.ts +0 -60
  685. package/src/conjunction/CatalogScreener.ts +0 -322
  686. package/src/conjunction/ConjunctionAssessment.ts +0 -410
  687. package/src/conjunction/ConjunctionEvent.ts +0 -185
  688. package/src/conjunction/CovarianceRealism.ts +0 -472
  689. package/src/conjunction/ProbabilityOfCollision.ts +0 -302
  690. package/src/conjunction/ScreeningFilter.ts +0 -206
  691. package/src/conjunction/__tests__/CatalogScreener.test.ts +0 -280
  692. package/src/conjunction/__tests__/ConjunctionAssessment.basic.test.ts +0 -250
  693. package/src/conjunction/__tests__/ConjunctionAssessment.highfidelity.test.ts +0 -76
  694. package/src/conjunction/__tests__/CovarianceRealism.test.ts +0 -296
  695. package/src/conjunction/index.ts +0 -35
  696. package/src/constellation/ConstellationGenerator.ts +0 -377
  697. package/src/constellation/__tests__/ConstellationGenerator.test.ts +0 -446
  698. package/src/constellation/index.ts +0 -18
  699. package/src/coordinate/ClassicalElements.ts +0 -394
  700. package/src/coordinate/EquinoctialElements.ts +0 -189
  701. package/src/coordinate/FormatTle.ts +0 -219
  702. package/src/coordinate/Geodetic.ts +0 -191
  703. package/src/coordinate/Hill.ts +0 -326
  704. package/src/coordinate/ITRF.ts +0 -146
  705. package/src/coordinate/J2000.ts +0 -130
  706. package/src/coordinate/README.md +0 -788
  707. package/src/coordinate/RIC.ts +0 -87
  708. package/src/coordinate/RelativeState.ts +0 -101
  709. package/src/coordinate/StateVector.ts +0 -128
  710. package/src/coordinate/TEME.ts +0 -97
  711. package/src/coordinate/Tle.ts +0 -1025
  712. package/src/coordinate/__tests__/ClassicalElements.test.ts +0 -129
  713. package/src/coordinate/__tests__/EquinoctialElements.test.ts +0 -108
  714. package/src/coordinate/__tests__/FormatTle.test.ts +0 -92
  715. package/src/coordinate/__tests__/Geodetic.test.ts +0 -165
  716. package/src/coordinate/__tests__/Hill.test.ts +0 -195
  717. package/src/coordinate/__tests__/ITRF.test.ts +0 -231
  718. package/src/coordinate/__tests__/J2000.test.ts +0 -132
  719. package/src/coordinate/__tests__/RIC.test.ts +0 -107
  720. package/src/coordinate/__tests__/TEME.test.ts +0 -48
  721. package/src/coordinate/__tests__/Tle.test.ts +0 -185
  722. package/src/coordinate/__tests__/__snapshots__/ClassicalElements.test.ts.snap +0 -106
  723. package/src/coordinate/__tests__/__snapshots__/EquinoctialElements.test.ts.snap +0 -93
  724. package/src/coordinate/__tests__/__snapshots__/Geodetic.test.ts.snap +0 -54
  725. package/src/coordinate/__tests__/__snapshots__/ITRF.test.ts.snap +0 -321
  726. package/src/coordinate/__tests__/__snapshots__/J2000.test.ts.snap +0 -26
  727. package/src/coordinate/__tests__/__snapshots__/RIC.test.ts.snap +0 -79
  728. package/src/coordinate/__tests__/__snapshots__/TEME.test.ts.snap +0 -41
  729. package/src/coordinate/__tests__/__snapshots__/Tle.test.ts.snap +0 -180
  730. package/src/coordinate/index.ts +0 -13
  731. package/src/coordinate/tle-format-data.ts +0 -47
  732. package/src/covariance/CovarianceSample.ts +0 -292
  733. package/src/covariance/StateCovariance.ts +0 -69
  734. package/src/covariance/__tests__/CovarianceSample.test.ts +0 -143
  735. package/src/covariance/__tests__/StateCovariance.test.ts +0 -90
  736. package/src/covariance/index.ts +0 -3
  737. package/src/data/DataHandler.ts +0 -88
  738. package/src/data/values/Egm96Data.ts +0 -75
  739. package/src/data/values/HpAtmosphereData.ts +0 -76
  740. package/src/data/values/HpAtmosphereResult.ts +0 -41
  741. package/src/data/values/Iau1980Data.ts +0 -63
  742. package/src/data/values/LeapSecond.ts +0 -37
  743. package/src/data/values/LeapSecondData.ts +0 -113
  744. package/src/data/values/__tests__/Egm96Data.test.ts +0 -33
  745. package/src/data/values/__tests__/HpAtmosphereData.test.ts +0 -82
  746. package/src/data/values/__tests__/LeapSecondData.test.ts +0 -59
  747. package/src/data/values/egm96.ts +0 -728
  748. package/src/data/values/hpAtmosphere.ts +0 -79
  749. package/src/data/values/iau1980.ts +0 -32
  750. package/src/enums/AngularDiameterMethod.ts +0 -28
  751. package/src/enums/AngularDistanceMethod.ts +0 -28
  752. package/src/enums/CatalogSource.ts +0 -10
  753. package/src/enums/CommLink.ts +0 -7
  754. package/src/enums/FovFrame.ts +0 -26
  755. package/src/enums/FovShape.ts +0 -26
  756. package/src/enums/OrbitRegime.ts +0 -31
  757. package/src/enums/PassType.ts +0 -29
  758. package/src/enums/SensorType.ts +0 -34
  759. package/src/enums/Sgp4OpsMode.ts +0 -27
  760. package/src/enums/index.ts +0 -11
  761. package/src/errors/__tests__/errors.test.ts +0 -196
  762. package/src/errors/index.ts +0 -185
  763. package/src/fetch/horizons-constants.ts +0 -53
  764. package/src/fetch/horizons-interfaces.ts +0 -38
  765. package/src/fetch/horizons.ts +0 -300
  766. package/src/fetch/index.ts +0 -26
  767. package/src/force/AtmosphericDrag.ts +0 -120
  768. package/src/force/EarthGravity.ts +0 -182
  769. package/src/force/Force.ts +0 -31
  770. package/src/force/ForceModel.ts +0 -99
  771. package/src/force/Gravity.ts +0 -53
  772. package/src/force/README.md +0 -99
  773. package/src/force/SolarRadiationPressure.ts +0 -43
  774. package/src/force/ThirdBodyGravity.ts +0 -64
  775. package/src/force/Thrust.ts +0 -83
  776. package/src/force/__tests__/AtmosphericDrag.test.ts +0 -168
  777. package/src/force/__tests__/EarthGravity.test.ts +0 -115
  778. package/src/force/__tests__/ForceModel.test.ts +0 -188
  779. package/src/force/__tests__/Gravity.test.ts +0 -81
  780. package/src/force/__tests__/SolarRadiationPressure.test.ts +0 -115
  781. package/src/force/__tests__/ThirdBodyGravity.test.ts +0 -119
  782. package/src/force/__tests__/Thrust.test.ts +0 -132
  783. package/src/force/index.ts +0 -9
  784. package/src/interfaces/BaseObjectParams.ts +0 -32
  785. package/src/interfaces/ClassicalElementsParams.ts +0 -35
  786. package/src/interfaces/EquinoctialElementsParams.ts +0 -37
  787. package/src/interfaces/GroundPositionParams.ts +0 -30
  788. package/src/interfaces/OmmFormat.ts +0 -63
  789. package/src/interfaces/OptionsParams.ts +0 -3
  790. package/src/interfaces/SatelliteParams.ts +0 -57
  791. package/src/interfaces/StarObjectParams.ts +0 -11
  792. package/src/interfaces/TimeVariables.ts +0 -7
  793. package/src/interfaces/index.ts +0 -8
  794. package/src/interpolator/ChebyshevCoefficients.ts +0 -109
  795. package/src/interpolator/ChebyshevInterpolator.ts +0 -87
  796. package/src/interpolator/CubicSpline.ts +0 -72
  797. package/src/interpolator/CubicSplineInterpolator.ts +0 -90
  798. package/src/interpolator/FieldInterpolator.ts +0 -35
  799. package/src/interpolator/Interpolator.ts +0 -56
  800. package/src/interpolator/LagrangeInterpolator.ts +0 -192
  801. package/src/interpolator/StateInterpolator.ts +0 -37
  802. package/src/interpolator/VerletBlendInterpolator.ts +0 -146
  803. package/src/interpolator/__tests__/ChebyshevCoefficients.test.ts +0 -105
  804. package/src/interpolator/__tests__/ChebyshevInterpolator.test.ts +0 -81
  805. package/src/interpolator/__tests__/CubicSpline.test.ts +0 -80
  806. package/src/interpolator/__tests__/CubicSplineInterpolator.test.ts +0 -94
  807. package/src/interpolator/__tests__/FieldInterpolator.test.ts +0 -59
  808. package/src/interpolator/__tests__/Interpolator.test.ts +0 -131
  809. package/src/interpolator/__tests__/LagrangeInterpolator.test.ts +0 -121
  810. package/src/interpolator/__tests__/StateInterpolator.test.ts +0 -57
  811. package/src/interpolator/__tests__/VerletBlendInterpolator.test.ts +0 -116
  812. package/src/interpolator/index.ts +0 -32
  813. package/src/main.ts +0 -87
  814. package/src/maneuver/TwoBurnOrbitTransfer.ts +0 -79
  815. package/src/maneuver/Waypoint.ts +0 -267
  816. package/src/maneuver/__tests__/TwoBurnOrbitTransfer.test.ts +0 -90
  817. package/src/maneuver/__tests__/Waypoint.test.ts +0 -427
  818. package/src/maneuver/index.ts +0 -25
  819. package/src/objects/AccessCalculator.ts +0 -345
  820. package/src/objects/AccessWindow.ts +0 -129
  821. package/src/objects/BaseObject.ts +0 -242
  822. package/src/objects/CenterBody.ts +0 -88
  823. package/src/objects/DynamicGroundObject.ts +0 -975
  824. package/src/objects/EphemerisSatellite.ts +0 -629
  825. package/src/objects/GroundObject.ts +0 -246
  826. package/src/objects/GroundStation.ts +0 -130
  827. package/src/objects/History.ts +0 -228
  828. package/src/objects/InterpolatorType.ts +0 -42
  829. package/src/objects/LandObject.ts +0 -62
  830. package/src/objects/Marker.ts +0 -32
  831. package/src/objects/ObjectTypes.ts +0 -66
  832. package/src/objects/Satellite.ts +0 -1013
  833. package/src/objects/SpaceObject.ts +0 -304
  834. package/src/objects/Star.ts +0 -135
  835. package/src/objects/VisualizationHelpers.ts +0 -324
  836. package/src/objects/__tests__/AccessCalculator.test.ts +0 -499
  837. package/src/objects/__tests__/DynamicGroundObject.test.ts +0 -859
  838. package/src/objects/__tests__/EphemerisSatellite.test.ts +0 -589
  839. package/src/objects/__tests__/GroundStation.test.ts +0 -204
  840. package/src/objects/__tests__/Satellite.test.ts +0 -487
  841. package/src/objects/__tests__/SpaceObject.rae.test.ts +0 -156
  842. package/src/objects/__tests__/VisualizationHelpers.test.ts +0 -438
  843. package/src/objects/index.ts +0 -31
  844. package/src/observation/Observation.ts +0 -113
  845. package/src/observation/ObservationOptical.ts +0 -146
  846. package/src/observation/ObservationRadar.ts +0 -135
  847. package/src/observation/ObservationUtils.ts +0 -69
  848. package/src/observation/PropagatorPairs.ts +0 -45
  849. package/src/observation/RAE.ts +0 -261
  850. package/src/observation/RadecGeocentric.ts +0 -206
  851. package/src/observation/RadecTopocentric.ts +0 -247
  852. package/src/observation/__tests__/RAE.test.ts +0 -135
  853. package/src/observation/__tests__/RadecGeocentric.test.ts +0 -107
  854. package/src/observation/__tests__/RadecTopocentric.test.ts +0 -121
  855. package/src/observation/__tests__/__snapshots__/RAE.test.ts.snap +0 -91
  856. package/src/observation/__tests__/__snapshots__/RadecGeocentric.test.ts.snap +0 -71
  857. package/src/observation/__tests__/__snapshots__/RadecTopocentric.test.ts.snap +0 -71
  858. package/src/observation/index.ts +0 -28
  859. package/src/operations/BoxMuller.ts +0 -87
  860. package/src/operations/EulerAngles.ts +0 -183
  861. package/src/operations/Matrix.ts +0 -473
  862. package/src/operations/Quaternion.ts +0 -222
  863. package/src/operations/Random.ts +0 -54
  864. package/src/operations/RandomGaussianSource.ts +0 -51
  865. package/src/operations/Vector.ts +0 -484
  866. package/src/operations/Vector3D.ts +0 -272
  867. package/src/operations/__tests__/Matrix.test.ts +0 -277
  868. package/src/operations/__tests__/Random.test.ts +0 -24
  869. package/src/operations/__tests__/Vector.test.ts +0 -269
  870. package/src/operations/__tests__/Vector3D.test.ts +0 -100
  871. package/src/operations/__tests__/__snapshots__/Matrix.test.ts.snap +0 -161
  872. package/src/operations/__tests__/__snapshots__/Random.test.ts.snap +0 -7
  873. package/src/operations/__tests__/__snapshots__/Vector.test.ts.snap +0 -218
  874. package/src/operations/__tests__/__snapshots__/Vector3D.test.ts.snap +0 -138
  875. package/src/operations/index.ts +0 -5
  876. package/src/operations/operations.ts +0 -28
  877. package/src/optimize/ChebyshevCompressor.ts +0 -141
  878. package/src/optimize/DownhillSimplex.ts +0 -246
  879. package/src/optimize/GoldenSection.ts +0 -230
  880. package/src/optimize/PolynomialRegression.ts +0 -211
  881. package/src/optimize/README.md +0 -343
  882. package/src/optimize/SimpleLinearRegression.ts +0 -227
  883. package/src/optimize/__tests__/ChebyshevCompressor.test.ts +0 -40
  884. package/src/optimize/__tests__/DownhillSimplex.test.ts +0 -168
  885. package/src/optimize/__tests__/GoldenSection.test.ts +0 -21
  886. package/src/optimize/__tests__/PolynomialRegression.test.ts +0 -24
  887. package/src/optimize/__tests__/SimpleLinearRegression.test.ts +0 -31
  888. package/src/optimize/index.ts +0 -6
  889. package/src/optimize/internal/PolynomicalRegressionResult.ts +0 -126
  890. package/src/optimize/internal/SimplexEntry.ts +0 -169
  891. package/src/orbit-design/RepeatGroundTrack.ts +0 -516
  892. package/src/orbit-design/__tests__/RepeatGroundTrack.test.ts +0 -526
  893. package/src/orbit-design/index.ts +0 -23
  894. package/src/orbit-determination/BatchLeastSquaresOD.ts +0 -174
  895. package/src/orbit-determination/BatchLeastSquaresResult.ts +0 -33
  896. package/src/orbit-determination/GaussIOD.ts +0 -396
  897. package/src/orbit-determination/GibbsIOD.ts +0 -98
  898. package/src/orbit-determination/GoodingIOD.ts +0 -680
  899. package/src/orbit-determination/HerrickGibbsIOD.ts +0 -51
  900. package/src/orbit-determination/LambertIOD.ts +0 -260
  901. package/src/orbit-determination/LevenbergMarquardtOD.ts +0 -258
  902. package/src/orbit-determination/LevenbergMarquardtResult.ts +0 -42
  903. package/src/orbit-determination/ModifiedGoodingIOD.test.ts +0 -86
  904. package/src/orbit-determination/ModifiedGoodingIOD.ts +0 -145
  905. package/src/orbit-determination/README.md +0 -353
  906. package/src/orbit-determination/__tests__/BatchLeastSquaresOD.accuracy.test.ts +0 -320
  907. package/src/orbit-determination/__tests__/BatchLeastSquaresOD.observations.test.ts +0 -279
  908. package/src/orbit-determination/__tests__/BatchLeastSquaresOD.robustness.test.ts +0 -439
  909. package/src/orbit-determination/__tests__/GaussIOD.test.ts +0 -395
  910. package/src/orbit-determination/__tests__/GibbsIOD.test.ts +0 -423
  911. package/src/orbit-determination/__tests__/GoodingIOD.test.ts +0 -356
  912. package/src/orbit-determination/__tests__/HerrickGibbsIOD.test.ts +0 -501
  913. package/src/orbit-determination/__tests__/LambertIOD.test.ts +0 -643
  914. package/src/orbit-determination/__tests__/LevenbergMarquardtOD.test.ts +0 -1039
  915. package/src/orbit-determination/index.ts +0 -10
  916. package/src/parsers/CdmExporter.ts +0 -298
  917. package/src/parsers/CdmParser.ts +0 -474
  918. package/src/parsers/CdmTypes.ts +0 -259
  919. package/src/parsers/HorizonsParser.ts +0 -432
  920. package/src/parsers/OemParser.ts +0 -277
  921. package/src/parsers/OemTypes.ts +0 -111
  922. package/src/parsers/__tests__/CdmExporter.test.ts +0 -305
  923. package/src/parsers/__tests__/CdmParser.test.ts +0 -305
  924. package/src/parsers/__tests__/HorizonsParser.test.ts +0 -126
  925. package/src/parsers/__tests__/OemParser.test.ts +0 -398
  926. package/src/parsers/index.ts +0 -49
  927. package/src/propagator/DormandPrince54Propagator.ts +0 -73
  928. package/src/propagator/KeplerPropagator.ts +0 -101
  929. package/src/propagator/Propagator.ts +0 -253
  930. package/src/propagator/README.md +0 -241
  931. package/src/propagator/RkCheckpoint.ts +0 -25
  932. package/src/propagator/RkResult.ts +0 -26
  933. package/src/propagator/RungeKutta4Propagator.ts +0 -179
  934. package/src/propagator/RungeKutta89Propagator.ts +0 -132
  935. package/src/propagator/RungeKuttaAdaptive.ts +0 -282
  936. package/src/propagator/Sgp4Propagator.ts +0 -111
  937. package/src/propagator/__tests__/KeplerPropagator.test.ts +0 -250
  938. package/src/propagator/__tests__/Propagator.test.ts +0 -180
  939. package/src/propagator/__tests__/RungeKutta4Propagator.test.ts +0 -289
  940. package/src/propagator/__tests__/RungeKuttaAdaptive.test.ts +0 -244
  941. package/src/propagator/__tests__/Sgp4Propagator.test.ts +0 -144
  942. package/src/propagator/index.ts +0 -10
  943. package/src/scheduling/ContactScheduler.ts +0 -760
  944. package/src/scheduling/ScheduledContact.ts +0 -249
  945. package/src/scheduling/__tests__/ContactScheduler.test.ts +0 -389
  946. package/src/scheduling/__tests__/ScheduledContact.test.ts +0 -293
  947. package/src/scheduling/index.ts +0 -10
  948. package/src/sensor/FieldOfView.ts +0 -666
  949. package/src/sensor/LaserRangingSensor.ts +0 -210
  950. package/src/sensor/MechanicalRadar.ts +0 -156
  951. package/src/sensor/OpticalSensor.ts +0 -198
  952. package/src/sensor/PassiveRFSensor.ts +0 -205
  953. package/src/sensor/PhasedArrayRadar.ts +0 -352
  954. package/src/sensor/RadarSensor.ts +0 -150
  955. package/src/sensor/Sensor.ts +0 -487
  956. package/src/sensor/__tests__/Sensor.test.ts +0 -135
  957. package/src/sensor/index.ts +0 -81
  958. package/src/sensor/v2-docs/field-of-view-design-document.md +0 -466
  959. package/src/sgp4/index.ts +0 -27
  960. package/src/sgp4/sgp4-error.ts +0 -53
  961. package/src/sgp4/sgp4.LICENSE.md +0 -28
  962. package/src/sgp4/sgp4.ts +0 -3983
  963. package/src/smoothing/ExponentialSmoothing.ts +0 -83
  964. package/src/smoothing/__tests__/ExponentialSmoothing.test.ts +0 -108
  965. package/src/time/Epoch.ts +0 -165
  966. package/src/time/EpochGPS.ts +0 -141
  967. package/src/time/EpochTAI.ts +0 -63
  968. package/src/time/EpochTDB.ts +0 -73
  969. package/src/time/EpochTT.ts +0 -76
  970. package/src/time/EpochUTC.ts +0 -253
  971. package/src/time/EpochWindow.ts +0 -33
  972. package/src/time/README.md +0 -212
  973. package/src/time/TimeStamped.ts +0 -80
  974. package/src/time/__tests__/Epoch.test.ts +0 -250
  975. package/src/time/__tests__/EpochGPS.test.ts +0 -78
  976. package/src/time/__tests__/EpochUTC.test.ts +0 -149
  977. package/src/time/__tests__/EpochWindow.test.ts +0 -30
  978. package/src/time/__tests__/TimeStamped.test.ts +0 -62
  979. package/src/time/__tests__/__snapshots__/Epoch.test.ts.snap +0 -46
  980. package/src/time/__tests__/__snapshots__/EpochGPS.test.ts.snap +0 -13
  981. package/src/time/__tests__/__snapshots__/EpochUTC.test.ts.snap +0 -112
  982. package/src/time/__tests__/__snapshots__/TimeStamped.test.ts.snap +0 -10
  983. package/src/time/index.ts +0 -9
  984. package/src/transforms/TransformCache.ts +0 -46
  985. package/src/transforms/__tests__/__snapshots__/transforms.test.ts.snap +0 -16
  986. package/src/transforms/__tests__/__snapshots__/transforms2.test.ts.snap +0 -49
  987. package/src/transforms/__tests__/conversions.test.ts +0 -80
  988. package/src/transforms/__tests__/transforms.test.ts +0 -128
  989. package/src/transforms/__tests__/transforms2.test.ts +0 -275
  990. package/src/transforms/__tests__/transformsData.ts +0 -289
  991. package/src/transforms/conversions.ts +0 -99
  992. package/src/transforms/index.ts +0 -3
  993. package/src/transforms/transforms.ts +0 -614
  994. package/src/types/types.ts +0 -829
  995. package/src/utils/__tests__/__snapshots__/functions.test.ts.snap +0 -89
  996. package/src/utils/__tests__/__snapshots__/utils.test.ts.snap +0 -5
  997. package/src/utils/__tests__/create-covariance-from-tle.test.ts +0 -90
  998. package/src/utils/__tests__/functions.test.ts +0 -450
  999. package/src/utils/__tests__/jacobian.test.ts +0 -37
  1000. package/src/utils/__tests__/linearDistance.test.ts +0 -44
  1001. package/src/utils/__tests__/utils.test.ts +0 -164
  1002. package/src/utils/constants.ts +0 -113
  1003. package/src/utils/create-covariance-from-tle.ts +0 -75
  1004. package/src/utils/functions.ts +0 -590
  1005. package/src/utils/index.ts +0 -6
  1006. package/src/utils/jacobian.ts +0 -42
  1007. package/src/utils/linearDistance.ts +0 -11
  1008. /package/{LICENSE.md → LICENSE.MD} +0 -0
@@ -1,356 +0,0 @@
1
- /* eslint-disable complexity */
2
- /**
3
- * @file GoodingIOD test suite
4
- * @description Tests for Gooding angles-only Initial Orbit Determination
5
- * Based on Orekit's IodGoodingTest
6
- *
7
- * Reference: Gooding, R.H., A New Procedure for Orbit Determination Based on Three Lines of Sight (Angles only),
8
- * Technical Report 93004, April 1993
9
- */
10
-
11
- import { ClassicalElements, DEG2RAD, Degrees, Kilometers, RAD2DEG, Radians, Sgp4Propagator, Tle } from '@src/main';
12
- import { GroundStation } from '../../objects/GroundStation';
13
- import { RadecTopocentric } from '@src/observation';
14
- import { ObservationOptical } from '@src/observation/ObservationOptical';
15
- import { GoodingIOD, ModifiedGoodingIOD } from '@src/orbit-determination';
16
- import { KeplerPropagator } from '@src/propagator/KeplerPropagator';
17
- import { EpochUTC } from '@src/time';
18
-
19
- // eslint-disable-next-line max-lines-per-function
20
- describe('GoodingIOD', () => {
21
- /**
22
- * Test based on real satellite observations
23
- * Issue #1166: RA/Dec observations of a satellite
24
- */
25
- describe('RA/Dec observations', () => {
26
- it('should determine orbit from three RA/Dec observations', () => {
27
- const propagator = new KeplerPropagator(new ClassicalElements({
28
- epoch: EpochUTC.fromDateTimeString('2023-06-09T17:00:00.000Z'),
29
- semimajorAxis: 42_164 as Kilometers,
30
- eccentricity: 0.001,
31
- inclination: 0.1 * DEG2RAD as Radians,
32
- argPerigee: 180.0 * DEG2RAD as Radians,
33
- rightAscension: 90.0 * DEG2RAD as Radians,
34
- trueAnomaly: 0.0 * DEG2RAD as Radians,
35
- }));
36
-
37
- // Ground station location (Kazakhstan)
38
- const stationLat = 43.05722 as Degrees;
39
- const stationLon = 76.971667 as Degrees;
40
- const stationAlt = 2.735 as Kilometers; // 2735 meters
41
-
42
- const sensor = new GroundStation({
43
- lat: stationLat,
44
- lon: stationLon,
45
- alt: stationAlt,
46
- });
47
-
48
- // Observation times
49
- const t1 = EpochUTC.fromDateTimeString('2023-06-09T17:04:59.100Z');
50
- const t2 = EpochUTC.fromDateTimeString('2023-06-09T17:10:50.660Z');
51
- const t3 = EpochUTC.fromDateTimeString('2023-06-09T17:16:21.090Z');
52
-
53
- // Right Ascension in hours (converted to degrees)
54
- const raDec1 = RadecTopocentric.fromStateVector(propagator.propagate(t1), sensor.toJ2000(t1.toDateTime()));
55
- const raDec2 = RadecTopocentric.fromStateVector(propagator.propagate(t2), sensor.toJ2000(t2.toDateTime()));
56
- const raDec3 = RadecTopocentric.fromStateVector(propagator.propagate(t3), sensor.toJ2000(t3.toDateTime()));
57
-
58
- // Create observations
59
- const obs1 = new ObservationOptical(
60
- sensor.toJ2000(t1.toDateTime()),
61
- raDec1,
62
- );
63
-
64
- const obs2 = new ObservationOptical(
65
- sensor.toJ2000(t2.toDateTime()),
66
- raDec2,
67
- );
68
-
69
- const obs3 = new ObservationOptical(
70
- sensor.toJ2000(t3.toDateTime()),
71
- raDec3,
72
- );
73
-
74
- // Initial range estimates (GEO satellite)
75
- const rho1init = 42_000 as Kilometers;
76
- const rho3init = 42_000 as Kilometers;
77
-
78
- // Run Gooding IOD
79
- const iod = new GoodingIOD();
80
- const orbit = iod.estimate(obs1, obs2, obs3, rho1init, rho3init);
81
-
82
- // Convert to classical elements for verification
83
- const elements = orbit.toClassicalElements();
84
-
85
- expect(elements.semimajorAxis).toBeCloseTo(42_164, 2); // km
86
- expect(elements.eccentricity).toBeCloseTo(0.001, 2);
87
- expect(elements.inclinationDegrees).toBeCloseTo(0.1, 2); // degrees
88
- expect(Math.abs(elements.argPerigeeDegrees - 180)).toBeLessThanOrEqual(5); // +/- 5 degrees allowed
89
- expect(elements.rightAscensionDegrees).toBeCloseTo(90, 1); // degrees
90
- });
91
- });
92
-
93
- /**
94
- * Test with perfect range estimates
95
- * Verifies convergence when given exact initial ranges
96
- */
97
- describe('Perfect range estimates', () => {
98
- it('should accurately determine orbit with exact initial ranges', () => {
99
- // Create a known GEO orbit
100
- const propagator = new KeplerPropagator(new ClassicalElements({
101
- epoch: EpochUTC.fromDateTimeString('2025-11-22T02:00:00.000Z'),
102
- semimajorAxis: 42_164 as Kilometers, // GEO altitude
103
- eccentricity: 0.0001,
104
- inclination: 4.5 * DEG2RAD as Radians,
105
- argPerigee: 0.0 * DEG2RAD as Radians,
106
- rightAscension: 43.0 * DEG2RAD as Radians,
107
- trueAnomaly: 0.0 * DEG2RAD as Radians,
108
- }));
109
-
110
- const sensor = new GroundStation({
111
- lat: 41.75 as Degrees,
112
- lon: -70.54 as Degrees,
113
- alt: 0.1 as Kilometers,
114
- });
115
-
116
- const t1 = EpochUTC.fromDateTimeString('2025-11-22T02:00:00.000Z');
117
- const t2 = EpochUTC.fromDateTimeString('2025-11-22T02:05:00.000Z');
118
- const t3 = EpochUTC.fromDateTimeString('2025-11-22T02:10:00.000Z');
119
-
120
- const p1 = propagator.propagate(t1);
121
- const p2 = propagator.propagate(t2);
122
- const p3 = propagator.propagate(t3);
123
-
124
- // Generate observations from known orbit
125
- const raDec1 = RadecTopocentric.fromStateVector(p1, sensor.toJ2000(t1.toDateTime()));
126
- const raDec2 = RadecTopocentric.fromStateVector(p2, sensor.toJ2000(t2.toDateTime()));
127
- const raDec3 = RadecTopocentric.fromStateVector(p3, sensor.toJ2000(t3.toDateTime()));
128
- const obs1 = new ObservationOptical(sensor.toJ2000(t1.toDateTime()), raDec1);
129
- const obs2 = new ObservationOptical(sensor.toJ2000(t2.toDateTime()), raDec2);
130
- const obs3 = new ObservationOptical(sensor.toJ2000(t3.toDateTime()), raDec3);
131
-
132
- // Run IOD with reasonable initial guesses
133
- const iod = new GoodingIOD();
134
-
135
- const rho1init = 38_000 as Kilometers; // Initial range estimate for t1
136
- const rho3init = 38_000 as Kilometers; // Initial range estimate for t3
137
-
138
- const orbit = iod.estimate(obs1, obs2, obs3, rho1init, rho3init);
139
- const elements = orbit.toClassicalElements();
140
-
141
- // Should recover the original orbit
142
- expect(Math.abs(elements.semimajorAxis - 42_164)).toBeLessThanOrEqual(5);
143
- expect(elements.eccentricity).toBeCloseTo(0.0001, 2);
144
- expect(elements.inclinationDegrees).toBeCloseTo(4.5, 1);
145
- });
146
- });
147
-
148
- /**
149
- * Test convergence behavior
150
- */
151
- describe('Convergence characteristics', () => {
152
- it('should converge for GEO satellite observations', () => {
153
- // Create a known GEO orbit
154
- const propagator = new KeplerPropagator(new ClassicalElements({
155
- epoch: EpochUTC.fromDateTimeString('2025-11-22T02:00:00.000Z'),
156
- semimajorAxis: 42_164 as Kilometers, // GEO altitude
157
- eccentricity: 0.0001,
158
- inclination: 0.5 * DEG2RAD as Radians,
159
- argPerigee: 0.0 * DEG2RAD as Radians,
160
- rightAscension: 45.0 * DEG2RAD as Radians,
161
- trueAnomaly: 0.0 * DEG2RAD as Radians,
162
- }));
163
-
164
- const sensor = new GroundStation({
165
- lat: 41.958076 as Degrees,
166
- lon: -70.662182 as Degrees,
167
- alt: 0.0 as Kilometers,
168
- });
169
-
170
- const t1 = EpochUTC.fromDateTimeString('2025-11-22T02:00:00.000Z');
171
- const t2 = EpochUTC.fromDateTimeString('2025-11-22T03:00:00.000Z');
172
- const t3 = EpochUTC.fromDateTimeString('2025-11-22T04:00:00.000Z');
173
-
174
- // Generate observations from known orbit
175
- const raDec1 = RadecTopocentric.fromStateVector(propagator.propagate(t1), sensor.toJ2000(t1.toDateTime()));
176
- const raDec2 = RadecTopocentric.fromStateVector(propagator.propagate(t2), sensor.toJ2000(t2.toDateTime()));
177
- const raDec3 = RadecTopocentric.fromStateVector(propagator.propagate(t3), sensor.toJ2000(t3.toDateTime()));
178
-
179
- const obs1 = new ObservationOptical(sensor.toJ2000(t1.toDateTime()), raDec1);
180
- const obs2 = new ObservationOptical(sensor.toJ2000(t2.toDateTime()), raDec2);
181
- const obs3 = new ObservationOptical(sensor.toJ2000(t3.toDateTime()), raDec3);
182
-
183
- const iod = new GoodingIOD();
184
-
185
- const orbit = iod.estimate(obs1, obs2, obs3);
186
- const elements = orbit.toClassicalElements();
187
-
188
- // Should recover GEO-like orbit
189
- expect(elements.semimajorAxis).toBeCloseTo(42_164, 1);
190
- expect(elements.eccentricity).toBeLessThan(0.01);
191
- expect(elements.inclinationDegrees).toBeCloseTo(0.5, 1);
192
- });
193
-
194
- it('should handle multi-revolution scenarios', () => {
195
- // Create a known LEO orbit for multi-rev test
196
- const propagator = new KeplerPropagator(new ClassicalElements({
197
- epoch: EpochUTC.fromDateTimeString('2025-01-01T00:00:00.000Z'),
198
- semimajorAxis: 7_200 as Kilometers,
199
- eccentricity: 0.01,
200
- inclination: 45.0 * DEG2RAD as Radians,
201
- argPerigee: 30.0 * DEG2RAD as Radians,
202
- rightAscension: 60.0 * DEG2RAD as Radians,
203
- trueAnomaly: 0.0 * DEG2RAD as Radians,
204
- }));
205
-
206
- const sensor = new GroundStation({
207
- lat: 40.0 as Degrees,
208
- lon: -75.0 as Degrees,
209
- alt: 0.1 as Kilometers,
210
- });
211
-
212
- const t1 = EpochUTC.fromDateTimeString('2025-01-01T00:00:00.000Z');
213
- const t2 = EpochUTC.fromDateTimeString('2025-01-01T00:00:10.000Z');
214
- const t3 = EpochUTC.fromDateTimeString('2025-01-01T00:00:20.000Z');
215
-
216
- // Generate observations from known orbit
217
- const raDec1 = RadecTopocentric.fromStateVector(propagator.propagate(t1), sensor.toJ2000(t1.toDateTime()));
218
- const raDec2 = RadecTopocentric.fromStateVector(propagator.propagate(t2), sensor.toJ2000(t2.toDateTime()));
219
- const raDec3 = RadecTopocentric.fromStateVector(propagator.propagate(t3), sensor.toJ2000(t3.toDateTime()));
220
-
221
- const obs1 = new ObservationOptical(sensor.toJ2000(t1.toDateTime()), raDec1);
222
- const obs2 = new ObservationOptical(sensor.toJ2000(t2.toDateTime()), raDec2);
223
- const obs3 = new ObservationOptical(sensor.toJ2000(t3.toDateTime()), raDec3);
224
-
225
- const iod = new GoodingIOD();
226
-
227
- // Test with nRev = 0 (short arc)
228
- const nRev = 0;
229
- const direction = true; // prograde
230
-
231
- const orbit = iod.estimate(obs1, obs2, obs3, 7_100 as Kilometers, 7_300 as Kilometers, nRev, direction);
232
- const elements = orbit.toClassicalElements();
233
-
234
- // Should recover the orbit reasonably well
235
- expect(Math.abs(elements.semimajorAxis - 7_200)).toBeLessThanOrEqual(5);
236
- expect(elements.eccentricity).toBeCloseTo(0.01, 1);
237
- });
238
- });
239
-
240
- /**
241
- * Test with different orbital regimes
242
- */
243
- describe('Orbital regime tests', () => {
244
- it('should handle LEO observations', () => {
245
- // Create a known ISS-like LEO orbit
246
- const originalTle = new Tle(
247
- '1 53140U 22083J 25325.95729207 -.00001656 00000+0 -86028-4 0 99993',
248
- '2 53140 53.2176 297.7496 0001344 87.2420 272.8726 15.08820168184958',
249
- );
250
- // Create a known LEO orbit
251
- const propagator = new Sgp4Propagator(originalTle);
252
-
253
- const sensor = new GroundStation({
254
- lat: 41.75 as Degrees,
255
- lon: -70.54 as Degrees,
256
- alt: 0.1 as Kilometers,
257
- });
258
-
259
- const t1 = EpochUTC.fromDateTimeString('2025-11-22T05:48:00.000Z');
260
- const t2 = EpochUTC.fromDateTimeString('2025-11-22T05:48:30.000Z');
261
- const t3 = EpochUTC.fromDateTimeString('2025-11-22T05:49:00.000Z');
262
- const t4 = EpochUTC.fromDateTimeString('2025-11-22T05:49:30.000Z');
263
- const t5 = EpochUTC.fromDateTimeString('2025-11-22T05:50:00.000Z');
264
- const t6 = EpochUTC.fromDateTimeString('2025-11-22T05:50:30.000Z');
265
- const t7 = EpochUTC.fromDateTimeString('2025-11-22T05:51:00.000Z');
266
- const t8 = EpochUTC.fromDateTimeString('2025-11-22T05:51:30.000Z');
267
- const t9 = EpochUTC.fromDateTimeString('2025-11-22T05:52:00.000Z');
268
- const t10 = EpochUTC.fromDateTimeString('2025-11-22T05:52:30.000Z');
269
- // Generate observations from known orbit
270
- const raDec1 = RadecTopocentric.fromStateVector(propagator.propagate(t1), sensor.toJ2000(t1.toDateTime()));
271
- const raDec2 = RadecTopocentric.fromStateVector(propagator.propagate(t2), sensor.toJ2000(t2.toDateTime()));
272
- const raDec3 = RadecTopocentric.fromStateVector(propagator.propagate(t3), sensor.toJ2000(t3.toDateTime()));
273
- const raDec4 = RadecTopocentric.fromStateVector(propagator.propagate(t4), sensor.toJ2000(t4.toDateTime()));
274
- const raDec5 = RadecTopocentric.fromStateVector(propagator.propagate(t5), sensor.toJ2000(t5.toDateTime()));
275
- const raDec6 = RadecTopocentric.fromStateVector(propagator.propagate(t6), sensor.toJ2000(t6.toDateTime()));
276
- const raDec7 = RadecTopocentric.fromStateVector(propagator.propagate(t7), sensor.toJ2000(t7.toDateTime()));
277
- const raDec8 = RadecTopocentric.fromStateVector(propagator.propagate(t8), sensor.toJ2000(t8.toDateTime()));
278
- const raDec9 = RadecTopocentric.fromStateVector(propagator.propagate(t9), sensor.toJ2000(t9.toDateTime()));
279
- const raDec10 = RadecTopocentric.fromStateVector(propagator.propagate(t10), sensor.toJ2000(t10.toDateTime()));
280
-
281
- const obs1 = new ObservationOptical(sensor.toJ2000(t1.toDateTime()), raDec1);
282
- const obs2 = new ObservationOptical(sensor.toJ2000(t2.toDateTime()), raDec2);
283
- const obs3 = new ObservationOptical(sensor.toJ2000(t3.toDateTime()), raDec3);
284
- const obs4 = new ObservationOptical(sensor.toJ2000(t4.toDateTime()), raDec4);
285
- const obs5 = new ObservationOptical(sensor.toJ2000(t5.toDateTime()), raDec5);
286
- const obs6 = new ObservationOptical(sensor.toJ2000(t6.toDateTime()), raDec6);
287
- const obs7 = new ObservationOptical(sensor.toJ2000(t7.toDateTime()), raDec7);
288
- const obs8 = new ObservationOptical(sensor.toJ2000(t8.toDateTime()), raDec8);
289
- const obs9 = new ObservationOptical(sensor.toJ2000(t9.toDateTime()), raDec9);
290
- const obs10 = new ObservationOptical(sensor.toJ2000(t10.toDateTime()), raDec10);
291
-
292
- const iod = new ModifiedGoodingIOD();
293
-
294
- // LEO range estimates
295
- const leoRange1 = 1_000 as Kilometers;
296
- const leoRange3 = 1_500 as Kilometers;
297
-
298
- const orbit = iod.solve([obs1, obs2, obs3, obs4, obs5, obs6, obs7, obs8, obs9, obs10], leoRange1, leoRange3);
299
- const elements = orbit.toClassicalElements();
300
-
301
- // Should recover LEO orbit
302
- expect(elements.eccentricity).toBeLessThan(0.01);
303
- expect(elements.inclinationDegrees).toBeCloseTo(53.2176, 0);
304
- expect(Math.abs(elements.semimajorAxis - 6919.20905)).toBeLessThanOrEqual(20);
305
- });
306
-
307
- it('should handle MEO observations', () => {
308
- // Create a known NAVSTAR-like MEO orbit
309
- const originalTle = new Tle(
310
- '1 15039U 84059A 25323.82011001 -.00000048 00000+0 00000+0 0 99993',
311
- '2 15039 63.4276 70.3297 0239207 53.1887 307.8308 1.92302746294098',
312
- );
313
- // Create a known LEO orbit
314
- const propagator = new Sgp4Propagator(originalTle);
315
-
316
- const sensor = new GroundStation({
317
- lat: 41.75 as Degrees,
318
- lon: -70.54 as Degrees,
319
- alt: 0.1 as Kilometers,
320
- });
321
-
322
- const t1 = EpochUTC.fromDateTimeString('2025-11-22T16:00:00.000Z');
323
- const t2 = EpochUTC.fromDateTimeString('2025-11-22T16:02:00.000Z');
324
- const t3 = EpochUTC.fromDateTimeString('2025-11-22T16:04:00.000Z');
325
- const t4 = EpochUTC.fromDateTimeString('2025-11-22T16:06:00.000Z');
326
- const t5 = EpochUTC.fromDateTimeString('2025-11-22T16:08:00.000Z');
327
-
328
- // Generate observations from known orbit
329
- const raDec1 = RadecTopocentric.fromStateVector(propagator.propagate(t1), sensor.toJ2000(t1.toDateTime()));
330
- const raDec2 = RadecTopocentric.fromStateVector(propagator.propagate(t2), sensor.toJ2000(t2.toDateTime()));
331
- const raDec3 = RadecTopocentric.fromStateVector(propagator.propagate(t3), sensor.toJ2000(t3.toDateTime()));
332
- const raDec4 = RadecTopocentric.fromStateVector(propagator.propagate(t4), sensor.toJ2000(t4.toDateTime()));
333
- const raDec5 = RadecTopocentric.fromStateVector(propagator.propagate(t5), sensor.toJ2000(t5.toDateTime()));
334
-
335
- const obs1 = new ObservationOptical(sensor.toJ2000(t1.toDateTime()), raDec1);
336
- const obs2 = new ObservationOptical(sensor.toJ2000(t2.toDateTime()), raDec2);
337
- const obs3 = new ObservationOptical(sensor.toJ2000(t3.toDateTime()), raDec3);
338
- const obs4 = new ObservationOptical(sensor.toJ2000(t4.toDateTime()), raDec4);
339
- const obs5 = new ObservationOptical(sensor.toJ2000(t5.toDateTime()), raDec5);
340
-
341
- const iod = new ModifiedGoodingIOD();
342
-
343
- // MEO range estimates (GPS-like)
344
- const meoRange1 = 20_000 as Kilometers;
345
- const meoRange3 = 21_000 as Kilometers;
346
-
347
- const orbit = iod.solve([obs1, obs2, obs3, obs4, obs5], meoRange1, meoRange3);
348
- const elements = orbit.toClassicalElements();
349
-
350
- // Should recover MEO orbit
351
- expect(Math.abs(elements.semimajorAxis - 27_317)).toBeLessThanOrEqual(10);
352
- expect(elements.eccentricity).toBeCloseTo(0.024082567, 1);
353
- expect(Math.abs(elements.inclinationDegrees - 1.1074806036594826 * RAD2DEG)).toBeLessThanOrEqual(0.2);
354
- });
355
- });
356
- });