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,204 +0,0 @@
1
- /**
2
- * @author Theodore Kruczek
3
- * @license AGPL-3.0-or-later
4
- * @copyright (c) 2025 Kruczek Labs LLC
5
- */
6
-
7
- import { Geodetic } from '../../coordinate/Geodetic';
8
- import { Degrees, Kilometers, Radians, SpaceObjectType } from '../../types/types';
9
- import { DEG2RAD } from '../../utils/constants';
10
- import { GroundStation } from '../GroundStation';
11
-
12
- describe('GroundStation', () => {
13
- describe('constructor', () => {
14
- it('should create a GroundStation with valid parameters', () => {
15
- const station = new GroundStation({
16
- id: 3001,
17
- name: 'Test Station',
18
- lat: 40.7128 as Degrees,
19
- lon: -74.006 as Degrees,
20
- alt: 0.01 as Kilometers,
21
- });
22
-
23
- expect(station).toBeDefined();
24
- expect(station.id).toBe(3001);
25
- expect(station.name).toBe('Test Station');
26
- expect(station.lat).toBe(40.7128);
27
- expect(station.lon).toBe(-74.006);
28
- expect(station.alt).toBe(0.01);
29
- expect(station.type).toBe(SpaceObjectType.GROUND_SENSOR_STATION);
30
- });
31
-
32
- it('should throw error for invalid latitude', () => {
33
- expect(
34
- () =>
35
- new GroundStation({
36
- id: 3002,
37
- lat: 91 as Degrees,
38
- lon: 0 as Degrees,
39
- alt: 0 as Kilometers,
40
- }),
41
- ).toThrow('Invalid latitude');
42
- });
43
-
44
- it('should throw error for invalid longitude', () => {
45
- expect(
46
- () =>
47
- new GroundStation({
48
- id: 3002,
49
- lat: 0 as Degrees,
50
- lon: 181 as Degrees,
51
- alt: 0 as Kilometers,
52
- }),
53
- ).toThrow('Invalid longitude');
54
- });
55
- });
56
-
57
- describe('fromGeodetic', () => {
58
- it('should create a GroundStation from Geodetic coordinates', () => {
59
- const geodetic = new Geodetic(
60
- (40.7128 * DEG2RAD) as Radians,
61
- (-74.006 * DEG2RAD) as Radians,
62
- 0.01 as Kilometers,
63
- );
64
-
65
- const station = GroundStation.fromGeodetic(geodetic, 'NYC Station', 3005);
66
-
67
- expect(station.id).toBe(3005);
68
- expect(station.name).toBe('NYC Station');
69
- expect(station.lat).toBeCloseTo(40.7128, 4);
70
- expect(station.lon).toBeCloseTo(-74.006, 4);
71
- expect(station.alt).toBe(0.01);
72
- });
73
- });
74
-
75
- describe('clone', () => {
76
- it('should create a deep copy of the GroundStation', () => {
77
- const original = new GroundStation({
78
- id: 3003,
79
- name: 'Original Station',
80
- lat: 45 as Degrees,
81
- lon: -90 as Degrees,
82
- alt: 0.5 as Kilometers,
83
- metadata: { key: 'value' },
84
- });
85
-
86
- const cloned = original.clone();
87
-
88
- expect(cloned).not.toBe(original);
89
- expect(cloned.id).toBe(original.id);
90
- expect(cloned.name).toBe(original.name);
91
- expect(cloned.lat).toBe(original.lat);
92
- expect(cloned.lon).toBe(original.lon);
93
- expect(cloned.alt).toBe(original.alt);
94
- });
95
-
96
- it('should have independent sensors and commDevices arrays', () => {
97
- const original = new GroundStation({
98
- id: 3003,
99
- lat: 45 as Degrees,
100
- lon: -90 as Degrees,
101
- alt: 0 as Kilometers,
102
- });
103
-
104
- const cloned = original.clone();
105
-
106
- expect(cloned.sensors).not.toBe(original.sensors);
107
- expect(cloned.commDevices).not.toBe(original.commDevices);
108
- });
109
- });
110
-
111
- describe('moveTo', () => {
112
- it('should create a new GroundStation at the specified position', () => {
113
- const original = new GroundStation({
114
- id: 3003,
115
- name: 'Original Station',
116
- lat: 40 as Degrees,
117
- lon: -74 as Degrees,
118
- alt: 0.1 as Kilometers,
119
- });
120
-
121
- const moved = original.moveTo(51.5 as Degrees, -0.1 as Degrees);
122
-
123
- expect(moved).not.toBe(original);
124
- expect(moved.lat).toBe(51.5);
125
- expect(moved.lon).toBe(-0.1);
126
- expect(moved.alt).toBe(0.1); // altitude preserved
127
- expect(moved.id).toBe(original.id);
128
- expect(moved.name).toBe(original.name);
129
- });
130
-
131
- it('should leave the original instance unchanged', () => {
132
- const original = new GroundStation({
133
- id: 3003,
134
- lat: 40 as Degrees,
135
- lon: -74 as Degrees,
136
- alt: 0.1 as Kilometers,
137
- });
138
-
139
- original.moveTo(51.5 as Degrees, -0.1 as Degrees);
140
-
141
- expect(original.lat).toBe(40);
142
- expect(original.lon).toBe(-74);
143
- expect(original.alt).toBe(0.1);
144
- });
145
-
146
- it('should allow specifying a new altitude', () => {
147
- const original = new GroundStation({
148
- id: 3003,
149
- lat: 40 as Degrees,
150
- lon: -74 as Degrees,
151
- alt: 0.1 as Kilometers,
152
- });
153
-
154
- const moved = original.moveTo(51.5 as Degrees, -0.1 as Degrees, 0.5 as Kilometers);
155
-
156
- expect(moved.alt).toBe(0.5);
157
- });
158
-
159
- it('should validate the new position', () => {
160
- const station = new GroundStation({
161
- id: 3004,
162
- lat: 40 as Degrees,
163
- lon: -74 as Degrees,
164
- alt: 0 as Kilometers,
165
- });
166
-
167
- expect(() => station.moveTo(100 as Degrees, 0 as Degrees)).toThrow('Invalid latitude');
168
- expect(() => station.moveTo(0 as Degrees, 200 as Degrees)).toThrow('Invalid longitude');
169
- });
170
- });
171
-
172
- describe('isGroundObject', () => {
173
- it('should return true', () => {
174
- const station = new GroundStation({
175
- id: 3004,
176
- lat: 0 as Degrees,
177
- lon: 0 as Degrees,
178
- alt: 0 as Kilometers,
179
- });
180
-
181
- expect(station.isGroundObject()).toBe(true);
182
- });
183
- });
184
-
185
- describe('toString', () => {
186
- it('should return a formatted string representation', () => {
187
- const station = new GroundStation({
188
- id: 3001,
189
- name: 'Test Station',
190
- lat: 40.7128 as Degrees,
191
- lon: -74.006 as Degrees,
192
- alt: 0.01 as Kilometers,
193
- });
194
-
195
- const str = station.toString();
196
-
197
- expect(str).toContain('[GroundStation]');
198
- expect(str).toContain('3001');
199
- expect(str).toContain('Test Station');
200
- expect(str).toContain('40.7128');
201
- expect(str).toContain('-74.0060');
202
- });
203
- });
204
- });
@@ -1,487 +0,0 @@
1
- import { SensorType } from '../../enums/SensorType';
2
- import { Satellite } from '../Satellite';
3
- import { TleLine1, TleLine2 } from '../../types/types';
4
- import { Degrees, Kilometers } from '../../types/types';
5
- import { OpticalSensor } from '../../sensor/OpticalSensor';
6
- import { Antenna } from '../../comm/Antenna';
7
- import { Decibels, Hertz, Watts } from '../../comm/CommTypes';
8
- import { Transmitter } from '../../comm/Transmitter';
9
-
10
- describe('Satellite', () => {
11
- // ISS TLE for testing
12
- const tle1 = '1 25544U 98067A 22203.46960946 .00003068 00000+0 61583-4 0 9996' as TleLine1;
13
- const tle2 = '2 25544 51.6415 161.8339 0005168 35.9781 54.7009 15.50067047350657' as TleLine2;
14
-
15
- describe('history tracking', () => {
16
- it('should not have history enabled by default', () => {
17
- const sat = new Satellite({ tle1, tle2 });
18
-
19
- expect(sat.isHistoryEnabled).toBe(false);
20
- expect(sat.history).toBeNull();
21
- });
22
-
23
- it('should enable history via constructor config', () => {
24
- const sat = new Satellite({
25
- tle1,
26
- tle2,
27
- historyConfig: { maxLength: 100 },
28
- });
29
-
30
- expect(sat.isHistoryEnabled).toBe(true);
31
- expect(sat.history).not.toBeNull();
32
- });
33
-
34
- it('should record position after eci() when history enabled', () => {
35
- const sat = new Satellite({
36
- tle1,
37
- tle2,
38
- historyConfig: { maxLength: 100 },
39
- });
40
-
41
- const date1 = new Date('2022-07-22T11:16:14Z'); // Close to TLE epoch
42
- const date2 = new Date('2022-07-22T11:17:14Z'); // 1 minute later
43
-
44
- sat.eci(date1);
45
- sat.eci(date2);
46
-
47
- const history = sat.history!;
48
-
49
- expect(history.length).toBe(2);
50
- expect(history.getAll()[0].time).toEqual(date1);
51
- expect(history.getAll()[1].time).toEqual(date2);
52
-
53
- // Verify position data was recorded
54
- const entry = history.getAll()[0];
55
-
56
- expect(entry.data.position).toBeDefined();
57
- expect(entry.data.velocity).toBeDefined();
58
- expect(entry.data.position.x).not.toBe(0);
59
- });
60
-
61
- it('should respect sampling interval', () => {
62
- const sat = new Satellite({
63
- tle1,
64
- tle2,
65
- historyConfig: { maxLength: 100, samplingInterval: 60000 }, // 60s minimum
66
- });
67
-
68
- const date1 = new Date('2022-07-22T11:16:14Z');
69
- const date2 = new Date('2022-07-22T11:16:44Z'); // 30s later (within interval)
70
- const date3 = new Date('2022-07-22T11:17:44Z'); // 90s after date1 (outside interval)
71
-
72
- sat.eci(date1);
73
- sat.eci(date2); // Should be skipped due to sampling interval
74
- sat.eci(date3);
75
-
76
- expect(sat.history!.length).toBe(2); // Only date1 and date3
77
- });
78
-
79
- it('should respect maxLength', () => {
80
- const sat = new Satellite({
81
- tle1,
82
- tle2,
83
- historyConfig: { maxLength: 3, autoClean: true },
84
- });
85
-
86
- // Add 5 entries
87
- for (let i = 0; i < 5; i++) {
88
- const date = new Date('2022-07-22T11:16:14Z');
89
-
90
- date.setMinutes(date.getMinutes() + i);
91
- sat.eci(date);
92
- }
93
-
94
- // Should only keep the last 3
95
- expect(sat.history!.length).toBe(3);
96
- });
97
-
98
- it('should enable/disable history post-construction', () => {
99
- const sat = new Satellite({ tle1, tle2 });
100
-
101
- sat.enableHistory({ maxLength: 50 });
102
- expect(sat.isHistoryEnabled).toBe(true);
103
-
104
- sat.eci(new Date('2022-07-22T11:16:14Z'));
105
- expect(sat.history!.length).toBe(1);
106
-
107
- sat.disableHistory();
108
- expect(sat.history).toBeNull();
109
- expect(sat.isHistoryEnabled).toBe(false);
110
- });
111
-
112
- it('should not record when history disabled', () => {
113
- const sat = new Satellite({ tle1, tle2 });
114
-
115
- sat.eci(new Date('2022-07-22T11:16:14Z'));
116
- sat.eci(new Date('2022-07-22T11:17:14Z'));
117
-
118
- // History should still be null
119
- expect(sat.history).toBeNull();
120
- });
121
-
122
- it('should handle propagation failure without recording', () => {
123
- const sat = new Satellite({
124
- tle1,
125
- tle2,
126
- historyConfig: { maxLength: 100 },
127
- });
128
-
129
- // Try propagating to a date far in the future (will likely fail or be invalid)
130
- const farFuture = new Date('2100-01-01T00:00:00Z');
131
- const result = sat.eci(farFuture);
132
-
133
- // Even if it returns null or fails, history should not throw
134
- // and should not record invalid entries
135
- if (result === null) {
136
- expect(sat.history!.length).toBe(0);
137
- }
138
- });
139
-
140
- it('should preserve history data across multiple queries', () => {
141
- const sat = new Satellite({
142
- tle1,
143
- tle2,
144
- historyConfig: { maxLength: 100 },
145
- });
146
-
147
- const dates = [
148
- new Date('2022-07-22T11:16:14Z'),
149
- new Date('2022-07-22T11:17:14Z'),
150
- new Date('2022-07-22T11:18:14Z'),
151
- ];
152
-
153
- dates.forEach((date) => sat.eci(date));
154
-
155
- const history = sat.history!;
156
- const entries = history.getAll();
157
-
158
- expect(entries.length).toBe(3);
159
-
160
- // Verify each entry has correct structure
161
- entries.forEach((entry, i) => {
162
- expect(entry.time).toEqual(dates[i]);
163
- expect(entry.data.position).toBeDefined();
164
- expect(entry.data.velocity).toBeDefined();
165
- expect(typeof entry.data.position.x).toBe('number');
166
- expect(typeof entry.data.position.y).toBe('number');
167
- expect(typeof entry.data.position.z).toBe('number');
168
- });
169
- });
170
-
171
- it('should support getRange on history', () => {
172
- const sat = new Satellite({
173
- tle1,
174
- tle2,
175
- historyConfig: { maxLength: 100 },
176
- });
177
-
178
- const startDate = new Date('2022-07-22T11:16:14Z');
179
-
180
- // Add 5 entries, 1 minute apart
181
- for (let i = 0; i < 5; i++) {
182
- const date = new Date(startDate.getTime() + i * 60000);
183
-
184
- sat.eci(date);
185
- }
186
-
187
- // Get range for middle 3 entries
188
- const rangeStart = new Date(startDate.getTime() + 60000); // 2nd entry
189
- const rangeEnd = new Date(startDate.getTime() + 180000); // 4th entry
190
-
191
- const range = sat.history!.getRange(rangeStart, rangeEnd);
192
-
193
- expect(range.length).toBe(3);
194
- });
195
-
196
- it('should support getLast on history', () => {
197
- const sat = new Satellite({
198
- tle1,
199
- tle2,
200
- historyConfig: { maxLength: 100 },
201
- });
202
-
203
- const dates = [
204
- new Date('2022-07-22T11:16:14Z'),
205
- new Date('2022-07-22T11:17:14Z'),
206
- new Date('2022-07-22T11:18:14Z'),
207
- ];
208
-
209
- dates.forEach((date) => sat.eci(date));
210
-
211
- const last2 = sat.history!.getLast(2);
212
-
213
- expect(last2.length).toBe(2);
214
- expect(last2[0].time).toEqual(dates[1]);
215
- expect(last2[1].time).toEqual(dates[2]);
216
- });
217
- });
218
-
219
- describe('clone', () => {
220
- describe('satrec independence', () => {
221
- it('should create independent satrec objects', () => {
222
- const sat = new Satellite({ tle1, tle2 });
223
- const cloned = sat.clone();
224
-
225
- // Propagate original to a specific time
226
- const date1 = new Date('2022-07-22T11:16:14Z');
227
- const pos1 = sat.eci(date1);
228
-
229
- // Propagate clone to a different time
230
- const date2 = new Date('2022-07-22T23:00:00Z');
231
-
232
- cloned.eci(date2);
233
-
234
- // Propagate original again - should still work correctly
235
- const pos1Again = sat.eci(date1);
236
-
237
- expect(pos1?.position.x).toBeCloseTo(pos1Again?.position.x ?? NaN, 6);
238
- expect(pos1?.position.y).toBeCloseTo(pos1Again?.position.y ?? NaN, 6);
239
- expect(pos1?.position.z).toBeCloseTo(pos1Again?.position.z ?? NaN, 6);
240
- });
241
-
242
- it('should propagate independently without affecting original', () => {
243
- const sat = new Satellite({ tle1, tle2 });
244
- const cloned = sat.clone();
245
-
246
- // Both should have same TLE
247
- expect(cloned.tle1).toBe(sat.tle1);
248
- expect(cloned.tle2).toBe(sat.tle2);
249
-
250
- // But be independent objects
251
- expect(cloned).not.toBe(sat);
252
- expect(cloned.satrec).not.toBe(sat.satrec);
253
- });
254
- });
255
-
256
- describe('sensor cloning', () => {
257
- it('should deep clone sensors', () => {
258
- const sat = new Satellite({ tle1, tle2 });
259
- const sensor = new OpticalSensor({
260
- id: 7001,
261
- name: 'Test Optical Sensor',
262
- sensorType: SensorType.OPTICAL,
263
- fieldOfView: {
264
- boresightEl: 45 as Degrees,
265
- halfAngle: 30 as Degrees,
266
- minRange: 100 as Kilometers,
267
- maxRange: 50000 as Kilometers,
268
- },
269
- aperture: 0.5,
270
- });
271
-
272
- sat.addSensor(sensor);
273
- sensor.setParent(sat);
274
-
275
- const cloned = sat.clone();
276
-
277
- // Cloned satellite should have same number of sensors
278
- expect(cloned.sensors.length).toBe(1);
279
-
280
- // But they should be different instances
281
- expect(cloned.sensors[0]).not.toBe(sensor);
282
- expect(cloned.sensors[0].id).toBe(sensor.id);
283
- expect(cloned.sensors[0].name).toBe(sensor.name);
284
- });
285
-
286
- it('should update sensor parent to cloned satellite', () => {
287
- const sat = new Satellite({ tle1, tle2 });
288
- const sensor = new OpticalSensor({
289
- id: 7001,
290
- name: 'Test Optical Sensor',
291
- sensorType: SensorType.OPTICAL,
292
- fieldOfView: {
293
- boresightEl: 45 as Degrees,
294
- halfAngle: 30 as Degrees,
295
- minRange: 100 as Kilometers,
296
- maxRange: 50000 as Kilometers,
297
- },
298
- });
299
-
300
- sat.addSensor(sensor);
301
- sensor.setParent(sat);
302
-
303
- const cloned = sat.clone();
304
- const clonedSensor = cloned.sensors[0] as OpticalSensor;
305
-
306
- // Cloned sensor's parent should point to cloned satellite
307
- expect(clonedSensor.parent).toBe(cloned);
308
- expect(clonedSensor.parent).not.toBe(sat);
309
-
310
- // Original sensor's parent should still point to original satellite
311
- expect(sensor.parent).toBe(sat);
312
- });
313
-
314
- it('should not affect original sensors when modifying clone', () => {
315
- const sat = new Satellite({ tle1, tle2 });
316
- const sensor = new OpticalSensor({
317
- id: 7001,
318
- name: 'Test Optical Sensor',
319
- sensorType: SensorType.OPTICAL,
320
- fieldOfView: {
321
- boresightEl: 45 as Degrees,
322
- halfAngle: 30 as Degrees,
323
- minRange: 100 as Kilometers,
324
- maxRange: 50000 as Kilometers,
325
- },
326
- });
327
-
328
- sat.addSensor(sensor);
329
- sensor.setParent(sat);
330
-
331
- const cloned = sat.clone();
332
- const clonedSensor = cloned.sensors[0] as OpticalSensor;
333
-
334
- // Modify cloned sensor
335
- clonedSensor.name = 'Modified Sensor';
336
-
337
- // Original should be unchanged
338
- expect(sensor.name).toBe('Test Optical Sensor');
339
- });
340
- });
341
-
342
- describe('commDevice cloning', () => {
343
- it('should deep clone communication devices', () => {
344
- const sat = new Satellite({ tle1, tle2 });
345
- const transmitter = new Transmitter({
346
- id: 7002,
347
- name: 'Test Transmitter',
348
- frequency: 12e9 as Hertz,
349
- power: 50 as Watts,
350
- bandwidth: 36e6 as Hertz,
351
- antenna: new Antenna({ gain: 30 as Decibels }),
352
- });
353
-
354
- sat.addCommDevice(transmitter);
355
- transmitter.setParent(sat);
356
-
357
- const cloned = sat.clone();
358
-
359
- // Cloned satellite should have same number of comm devices
360
- expect(cloned.commDevices.length).toBe(1);
361
-
362
- // But they should be different instances
363
- expect(cloned.commDevices[0]).not.toBe(transmitter);
364
- expect(cloned.commDevices[0].id).toBe(transmitter.id);
365
- expect(cloned.commDevices[0].name).toBe(transmitter.name);
366
- });
367
-
368
- it('should update commDevice parent to cloned satellite', () => {
369
- const sat = new Satellite({ tle1, tle2 });
370
- const transmitter = new Transmitter({
371
- id: 7002,
372
- name: 'Test Transmitter',
373
- frequency: 12e9 as Hertz,
374
- power: 50 as Watts,
375
- bandwidth: 36e6 as Hertz,
376
- antenna: new Antenna({ gain: 30 as Decibels }),
377
- });
378
-
379
- sat.addCommDevice(transmitter);
380
- transmitter.setParent(sat);
381
-
382
- const cloned = sat.clone();
383
- const clonedTx = cloned.commDevices[0] as Transmitter;
384
-
385
- // Cloned comm device's parent should point to cloned satellite
386
- expect(clonedTx.parent).toBe(cloned);
387
- expect(clonedTx.parent).not.toBe(sat);
388
-
389
- // Original comm device's parent should still point to original satellite
390
- expect(transmitter.parent).toBe(sat);
391
- });
392
- });
393
-
394
- describe('history cloning', () => {
395
- it('should preserve history config but start empty by default', () => {
396
- const sat = new Satellite({
397
- tle1,
398
- tle2,
399
- historyConfig: { maxLength: 100, samplingInterval: 1000 },
400
- });
401
-
402
- sat.eci(new Date('2022-07-22T11:16:14Z'));
403
- sat.eci(new Date('2022-07-22T11:17:14Z'));
404
-
405
- const cloned = sat.clone();
406
-
407
- expect(cloned.isHistoryEnabled).toBe(true);
408
- expect(cloned.history?.config.maxLength).toBe(100);
409
- expect(cloned.history?.config.samplingInterval).toBe(1000);
410
- expect(cloned.history?.length).toBe(0); // Empty by default
411
- });
412
-
413
- it('should clone history entries when cloneHistory option is true', () => {
414
- const sat = new Satellite({
415
- tle1,
416
- tle2,
417
- historyConfig: { maxLength: 100 },
418
- });
419
-
420
- sat.eci(new Date('2022-07-22T11:16:14Z'));
421
- sat.eci(new Date('2022-07-22T11:17:14Z'));
422
-
423
- const cloned = sat.clone({ cloneHistory: true });
424
-
425
- expect(cloned.history?.length).toBe(sat.history?.length);
426
- expect(cloned.history?.length).toBe(2);
427
- });
428
-
429
- it('should have independent history after cloning with cloneHistory', () => {
430
- const sat = new Satellite({
431
- tle1,
432
- tle2,
433
- historyConfig: { maxLength: 100 },
434
- });
435
-
436
- sat.eci(new Date('2022-07-22T11:16:14Z'));
437
-
438
- const cloned = sat.clone({ cloneHistory: true });
439
-
440
- // Add more entries to clone
441
- cloned.eci(new Date('2022-07-22T11:17:14Z'));
442
- cloned.eci(new Date('2022-07-22T11:18:14Z'));
443
-
444
- // Original should not be affected
445
- expect(sat.history?.length).toBe(1);
446
- expect(cloned.history?.length).toBe(3);
447
- });
448
-
449
- it('should work without history enabled', () => {
450
- const sat = new Satellite({ tle1, tle2 });
451
- const cloned = sat.clone();
452
-
453
- expect(cloned.isHistoryEnabled).toBe(false);
454
- expect(cloned.history).toBeNull();
455
- });
456
- });
457
-
458
- describe('basic properties', () => {
459
- it('should clone id, name, and metadata', () => {
460
- const sat = new Satellite({
461
- tle1,
462
- tle2,
463
- name: 'Test Satellite',
464
- });
465
-
466
- sat.metadata = { customField: 'test value' };
467
-
468
- const cloned = sat.clone();
469
-
470
- expect(cloned.id).toBe(sat.id);
471
- expect(cloned.name).toBe(sat.name);
472
- expect(cloned.metadata).toEqual(sat.metadata);
473
- expect(cloned.metadata).not.toBe(sat.metadata); // Should be a copy
474
- });
475
-
476
- it('should preserve TLE-derived properties', () => {
477
- const sat = new Satellite({ tle1, tle2 });
478
- const cloned = sat.clone();
479
-
480
- expect(cloned.inclination).toBe(sat.inclination);
481
- expect(cloned.eccentricity).toBe(sat.eccentricity);
482
- expect(cloned.meanMotion).toBe(sat.meanMotion);
483
- expect(cloned.period).toBe(sat.period);
484
- });
485
- });
486
- });
487
- });