ootk 4.0.0-0 → 4.0.0-2

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 (356) hide show
  1. package/CHANGELOG.md +142 -31
  2. package/{lib → dist}/coordinate/Hill.d.ts +17 -18
  3. package/{lib → dist}/coordinate/Hill.js +44 -36
  4. package/dist/coordinate/Hill.js.map +1 -0
  5. package/{lib → dist}/covariance/CovarianceSample.d.ts +6 -7
  6. package/{lib → dist}/covariance/CovarianceSample.js +29 -28
  7. package/dist/covariance/CovarianceSample.js.map +1 -0
  8. package/{lib → dist}/covariance/StateCovariance.d.ts +4 -3
  9. package/{lib → dist}/covariance/StateCovariance.js +8 -5
  10. package/dist/covariance/StateCovariance.js.map +1 -0
  11. package/{lib → dist}/force/AtmosphericDrag.d.ts +1 -2
  12. package/{lib → dist}/force/AtmosphericDrag.js +13 -6
  13. package/dist/force/AtmosphericDrag.js.map +1 -0
  14. package/{lib → dist}/force/EarthGravity.d.ts +1 -2
  15. package/{lib → dist}/force/EarthGravity.js +4 -2
  16. package/dist/force/EarthGravity.js.map +1 -0
  17. package/{lib → dist}/force/Force.d.ts +3 -2
  18. package/{lib → dist}/force/Force.js +3 -2
  19. package/dist/force/Force.js.map +1 -0
  20. package/{lib → dist}/force/ForceModel.d.ts +4 -5
  21. package/{lib → dist}/force/ForceModel.js +6 -2
  22. package/dist/force/ForceModel.js.map +1 -0
  23. package/{lib → dist}/force/Gravity.d.ts +1 -4
  24. package/{lib → dist}/force/Gravity.js +3 -4
  25. package/dist/force/Gravity.js.map +1 -0
  26. package/{lib → dist}/force/SolarRadiationPressure.d.ts +1 -2
  27. package/{lib → dist}/force/SolarRadiationPressure.js +6 -4
  28. package/dist/force/SolarRadiationPressure.js.map +1 -0
  29. package/{lib → dist}/force/ThirdBodyGravity.d.ts +1 -2
  30. package/{lib → dist}/force/ThirdBodyGravity.js +4 -3
  31. package/dist/force/ThirdBodyGravity.js.map +1 -0
  32. package/{lib → dist}/force/Thrust.d.ts +10 -11
  33. package/{lib → dist}/force/Thrust.js +8 -3
  34. package/dist/force/Thrust.js.map +1 -0
  35. package/dist/interfaces/RfSensorParams.d.ts +28 -0
  36. package/dist/interfaces/RfSensorParams.js +24 -0
  37. package/dist/interfaces/RfSensorParams.js.map +1 -0
  38. package/dist/interfaces/index.d.ts +1 -0
  39. package/dist/interfaces/index.js +2 -0
  40. package/dist/interfaces/index.js.map +1 -0
  41. package/{lib → dist}/interpolator/ChebyshevCoefficients.d.ts +11 -15
  42. package/{lib → dist}/interpolator/ChebyshevCoefficients.js +19 -15
  43. package/dist/interpolator/ChebyshevCoefficients.js.map +1 -0
  44. package/{lib → dist}/interpolator/ChebyshevInterpolator.d.ts +1 -2
  45. package/{lib → dist}/interpolator/ChebyshevInterpolator.js +2 -2
  46. package/dist/interpolator/ChebyshevInterpolator.js.map +1 -0
  47. package/{lib → dist}/interpolator/CubicSpline.d.ts +8 -9
  48. package/{lib → dist}/interpolator/CubicSpline.js +10 -5
  49. package/dist/interpolator/CubicSpline.js.map +1 -0
  50. package/{lib → dist}/interpolator/CubicSplineInterpolator.d.ts +2 -3
  51. package/{lib → dist}/interpolator/CubicSplineInterpolator.js +6 -4
  52. package/dist/interpolator/CubicSplineInterpolator.js.map +1 -0
  53. package/{lib → dist}/interpolator/FieldInterpolator.d.ts +7 -5
  54. package/{lib → dist}/interpolator/FieldInterpolator.js +6 -3
  55. package/dist/interpolator/FieldInterpolator.js.map +1 -0
  56. package/{lib → dist}/interpolator/Interpolator.d.ts +1 -2
  57. package/{lib → dist}/interpolator/Interpolator.js +1 -2
  58. package/dist/interpolator/Interpolator.js.map +1 -0
  59. package/{lib → dist}/interpolator/LagrangeInterpolator.d.ts +8 -10
  60. package/{lib → dist}/interpolator/LagrangeInterpolator.js +32 -29
  61. package/dist/interpolator/LagrangeInterpolator.js.map +1 -0
  62. package/{lib → dist}/interpolator/StateInterpolator.d.ts +2 -4
  63. package/{lib → dist}/interpolator/StateInterpolator.js +2 -4
  64. package/dist/interpolator/StateInterpolator.js.map +1 -0
  65. package/{lib → dist}/interpolator/VerletBlendInterpolator.d.ts +4 -5
  66. package/{lib → dist}/interpolator/VerletBlendInterpolator.js +16 -13
  67. package/dist/interpolator/VerletBlendInterpolator.js.map +1 -0
  68. package/{lib/ootk.d.ts → dist/main.d.ts} +4 -2
  69. package/dist/main.js +32 -0
  70. package/dist/main.js.map +1 -0
  71. package/{lib → dist}/maneuver/TwoBurnOrbitTransfer.d.ts +5 -7
  72. package/{lib → dist}/maneuver/TwoBurnOrbitTransfer.js +6 -3
  73. package/dist/maneuver/TwoBurnOrbitTransfer.js.map +1 -0
  74. package/{lib → dist}/maneuver/Waypoint.d.ts +30 -5
  75. package/{lib → dist}/maneuver/Waypoint.js +31 -4
  76. package/dist/maneuver/Waypoint.js.map +1 -0
  77. package/{lib → dist}/objects/DetailedSatellite.d.ts +7 -31
  78. package/{lib → dist}/objects/DetailedSatellite.js +68 -72
  79. package/dist/objects/DetailedSatellite.js.map +1 -0
  80. package/{lib → dist}/objects/DetailedSensor.d.ts +1 -2
  81. package/{lib → dist}/objects/DetailedSensor.js +22 -2
  82. package/dist/objects/DetailedSensor.js.map +1 -0
  83. package/{lib → dist}/objects/LandObject.d.ts +3 -6
  84. package/{lib → dist}/objects/LandObject.js +9 -3
  85. package/dist/objects/LandObject.js.map +1 -0
  86. package/{lib → dist}/objects/Marker.d.ts +1 -2
  87. package/{lib → dist}/objects/Marker.js +1 -2
  88. package/dist/objects/Marker.js.map +1 -0
  89. package/dist/objects/RfSensor.d.ts +41 -0
  90. package/dist/objects/RfSensor.js +67 -0
  91. package/dist/objects/RfSensor.js.map +1 -0
  92. package/{lib → dist}/objects/index.d.ts +1 -1
  93. package/{lib → dist}/objects/index.js +1 -1
  94. package/dist/objects/index.js.map +1 -0
  95. package/{lib → dist}/observation/Observation.d.ts +42 -4
  96. package/{lib → dist}/observation/Observation.js +41 -10
  97. package/dist/observation/Observation.js.map +1 -0
  98. package/{lib → dist}/observation/ObservationOptical.d.ts +7 -6
  99. package/{lib → dist}/observation/ObservationOptical.js +19 -15
  100. package/dist/observation/ObservationOptical.js.map +1 -0
  101. package/{lib → dist}/observation/ObservationRadar.d.ts +7 -4
  102. package/{lib → dist}/observation/ObservationRadar.js +25 -19
  103. package/dist/observation/ObservationRadar.js.map +1 -0
  104. package/{lib → dist}/observation/ObservationUtils.d.ts +1 -2
  105. package/{lib → dist}/observation/ObservationUtils.js +1 -2
  106. package/dist/observation/ObservationUtils.js.map +1 -0
  107. package/{lib → dist}/observation/PropagatorPairs.d.ts +3 -2
  108. package/{lib → dist}/observation/PropagatorPairs.js +7 -4
  109. package/dist/observation/PropagatorPairs.js.map +1 -0
  110. package/{lib → dist}/operations/BoxMuller.d.ts +7 -2
  111. package/{lib → dist}/operations/BoxMuller.js +15 -4
  112. package/dist/operations/BoxMuller.js.map +1 -0
  113. package/dist/operations/EulerAngles.d.ts +105 -0
  114. package/{lib → dist}/operations/EulerAngles.js +72 -22
  115. package/dist/operations/EulerAngles.js.map +1 -0
  116. package/{lib → dist}/operations/Quaternion.d.ts +5 -6
  117. package/{lib → dist}/operations/Quaternion.js +12 -9
  118. package/dist/operations/Quaternion.js.map +1 -0
  119. package/{lib → dist}/operations/RandomGaussianSource.d.ts +1 -2
  120. package/{lib → dist}/operations/RandomGaussianSource.js +3 -3
  121. package/dist/operations/RandomGaussianSource.js.map +1 -0
  122. package/{lib → dist}/optimize/ChebyshevCompressor.d.ts +3 -2
  123. package/{lib → dist}/optimize/ChebyshevCompressor.js +7 -4
  124. package/dist/optimize/ChebyshevCompressor.js.map +1 -0
  125. package/{lib → dist}/optimize/DownhillSimplex.d.ts +16 -2
  126. package/{lib → dist}/optimize/DownhillSimplex.js +16 -2
  127. package/dist/optimize/DownhillSimplex.js.map +1 -0
  128. package/{lib → dist}/optimize/GoldenSection.d.ts +9 -3
  129. package/{lib → dist}/optimize/GoldenSection.js +9 -3
  130. package/dist/optimize/GoldenSection.js.map +1 -0
  131. package/{lib → dist}/optimize/PolynomialRegression.d.ts +14 -2
  132. package/{lib → dist}/optimize/PolynomialRegression.js +19 -2
  133. package/dist/optimize/PolynomialRegression.js.map +1 -0
  134. package/{lib → dist}/optimize/PolynomicalRegressionResult.d.ts +5 -2
  135. package/{lib → dist}/optimize/PolynomicalRegressionResult.js +8 -2
  136. package/dist/optimize/PolynomicalRegressionResult.js.map +1 -0
  137. package/{lib → dist}/optimize/SimpleLinearRegression.d.ts +5 -2
  138. package/{lib → dist}/optimize/SimpleLinearRegression.js +12 -7
  139. package/dist/optimize/SimpleLinearRegression.js.map +1 -0
  140. package/{lib → dist}/optimize/SimplexEntry.d.ts +1 -2
  141. package/{lib → dist}/optimize/SimplexEntry.js +5 -2
  142. package/dist/optimize/SimplexEntry.js.map +1 -0
  143. package/{lib → dist}/orbit_determination/BatchLeastSquaresOD.d.ts +14 -3
  144. package/{lib → dist}/orbit_determination/BatchLeastSquaresOD.js +29 -4
  145. package/dist/orbit_determination/BatchLeastSquaresOD.js.map +1 -0
  146. package/{lib → dist}/orbit_determination/BatchLeastSquaresResult.d.ts +4 -2
  147. package/{lib → dist}/orbit_determination/BatchLeastSquaresResult.js +7 -2
  148. package/dist/orbit_determination/BatchLeastSquaresResult.js.map +1 -0
  149. package/{lib → dist}/orbit_determination/GibbsIOD.d.ts +9 -4
  150. package/{lib → dist}/orbit_determination/GibbsIOD.js +11 -5
  151. package/dist/orbit_determination/GibbsIOD.js.map +1 -0
  152. package/{lib → dist}/orbit_determination/GoodingIOD.d.ts +21 -22
  153. package/{lib → dist}/orbit_determination/GoodingIOD.js +74 -71
  154. package/dist/orbit_determination/GoodingIOD.js.map +1 -0
  155. package/{lib → dist}/orbit_determination/HerrickGibbsIOD.d.ts +4 -4
  156. package/{lib → dist}/orbit_determination/HerrickGibbsIOD.js +3 -2
  157. package/dist/orbit_determination/HerrickGibbsIOD.js.map +1 -0
  158. package/{lib → dist}/orbit_determination/LambertIOD.d.ts +21 -8
  159. package/{lib → dist}/orbit_determination/LambertIOD.js +20 -6
  160. package/dist/orbit_determination/LambertIOD.js.map +1 -0
  161. package/{lib → dist}/orbit_determination/ModifiedGoodingIOD.d.ts +6 -7
  162. package/{lib → dist}/orbit_determination/ModifiedGoodingIOD.js +12 -11
  163. package/dist/orbit_determination/ModifiedGoodingIOD.js.map +1 -0
  164. package/{lib → dist}/propagator/DormandPrince54Propagator.d.ts +1 -2
  165. package/dist/propagator/DormandPrince54Propagator.js +64 -0
  166. package/dist/propagator/DormandPrince54Propagator.js.map +1 -0
  167. package/{lib → dist}/propagator/KeplerPropagator.d.ts +1 -2
  168. package/{lib → dist}/propagator/KeplerPropagator.js +5 -2
  169. package/{lib → dist}/propagator/KeplerPropagator.js.map +1 -1
  170. package/{lib → dist}/propagator/Propagator.d.ts +5 -6
  171. package/{lib → dist}/propagator/Propagator.js +5 -6
  172. package/dist/propagator/Propagator.js.map +1 -0
  173. package/{lib → dist}/propagator/RkCheckpoint.d.ts +1 -2
  174. package/{lib → dist}/propagator/RkCheckpoint.js +3 -2
  175. package/dist/propagator/RkCheckpoint.js.map +1 -0
  176. package/{lib → dist}/propagator/RkResult.d.ts +1 -2
  177. package/{lib → dist}/propagator/RkResult.js +4 -2
  178. package/dist/propagator/RkResult.js.map +1 -0
  179. package/{lib → dist}/propagator/RungeKutta4Propagator.d.ts +14 -10
  180. package/{lib → dist}/propagator/RungeKutta4Propagator.js +45 -36
  181. package/dist/propagator/RungeKutta4Propagator.js.map +1 -0
  182. package/{lib → dist}/propagator/RungeKutta89Propagator.d.ts +1 -2
  183. package/dist/propagator/RungeKutta89Propagator.js +126 -0
  184. package/dist/propagator/RungeKutta89Propagator.js.map +1 -0
  185. package/{lib → dist}/propagator/RungeKuttaAdaptive.d.ts +13 -11
  186. package/{lib → dist}/propagator/RungeKuttaAdaptive.js +31 -24
  187. package/dist/propagator/RungeKuttaAdaptive.js.map +1 -0
  188. package/{lib → dist}/propagator/Sgp4Propagator.d.ts +3 -4
  189. package/{lib → dist}/propagator/Sgp4Propagator.js +4 -3
  190. package/dist/propagator/Sgp4Propagator.js.map +1 -0
  191. package/{lib → dist}/smoothing/ExponentialSmoothing.d.ts +1 -2
  192. package/{lib → dist}/smoothing/ExponentialSmoothing.js +1 -2
  193. package/dist/smoothing/ExponentialSmoothing.js.map +1 -0
  194. package/dist/transforms/index.d.ts +1 -0
  195. package/dist/transforms/index.js +2 -0
  196. package/dist/transforms/index.js.map +1 -0
  197. package/dist/transforms/transforms.d.ts +58 -0
  198. package/dist/transforms/transforms.js +94 -0
  199. package/dist/transforms/transforms.js.map +1 -0
  200. package/{lib → dist}/types/types.d.ts +44 -4
  201. package/{lib → dist}/types/types.js +1 -2
  202. package/dist/types/types.js.map +1 -0
  203. package/dist/utils/functions.d.ts +8 -0
  204. package/dist/utils/functions.js +18 -0
  205. package/dist/utils/functions.js.map +1 -0
  206. package/dist/utils/index.d.ts +2 -0
  207. package/dist/utils/index.js +3 -0
  208. package/dist/utils/index.js.map +1 -0
  209. package/dist/utils/jacobian.d.ts +11 -0
  210. package/dist/utils/jacobian.js +29 -0
  211. package/dist/utils/jacobian.js.map +1 -0
  212. package/package.json +32 -42
  213. package/src/coordinate/Hill.ts +326 -0
  214. package/src/coordinate/index.ts +1 -0
  215. package/src/covariance/CovarianceSample.ts +194 -0
  216. package/src/covariance/StateCovariance.ts +69 -0
  217. package/src/force/AtmosphericDrag.ts +101 -0
  218. package/src/force/EarthGravity.ts +157 -0
  219. package/src/force/Force.ts +33 -0
  220. package/src/force/ForceModel.ts +91 -0
  221. package/src/force/Gravity.ts +53 -0
  222. package/src/force/SolarRadiationPressure.ts +42 -0
  223. package/src/force/ThirdBodyGravity.ts +62 -0
  224. package/src/force/Thrust.ts +83 -0
  225. package/src/interfaces/RfSensorParams.ts +30 -0
  226. package/src/interfaces/index.ts +1 -0
  227. package/src/interpolator/ChebyshevCoefficients.ts +109 -0
  228. package/src/interpolator/ChebyshevInterpolator.ts +87 -0
  229. package/src/interpolator/CubicSpline.ts +72 -0
  230. package/src/interpolator/CubicSplineInterpolator.ts +90 -0
  231. package/src/interpolator/FieldInterpolator.ts +37 -0
  232. package/src/interpolator/Interpolator.ts +56 -0
  233. package/src/interpolator/LagrangeInterpolator.ts +192 -0
  234. package/src/interpolator/StateInterpolator.ts +39 -0
  235. package/src/interpolator/VerletBlendInterpolator.ts +146 -0
  236. package/{lib/ootk.js → src/main.ts} +7 -3
  237. package/src/maneuver/TwoBurnOrbitTransfer.ts +79 -0
  238. package/src/maneuver/Waypoint.ts +267 -0
  239. package/src/objects/DetailedSatellite.ts +159 -0
  240. package/src/objects/DetailedSensor.ts +68 -0
  241. package/src/objects/LandObject.ts +46 -0
  242. package/src/objects/Marker.ts +25 -0
  243. package/src/objects/RfSensor.ts +78 -0
  244. package/src/objects/index.ts +5 -0
  245. package/src/observation/Observation.ts +125 -0
  246. package/src/observation/ObservationOptical.ts +146 -0
  247. package/src/observation/ObservationRadar.ts +131 -0
  248. package/src/observation/ObservationUtils.ts +40 -0
  249. package/src/observation/PropagatorPairs.ts +45 -0
  250. package/src/operations/BoxMuller.ts +87 -0
  251. package/src/operations/EulerAngles.ts +183 -0
  252. package/src/operations/Quaternion.ts +222 -0
  253. package/src/operations/RandomGaussianSource.ts +51 -0
  254. package/src/operations/index.ts +4 -0
  255. package/src/optimize/ChebyshevCompressor.ts +96 -0
  256. package/src/optimize/DownhillSimplex.ts +212 -0
  257. package/src/optimize/GoldenSection.ts +71 -0
  258. package/src/optimize/PolynomialRegression.ts +109 -0
  259. package/src/optimize/PolynomicalRegressionResult.ts +32 -0
  260. package/src/optimize/SimpleLinearRegression.ts +127 -0
  261. package/src/optimize/SimplexEntry.ts +50 -0
  262. package/src/orbit_determination/BatchLeastSquaresOD.ts +174 -0
  263. package/src/orbit_determination/BatchLeastSquaresResult.ts +33 -0
  264. package/src/orbit_determination/GibbsIOD.ts +95 -0
  265. package/src/orbit_determination/GoodingIOD.ts +380 -0
  266. package/src/orbit_determination/HerrickGibbsIOD.ts +51 -0
  267. package/src/orbit_determination/LambertIOD.ts +260 -0
  268. package/src/orbit_determination/ModifiedGoodingIOD.ts +133 -0
  269. package/src/propagator/DormandPrince54Propagator.ts +73 -0
  270. package/src/propagator/KeplerPropagator.ts +102 -0
  271. package/src/propagator/Propagator.ts +253 -0
  272. package/src/propagator/RkCheckpoint.ts +25 -0
  273. package/src/propagator/RkResult.ts +26 -0
  274. package/src/propagator/RungeKutta4Propagator.ts +179 -0
  275. package/src/propagator/RungeKutta89Propagator.ts +132 -0
  276. package/src/propagator/RungeKuttaAdaptive.ts +232 -0
  277. package/src/propagator/Sgp4Propagator.ts +71 -0
  278. package/src/smoothing/ExponentialSmoothing.ts +90 -0
  279. package/src/transforms/index.ts +1 -0
  280. package/src/transforms/transforms.ts +117 -0
  281. package/src/types/types.ts +135 -0
  282. package/src/utils/functions.ts +21 -0
  283. package/src/utils/index.ts +2 -0
  284. package/src/utils/jacobian.ts +38 -0
  285. package/.eslintrc.json +0 -244
  286. package/jest.config.ts +0 -30
  287. package/lib/coordinate/Hill.js.map +0 -1
  288. package/lib/covariance/CovarianceSample.js.map +0 -1
  289. package/lib/covariance/StateCovariance.js.map +0 -1
  290. package/lib/force/AtmosphericDrag.js.map +0 -1
  291. package/lib/force/EarthGravity.js.map +0 -1
  292. package/lib/force/Force.js.map +0 -1
  293. package/lib/force/ForceModel.js.map +0 -1
  294. package/lib/force/Gravity.js.map +0 -1
  295. package/lib/force/SolarRadiationPressure.js.map +0 -1
  296. package/lib/force/ThirdBodyGravity.js.map +0 -1
  297. package/lib/force/Thrust.js.map +0 -1
  298. package/lib/interpolator/ChebyshevCoefficients.js.map +0 -1
  299. package/lib/interpolator/ChebyshevInterpolator.js.map +0 -1
  300. package/lib/interpolator/CubicSpline.js.map +0 -1
  301. package/lib/interpolator/CubicSplineInterpolator.js.map +0 -1
  302. package/lib/interpolator/FieldInterpolator.js.map +0 -1
  303. package/lib/interpolator/Interpolator.js.map +0 -1
  304. package/lib/interpolator/LagrangeInterpolator.js.map +0 -1
  305. package/lib/interpolator/StateInterpolator.js.map +0 -1
  306. package/lib/interpolator/VerletBlendInterpolator.js.map +0 -1
  307. package/lib/maneuver/TwoBurnOrbitTransfer.js.map +0 -1
  308. package/lib/maneuver/Waypoint.js.map +0 -1
  309. package/lib/objects/DetailedSatellite.js.map +0 -1
  310. package/lib/objects/DetailedSensor.js.map +0 -1
  311. package/lib/objects/LandObject.js.map +0 -1
  312. package/lib/objects/Marker.js.map +0 -1
  313. package/lib/objects/index.js.map +0 -1
  314. package/lib/observation/Observation.js.map +0 -1
  315. package/lib/observation/ObservationOptical.js.map +0 -1
  316. package/lib/observation/ObservationRadar.js.map +0 -1
  317. package/lib/observation/ObservationUtils.js.map +0 -1
  318. package/lib/observation/PropagatorPairs.js.map +0 -1
  319. package/lib/ootk.js.map +0 -1
  320. package/lib/operations/BoxMuller.js.map +0 -1
  321. package/lib/operations/EulerAngles.d.ts +0 -50
  322. package/lib/operations/EulerAngles.js.map +0 -1
  323. package/lib/operations/Quaternion.js.map +0 -1
  324. package/lib/operations/RandomGaussianSource.js.map +0 -1
  325. package/lib/optimize/ChebyshevCompressor.js.map +0 -1
  326. package/lib/optimize/DownhillSimplex.js.map +0 -1
  327. package/lib/optimize/GoldenSection.js.map +0 -1
  328. package/lib/optimize/PolynomialRegression.js.map +0 -1
  329. package/lib/optimize/PolynomicalRegressionResult.js.map +0 -1
  330. package/lib/optimize/SimpleLinearRegression.js.map +0 -1
  331. package/lib/optimize/SimplexEntry.js.map +0 -1
  332. package/lib/orbit_determination/BatchLeastSquaresOD.js.map +0 -1
  333. package/lib/orbit_determination/BatchLeastSquaresResult.js.map +0 -1
  334. package/lib/orbit_determination/GibbsIOD.js.map +0 -1
  335. package/lib/orbit_determination/GoodingIOD.js.map +0 -1
  336. package/lib/orbit_determination/HerrickGibbsIOD.js.map +0 -1
  337. package/lib/orbit_determination/LambertIOD.js.map +0 -1
  338. package/lib/orbit_determination/ModifiedGoodingIOD.js.map +0 -1
  339. package/lib/propagator/DormandPrince54Propagator.js +0 -68
  340. package/lib/propagator/DormandPrince54Propagator.js.map +0 -1
  341. package/lib/propagator/Propagator.js.map +0 -1
  342. package/lib/propagator/RkCheckpoint.js.map +0 -1
  343. package/lib/propagator/RkResult.js.map +0 -1
  344. package/lib/propagator/RungeKutta4Propagator.js.map +0 -1
  345. package/lib/propagator/RungeKutta89Propagator.js +0 -130
  346. package/lib/propagator/RungeKutta89Propagator.js.map +0 -1
  347. package/lib/propagator/RungeKuttaAdaptive.js.map +0 -1
  348. package/lib/propagator/Sgp4Propagator.js.map +0 -1
  349. package/lib/smoothing/ExponentialSmoothing.js.map +0 -1
  350. package/lib/types/types.js.map +0 -1
  351. /package/{lib → dist}/coordinate/index.d.ts +0 -0
  352. /package/{lib → dist}/coordinate/index.js +0 -0
  353. /package/{lib → dist}/coordinate/index.js.map +0 -0
  354. /package/{lib → dist}/operations/index.d.ts +0 -0
  355. /package/{lib → dist}/operations/index.js +0 -0
  356. /package/{lib → dist}/operations/index.js.map +0 -0
@@ -0,0 +1,105 @@
1
+ /**
2
+ * @author @thkruz Theodore Kruczek
3
+ * @license AGPL-3.0-or-later
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
5
+ *
6
+ * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
7
+ * terms of the GNU Affero General Public License as published by the Free Software
8
+ * Foundation, either version 3 of the License, or (at your option) any later version.
9
+ *
10
+ * Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12
+ * See the GNU Affero General Public License for more details.
13
+ *
14
+ * You should have received a copy of the GNU Affero General Public License along with
15
+ * Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
16
+ */
17
+ import { Degrees, Matrix, Radians, Vector3D } from 'ootk-core';
18
+ export declare class EulerAngles {
19
+ roll: number;
20
+ pitch: number;
21
+ yaw: number;
22
+ /**
23
+ * Create a new EulerAngles object from roll, pitch, and yaw angles in radians.
24
+ * @param roll Roll angle in radians.
25
+ * @param pitch Pitch angle in radians.
26
+ * @param yaw Yaw angle in radians.
27
+ */
28
+ constructor(roll: Radians, pitch: Radians, yaw: Radians);
29
+ /**
30
+ * Create a new EulerAngles object from roll, pitch, and yaw angles.
31
+ * @param rollDeg Roll angle in degrees.
32
+ * @param pitchDeg Pitch angle in degrees.
33
+ * @param yawDeg Yaw angle in degrees.
34
+ * @returns EulerAngles object.
35
+ */
36
+ static fromDegrees(rollDeg: Degrees, pitchDeg: Degrees, yawDeg: Degrees): EulerAngles;
37
+ /**
38
+ * Create a new EulerAngles object from 3-2-1 ordered direction cosine matrix c.
39
+ * @param c 3-2-1 ordered direction cosine matrix.
40
+ * @returns EulerAngles object.
41
+ */
42
+ static fromDcm321(c: Matrix): EulerAngles;
43
+ /**
44
+ * Gets the roll angle in degrees.
45
+ * @returns The roll angle in degrees.
46
+ */
47
+ get rollDegrees(): Degrees;
48
+ /**
49
+ * Gets the pitch angle in degrees.
50
+ * @returns The pitch angle in degrees.
51
+ */
52
+ get pitchDegrees(): Degrees;
53
+ /**
54
+ * Gets the yaw angle in degrees.
55
+ * @returns The yaw angle in degrees.
56
+ */
57
+ get yawDegrees(): Degrees;
58
+ /**
59
+ * Gets the roll angle in radians.
60
+ * @returns The roll angle in radians.
61
+ */
62
+ get phi(): Radians;
63
+ /**
64
+ * Gets the pitch angle in radians.
65
+ * @returns The pitch angle in radians.
66
+ */
67
+ get theta(): Radians;
68
+ /**
69
+ * Gets the yaw angle in radians.
70
+ * @returns The yaw angle in radians.
71
+ */
72
+ get psi(): Radians;
73
+ /**
74
+ * Gets the roll component in degrees.
75
+ * @returns The roll component in degrees.
76
+ */
77
+ get phiDegrees(): Degrees;
78
+ /**
79
+ * Gets the pitch component in degrees.
80
+ * @returns The pitch component in degrees.
81
+ */
82
+ get thetaDegrees(): Degrees;
83
+ /**
84
+ * Gets the yaw component in degrees.
85
+ * @returns The yaw component in degrees.
86
+ */
87
+ get psiDegrees(): Degrees;
88
+ /**
89
+ * Returns a string representation of the Euler angles.
90
+ * @param precision The number of decimal places to include in the string representation. Default is 6.
91
+ * @returns A string representation of the Euler angles.
92
+ */
93
+ toString(precision?: number): string;
94
+ /**
95
+ * Calculates the Direction Cosine Matrix (DCM) using the 3-2-1 Euler angles convention.
96
+ * @returns The calculated DCM as a Matrix object.
97
+ */
98
+ dcm321(): Matrix;
99
+ /**
100
+ * Rotates a 3D vector using a 3-2-1 Euler angle sequence.
101
+ * @param v The vector to rotate.
102
+ * @returns The rotated vector.
103
+ */
104
+ rotateVector321(v: Vector3D): Vector3D;
105
+ }
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -18,9 +17,17 @@
18
17
  import { DEG2RAD, Matrix, RAD2DEG } from 'ootk-core';
19
18
  // / Class containing Euler angles.
20
19
  export class EulerAngles {
20
+ // / Roll component _(rad)_.
21
+ roll;
22
+ // / Pitch component _(rad)_.
23
+ pitch;
24
+ // / Yaw component _(rad)_.
25
+ yaw;
21
26
  /**
22
- * Create a new [EulerAngles] object from [roll], [pitch], and [yaw]
23
- * angles _(rad)_.
27
+ * Create a new EulerAngles object from roll, pitch, and yaw angles in radians.
28
+ * @param roll Roll angle in radians.
29
+ * @param pitch Pitch angle in radians.
30
+ * @param yaw Yaw angle in radians.
24
31
  */
25
32
  constructor(roll, pitch, yaw) {
26
33
  this.roll = roll;
@@ -28,8 +35,11 @@ export class EulerAngles {
28
35
  this.yaw = yaw;
29
36
  }
30
37
  /**
31
- * Create a new [EulerAngles] object from [roll], [pitch], and [yaw]
32
- * angles _(deg)_.
38
+ * Create a new EulerAngles object from roll, pitch, and yaw angles.
39
+ * @param rollDeg Roll angle in degrees.
40
+ * @param pitchDeg Pitch angle in degrees.
41
+ * @param yawDeg Yaw angle in degrees.
42
+ * @returns EulerAngles object.
33
43
  */
34
44
  static fromDegrees(rollDeg, pitchDeg, yawDeg) {
35
45
  const roll = rollDeg * DEG2RAD;
@@ -38,58 +48,94 @@ export class EulerAngles {
38
48
  return new EulerAngles(roll, pitch, yaw);
39
49
  }
40
50
  /**
41
- * Create a new [EulerAngles] object from 3-2-1 ordered direction cosine
42
- * matrix [c].
51
+ * Create a new EulerAngles object from 3-2-1 ordered direction cosine matrix c.
52
+ * @param c 3-2-1 ordered direction cosine matrix.
53
+ * @returns EulerAngles object.
43
54
  */
44
55
  static fromDcm321(c) {
45
- const roll = Math.atan(c[1][2] / c[2][2]);
46
- const pitch = -Math.asin(c[0][2]);
47
- const yaw = Math.atan(c[0][1] / c[0][0]);
56
+ const roll = Math.atan(c.elements[1][2] / c.elements[2][2]);
57
+ const pitch = -Math.asin(c.elements[0][2]);
58
+ const yaw = Math.atan(c.elements[0][1] / c.elements[0][0]);
48
59
  return new EulerAngles(roll, pitch, yaw);
49
60
  }
50
- // / Roll component _(deg)_.
61
+ /**
62
+ * Gets the roll angle in degrees.
63
+ * @returns The roll angle in degrees.
64
+ */
51
65
  get rollDegrees() {
52
66
  return this.roll * RAD2DEG;
53
67
  }
54
- // / Pitch component _(deg)_.
68
+ /**
69
+ * Gets the pitch angle in degrees.
70
+ * @returns The pitch angle in degrees.
71
+ */
55
72
  get pitchDegrees() {
56
73
  return this.pitch * RAD2DEG;
57
74
  }
58
- // / Yaw component _(deg)_.
75
+ /**
76
+ * Gets the yaw angle in degrees.
77
+ * @returns The yaw angle in degrees.
78
+ */
59
79
  get yawDegrees() {
60
80
  return this.yaw * RAD2DEG;
61
81
  }
62
- // / Roll component alias _(rad)_.
82
+ /**
83
+ * Gets the roll angle in radians.
84
+ * @returns The roll angle in radians.
85
+ */
63
86
  get phi() {
64
87
  return this.roll;
65
88
  }
66
- // / Pitch component alias _(rad)_.
89
+ /**
90
+ * Gets the pitch angle in radians.
91
+ * @returns The pitch angle in radians.
92
+ */
67
93
  get theta() {
68
94
  return this.pitch;
69
95
  }
70
- // / Yaw component alias _(rad)_.
96
+ /**
97
+ * Gets the yaw angle in radians.
98
+ * @returns The yaw angle in radians.
99
+ */
71
100
  get psi() {
72
101
  return this.yaw;
73
102
  }
74
- // / Roll component alias _(deg)_.
103
+ /**
104
+ * Gets the roll component in degrees.
105
+ * @returns The roll component in degrees.
106
+ */
75
107
  get phiDegrees() {
76
108
  return this.phi * RAD2DEG;
77
109
  }
78
- // / Pitch component alias _(deg)_.
110
+ /**
111
+ * Gets the pitch component in degrees.
112
+ * @returns The pitch component in degrees.
113
+ */
79
114
  get thetaDegrees() {
80
115
  return this.theta * RAD2DEG;
81
116
  }
82
- // / Yaw component alias _(deg)_.
117
+ /**
118
+ * Gets the yaw component in degrees.
119
+ * @returns The yaw component in degrees.
120
+ */
83
121
  get psiDegrees() {
84
122
  return this.psi * RAD2DEG;
85
123
  }
124
+ /**
125
+ * Returns a string representation of the Euler angles.
126
+ * @param precision The number of decimal places to include in the string representation. Default is 6.
127
+ * @returns A string representation of the Euler angles.
128
+ */
86
129
  toString(precision = 6) {
87
130
  const rollStr = this.rollDegrees.toFixed(precision);
88
131
  const pitchStr = this.pitchDegrees.toFixed(precision);
89
132
  const yawStr = this.yawDegrees.toFixed(precision);
90
133
  return `Euler(roll: ${rollStr}°, pitch: ${pitchStr}°, yaw: ${yawStr}°)`;
91
134
  }
92
- // / Convert this to a 3-2-1 ordered direction cosine [Matrix].
135
+ /**
136
+ * Calculates the Direction Cosine Matrix (DCM) using the 3-2-1 Euler angles convention.
137
+ * @returns The calculated DCM as a Matrix object.
138
+ */
93
139
  dcm321() {
94
140
  const sPhi = Math.sin(this.phi);
95
141
  const cPhi = Math.cos(this.phi);
@@ -103,7 +149,11 @@ export class EulerAngles {
103
149
  [cPhi * sTheta * cPsi + sPhi * sPsi, cPhi * sTheta * sPsi - sPhi * cPsi, cPhi * cTheta],
104
150
  ]);
105
151
  }
106
- // / Perform a 3-2-1 ordered rotation on provided vector [v].
152
+ /**
153
+ * Rotates a 3D vector using a 3-2-1 Euler angle sequence.
154
+ * @param v The vector to rotate.
155
+ * @returns The rotated vector.
156
+ */
107
157
  rotateVector321(v) {
108
158
  return this.dcm321().multiplyVector3D(v);
109
159
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EulerAngles.js","sourceRoot":"","sources":["../../src/operations/EulerAngles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,OAAO,EAAW,MAAM,EAAE,OAAO,EAAqB,MAAM,WAAW,CAAC;AAEjF,mCAAmC;AACnC,MAAM,OAAO,WAAW;IACtB,4BAA4B;IAC5B,IAAI,CAAS;IAEb,6BAA6B;IAC7B,KAAK,CAAS;IAEd,2BAA2B;IAC3B,GAAG,CAAS;IAEZ;;;;;OAKG;IACH,YAAY,IAAa,EAAE,KAAc,EAAE,GAAY;QACrD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,OAAgB,EAAE,QAAiB,EAAE,MAAe;QACrE,MAAM,IAAI,GAAG,OAAO,GAAG,OAAkB,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,GAAG,OAAkB,CAAC;QAC5C,MAAM,GAAG,GAAG,MAAM,GAAG,OAAkB,CAAC;QAExC,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,CAAS;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAY,CAAC;QACvE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAY,CAAC;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAY,CAAC;QAEtE,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,IAAI,GAAG,OAAkB,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,KAAK,GAAG,OAAkB,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,GAAG,OAAkB,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAe,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAgB,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,GAAc,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,GAAG,OAAkB,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,KAAK,GAAG,OAAkB,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,GAAG,OAAkB,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,SAAS,GAAG,CAAC;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAElD,OAAO,eAAe,OAAO,aAAa,QAAQ,WAAW,MAAM,IAAI,CAAC;IAC1E,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEhC,OAAO,IAAI,MAAM,CAAC;YAChB,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,CAAC,MAAM,CAAC;YACvC,CAAC,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC;YACvF,CAAC,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC;SACxF,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,CAAW;QACzB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;CACF"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -15,7 +14,7 @@
15
14
  * You should have received a copy of the GNU Affero General Public License along with
16
15
  * Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
17
16
  */
18
- import { Matrix, Vector, Vector3D } from 'ootk-core';
17
+ import { Matrix, Radians, RadiansPerSecond, Vector, Vector3D } from 'ootk-core';
19
18
  export declare class Quaternion {
20
19
  x: number;
21
20
  y: number;
@@ -46,12 +45,12 @@ export declare class Quaternion {
46
45
  lerp(q: Quaternion, t: number): Quaternion;
47
46
  slerp(q: Quaternion, t: number): Quaternion;
48
47
  toVector3D(): Vector3D;
49
- angle(q: Quaternion): number;
50
- geodesicAngle(q: Quaternion): number;
48
+ angle(q: Quaternion): Radians;
49
+ geodesicAngle(q: Quaternion): Radians;
51
50
  distance(q: Quaternion): number;
52
51
  delta(qTo: Quaternion): Quaternion;
53
52
  toDirectionCosineMatrix(): Matrix;
54
53
  toRotationMatrix(): Matrix;
55
54
  vectorAngle(observer: Vector3D, target: Vector3D, forward: Vector3D): number;
56
- kinematics(angularVelocity: Vector3D): Quaternion;
55
+ kinematics(angularVelocity: Vector3D<RadiansPerSecond>): Quaternion;
57
56
  }
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -17,12 +16,21 @@
17
16
  */
18
17
  import { Matrix, Vector, Vector3D, wrapAngle } from 'ootk-core';
19
18
  export class Quaternion {
19
+ x;
20
+ y;
21
+ z;
22
+ w;
20
23
  constructor(x, y, z, w) {
21
24
  this.x = x;
22
25
  this.y = y;
23
26
  this.z = z;
24
27
  this.w = w;
25
28
  }
29
+ static zero = new Quaternion(0, 0, 0, 0);
30
+ static one = new Quaternion(0, 0, 0, 1);
31
+ static xAxis = new Quaternion(1, 0, 0, 0);
32
+ static yAxis = new Quaternion(0, 1, 0, 0);
33
+ static zAxis = new Quaternion(0, 0, 1, 0);
26
34
  toString(precision = 8) {
27
35
  const xStr = this.x.toFixed(precision);
28
36
  const yStr = this.y.toFixed(precision);
@@ -145,20 +153,15 @@ export class Quaternion {
145
153
  return forward.angle(transform);
146
154
  }
147
155
  kinematics(angularVelocity) {
148
- const wPrime = new Vector([0, angularVelocity[0], angularVelocity[1], angularVelocity[2]]);
156
+ const wPrime = new Vector([0, angularVelocity.x, angularVelocity.y, angularVelocity.z]);
149
157
  const qMat = new Matrix([
150
158
  [this.x, this.w, -this.z, this.y],
151
159
  [this.y, this.z, this.w, -this.x],
152
160
  [this.z, -this.y, this.x, this.w],
153
161
  [this.w, -this.x, -this.y, -this.z],
154
162
  ]);
155
- const result = qMat.multiplyVector(wPrime).scale(0.5);
163
+ const result = qMat.multiplyVector(wPrime).scale(0.5).elements;
156
164
  return new Quaternion(result[0], result[1], result[2], result[3]);
157
165
  }
158
166
  }
159
- Quaternion.zero = new Quaternion(0, 0, 0, 0);
160
- Quaternion.one = new Quaternion(0, 0, 0, 1);
161
- Quaternion.xAxis = new Quaternion(1, 0, 0, 0);
162
- Quaternion.yAxis = new Quaternion(0, 1, 0, 0);
163
- Quaternion.zAxis = new Quaternion(0, 0, 1, 0);
164
167
  //# sourceMappingURL=Quaternion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Quaternion.js","sourceRoot":"","sources":["../../src/operations/Quaternion.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -18,6 +17,7 @@
18
17
  import { Vector } from 'ootk-core';
19
18
  import { BoxMuller } from './BoxMuller';
20
19
  export class RandomGaussianSource {
20
+ _boxMuller;
21
21
  constructor(seed = 0) {
22
22
  this._boxMuller = new BoxMuller(0, 1, seed);
23
23
  }
@@ -31,7 +31,7 @@ export class RandomGaussianSource {
31
31
  const result = new Vector([this.nextGauss()]);
32
32
  for (let i = 0; i < n; i++) {
33
33
  if (i > 0) {
34
- result.add(new Vector[this.nextGauss()]());
34
+ result.add(new Vector([this.nextGauss()]));
35
35
  }
36
36
  }
37
37
  return result;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RandomGaussianSource.js","sourceRoot":"","sources":["../../src/operations/RandomGaussianSource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,MAAM,EAAY,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,OAAO,oBAAoB;IACvB,UAAU,CAAY;IAE9B,YAAY,IAAI,GAAG,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;IACrC,CAAC;IAED,WAAW,CAAC,CAAS;QACnB,IAAI,CAAC,GAAG,CAAC,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;SAC7C;QAED,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAE9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC,EAAE;gBACT,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;aAC5C;SACF;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,WAAW,CAAC,MAAM,GAAG,GAAG;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrE,CAAC;CACF"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -26,6 +25,8 @@ export declare class ChebyshevCompressor {
26
25
  /**
27
26
  * Compress this object's interpolater, using the provided coefficients
28
27
  * per revolution [cpr].
28
+ * @param cpr Coefficients per revolution.
29
+ * @returns A new [ChebyshevInterpolator] object.
29
30
  */
30
31
  compress(cpr?: number): ChebyshevInterpolator;
31
32
  }
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -20,6 +19,7 @@ import { ChebyshevCoefficients } from './../interpolator/ChebyshevCoefficients';
20
19
  import { ChebyshevInterpolator } from './../interpolator/ChebyshevInterpolator';
21
20
  // / Ephemeris compressor.
22
21
  export class ChebyshevCompressor {
22
+ _interpolator;
23
23
  // / Create a new [ChebyshevCompressor] object from an [Interpolator].
24
24
  constructor(_interpolator) {
25
25
  this._interpolator = _interpolator;
@@ -36,7 +36,8 @@ export class ChebyshevCompressor {
36
36
  const h = 0.5;
37
37
  for (let i = 0; i < n; i++) {
38
38
  const x = ChebyshevCompressor._cosPi((i + h) / n);
39
- const state = this._interpolator.interpolate(new EpochUTC(x * (h * (b - a)) + h * (b + a)));
39
+ const seconds = x * (h * (b - a)) + h * (b + a);
40
+ const state = this._interpolator.interpolate(new EpochUTC(seconds));
40
41
  const fx = state.position.x;
41
42
  const fy = state.position.y;
42
43
  const fz = state.position.z;
@@ -62,10 +63,12 @@ export class ChebyshevCompressor {
62
63
  /**
63
64
  * Compress this object's interpolater, using the provided coefficients
64
65
  * per revolution [cpr].
66
+ * @param cpr Coefficients per revolution.
67
+ * @returns A new [ChebyshevInterpolator] object.
65
68
  */
66
69
  compress(cpr = 21) {
67
70
  const { start, end } = this._interpolator.window();
68
- const period = this._interpolator.interpolate(start).period();
71
+ const period = this._interpolator.interpolate(start).period;
69
72
  const coefficients = [];
70
73
  let current = start;
71
74
  while (current < end) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChebyshevCompressor.js","sourceRoot":"","sources":["../../src/optimize/ChebyshevCompressor.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -21,12 +20,18 @@ export declare class DownhillSimplex {
21
20
  /**
22
21
  * Compute the centroid from a list of [SimplexEntry] objects, using cost
23
22
  * function [f].
23
+ * @param f Cost function
24
+ * @param xss Simplex entries
25
+ * @returns The centroid.
24
26
  */
25
27
  private static _centroid;
26
28
  private static _shrink;
27
29
  /**
28
30
  * Generate a new simplex from initial guess [x0], and an optional
29
31
  * simplex [step] value.
32
+ * @param x0 Initial guess
33
+ * @param step Simplex step
34
+ * @returns The simplex.
30
35
  */
31
36
  static generateSimplex(x0: Float64Array, step?: number): Float64Array[];
32
37
  /**
@@ -39,6 +44,15 @@ export declare class DownhillSimplex {
39
44
  * - `maxIter`: maximum number of optimization iterations
40
45
  * - `adaptive`: use adaptive coefficients if possible
41
46
  * - `printIter`: print a debug statement after each iteration
47
+ * @param f Cost function
48
+ * @param xs Initial simplex
49
+ * @param root0 Root0
50
+ * @param root0.xTolerance Root0.xTolerance
51
+ * @param root0.fTolerance Root0.fTolerance
52
+ * @param root0.maxIter Root0.maxIter
53
+ * @param root0.adaptive Root0.adaptive
54
+ * @param root0.printIter Root0.printIter
55
+ * @returns The optimal input value.
42
56
  */
43
57
  static solveSimplex(f: CostFunction, xs: Float64Array[], { xTolerance, fTolerance, maxIter, adaptive, printIter, }: {
44
58
  xTolerance?: number;
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -24,6 +23,9 @@ export class DownhillSimplex {
24
23
  /**
25
24
  * Compute the centroid from a list of [SimplexEntry] objects, using cost
26
25
  * function [f].
26
+ * @param f Cost function
27
+ * @param xss Simplex entries
28
+ * @returns The centroid.
27
29
  */
28
30
  static _centroid(f, xss) {
29
31
  const n = xss[0].points.length;
@@ -49,6 +51,9 @@ export class DownhillSimplex {
49
51
  /**
50
52
  * Generate a new simplex from initial guess [x0], and an optional
51
53
  * simplex [step] value.
54
+ * @param x0 Initial guess
55
+ * @param step Simplex step
56
+ * @returns The simplex.
52
57
  */
53
58
  static generateSimplex(x0, step = 0.01) {
54
59
  const output = [x0.slice(0)];
@@ -69,6 +74,15 @@ export class DownhillSimplex {
69
74
  * - `maxIter`: maximum number of optimization iterations
70
75
  * - `adaptive`: use adaptive coefficients if possible
71
76
  * - `printIter`: print a debug statement after each iteration
77
+ * @param f Cost function
78
+ * @param xs Initial simplex
79
+ * @param root0 Root0
80
+ * @param root0.xTolerance Root0.xTolerance
81
+ * @param root0.fTolerance Root0.fTolerance
82
+ * @param root0.maxIter Root0.maxIter
83
+ * @param root0.adaptive Root0.adaptive
84
+ * @param root0.printIter Root0.printIter
85
+ * @returns The optimal input value.
72
86
  */
73
87
  static solveSimplex(f, xs, { xTolerance = 1e-12, fTolerance = 1e-12, maxIter = 10000, adaptive = false, printIter = false, }) {
74
88
  let a;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DownhillSimplex.js","sourceRoot":"","sources":["../../src/optimize/DownhillSimplex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAgB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE5D,mDAAmD;AACnD,MAAM,OAAO,eAAe;IAC1B;QACE,sBAAsB;IACxB,CAAC;IAED;;;;;;OAMG;IACK,MAAM,CAAC,SAAS,CAAC,CAAe,EAAE,GAAmB;QAC3D,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;QAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC1B,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aAC/B;SACF;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAChB;QAED,OAAO,IAAI,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEO,MAAM,CAAC,OAAO,CAAC,CAAS,EAAE,GAAmB;QACnD,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAElB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAElB,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;SAC/B;IACH,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,EAAgB,EAAE,IAAI,GAAG,IAAI;QAClD,MAAM,MAAM,GAAmB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAExB,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAClB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,YAAY,CACjB,CAAe,EACf,EAAkB,EAClB,EACE,UAAU,GAAG,KAAK,EAClB,UAAU,GAAG,KAAK,EAClB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,GAOlB;QAED,IAAI,CAAS,CAAC;QACd,IAAI,CAAS,CAAC;QACd,IAAI,CAAS,CAAC;QACd,IAAI,CAAS,CAAC;QACd,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAExB,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,EAAE;YACtB,CAAC,GAAG,GAAG,CAAC;YACR,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAClB,CAAC,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;SACnB;aAAM;YACL,CAAC,GAAG,GAAG,CAAC;YACR,CAAC,GAAG,GAAG,CAAC;YACR,CAAC,GAAG,GAAG,CAAC;YACR,CAAC,GAAG,GAAG,CAAC;SACT;QACD,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,MAAM,OAAO,GAAmB,EAAE,CAAC;QAEnC,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;YAClB,OAAO,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SACtC;QACD,iDAAiD;QACjD,OAAO,IAAI,EAAE;YACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,EAAE,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACjD,uBAAuB;YACvB,IAAI,EAAE,GAAG,GAAG,CAAC;YACb,IAAI,EAAE,GAAG,GAAG,CAAC;YAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3C,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAC1D;YACD,IAAI,SAAS,EAAE;gBACb,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,KAAK,OAAO,EAAE,OAAO,EAAE,KAAK,MAAM,GAAG,CAAC,CAAC;aACzE;YACD,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,UAAU,IAAI,EAAE,GAAG,UAAU,CAAC,EAAE;gBACtD,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;aAC1B;YACD,IAAI,IAAI,IAAI,OAAO,EAAE;gBACnB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;aAC1B;YACD,IAAI,EAAE,CAAC;YACP,aAAa;YACb,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAEzD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE;gBAChF,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;gBACjC,MAAM,GAAG,SAAS,CAAC;gBACnB,SAAS;aACV;YACD,YAAY;YACZ,IAAI,EAAE,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;gBAC/B,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEhC,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE;oBACvB,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;iBAClC;qBAAM;oBACL,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;iBAClC;gBACD,MAAM,GAAG,QAAQ,CAAC;gBAClB,SAAS;aACV;YACD,cAAc;YACd,IAAI,EAAE,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE;gBAChD,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEhC,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE;oBACvB,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;oBACjC,MAAM,GAAG,UAAU,CAAC;oBACpB,SAAS;iBACV;qBAAM;oBACL,eAAe,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;oBACpC,MAAM,GAAG,QAAQ,CAAC;oBAClB,SAAS;iBACV;aACF;iBAAM,IAAI,EAAE,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE;gBACxD,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAEzD,IAAI,EAAE,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE;oBAChD,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;oBACjC,MAAM,GAAG,UAAU,CAAC;oBACpB,SAAS;iBACV;qBAAM;oBACL,eAAe,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;oBACpC,MAAM,GAAG,QAAQ,CAAC;oBAClB,SAAS;iBACV;aACF;SACF;IACH,CAAC;CACF"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @author @thkruz Theodore Kruczek
3
- *
4
3
  * @license AGPL-3.0-or-later
5
- * @Copyright (c) 2020-2024 Theodore Kruczek
4
+ * @copyright (c) 2020-2024 Theodore Kruczek
6
5
  *
7
6
  * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
8
7
  * terms of the GNU Affero General Public License as published by the Free Software
@@ -15,7 +14,7 @@
15
14
  * You should have received a copy of the GNU Affero General Public License along with
16
15
  * Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
17
16
  */
18
- import { DifferentiableFunction } from 'ootk-core';
17
+ import { DifferentiableFunction } from '../main';
19
18
  export declare class GoldenSection {
20
19
  private static readonly _grInv;
21
20
  private static _check;
@@ -25,6 +24,13 @@ export declare class GoldenSection {
25
24
  *
26
25
  * Takes [lower] and [upper] input search bounds, and an optional
27
26
  * search [tolerance].
27
+ * @param f Function to optimize
28
+ * @param lower Lower bound
29
+ * @param upper Upper bound
30
+ * @param root0 Root0
31
+ * @param root0.tolerance Root0.tolerance
32
+ * @param root0.solveMax Root0.solveMax
33
+ * @returns The optimal input value.
28
34
  */
29
35
  static search(f: DifferentiableFunction, lower: number, upper: number, { tolerance, solveMax, }: {
30
36
  tolerance?: number;