ootk 5.0.0 → 5.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +42 -3
- package/README.md +59 -45
- package/dist/body/Celestial.d.ts +19 -19
- package/dist/body/Celestial.js +19 -19
- package/dist/body/Earth.d.ts +18 -18
- package/dist/body/Earth.js +18 -18
- package/dist/body/NutationAngles.d.ts +18 -18
- package/dist/body/NutationAngles.js +18 -18
- package/dist/body/PrecessionAngles.d.ts +18 -18
- package/dist/body/PrecessionAngles.js +18 -18
- package/dist/body/Sun.d.ts +14 -18
- package/dist/body/Sun.js +14 -18
- package/dist/body/Sun.js.map +1 -1
- package/dist/body/index.d.ts +18 -18
- package/dist/body/index.js +18 -18
- package/dist/coordinate/ClassicalElements.d.ts +21 -21
- package/dist/coordinate/ClassicalElements.js +20 -20
- package/dist/coordinate/ClassicalElements.js.map +1 -1
- package/dist/coordinate/EquinoctialElements.d.ts +20 -20
- package/dist/coordinate/EquinoctialElements.js +18 -18
- package/dist/coordinate/EquinoctialElements.js.map +1 -1
- package/dist/coordinate/FormatTle.d.ts +19 -19
- package/dist/coordinate/FormatTle.js +18 -18
- package/dist/coordinate/FormatTle.js.map +1 -1
- package/dist/coordinate/Geodetic.d.ts +18 -18
- package/dist/coordinate/Geodetic.js +18 -18
- package/dist/coordinate/Hill.d.ts +2 -2
- package/dist/coordinate/Hill.js +2 -2
- package/dist/coordinate/ITRF.d.ts +18 -18
- package/dist/coordinate/ITRF.js +19 -19
- package/dist/coordinate/ITRF.js.map +1 -1
- package/dist/coordinate/J2000.d.ts +18 -18
- package/dist/coordinate/J2000.js +18 -18
- package/dist/coordinate/J2000.js.map +1 -1
- package/dist/coordinate/RIC.d.ts +18 -18
- package/dist/coordinate/RIC.js +18 -18
- package/dist/coordinate/RelativeState.d.ts +18 -18
- package/dist/coordinate/RelativeState.js +18 -18
- package/dist/coordinate/StateVector.d.ts +19 -19
- package/dist/coordinate/StateVector.js +19 -19
- package/dist/coordinate/StateVector.js.map +1 -1
- package/dist/coordinate/TEME.d.ts +18 -18
- package/dist/coordinate/TEME.js +18 -18
- package/dist/coordinate/TEME.js.map +1 -1
- package/dist/coordinate/Tle.d.ts +22 -23
- package/dist/coordinate/Tle.js +22 -22
- package/dist/coordinate/Tle.js.map +1 -1
- package/dist/coordinate/index.js +0 -1
- package/dist/coordinate/index.js.map +1 -1
- package/dist/coordinate/tle-format-data.d.ts +18 -18
- package/dist/coordinate/tle-format-data.js +18 -18
- package/dist/covariance/CovarianceSample.d.ts +10 -7
- package/dist/covariance/CovarianceSample.js +93 -19
- package/dist/covariance/CovarianceSample.js.map +1 -1
- package/dist/covariance/StateCovariance.d.ts +2 -2
- package/dist/covariance/StateCovariance.js +2 -2
- package/dist/covariance/index.d.ts +2 -0
- package/dist/covariance/index.js +3 -0
- package/dist/covariance/index.js.map +1 -0
- package/dist/data/DataHandler.d.ts +18 -18
- package/dist/data/DataHandler.js +18 -18
- package/dist/data/values/Egm96Data.d.ts +18 -18
- package/dist/data/values/Egm96Data.js +18 -18
- package/dist/data/values/Egm96Data.js.map +1 -1
- package/dist/data/values/HpAtmosphereData.d.ts +18 -18
- package/dist/data/values/HpAtmosphereData.js +20 -20
- package/dist/data/values/HpAtmosphereData.js.map +1 -1
- package/dist/data/values/HpAtmosphereResult.d.ts +18 -18
- package/dist/data/values/HpAtmosphereResult.js +18 -18
- package/dist/data/values/Iau1980Data.d.ts +18 -18
- package/dist/data/values/Iau1980Data.js +18 -18
- package/dist/data/values/Iau1980Data.js.map +1 -1
- package/dist/data/values/LeapSecond.d.ts +18 -18
- package/dist/data/values/LeapSecond.js +18 -18
- package/dist/data/values/LeapSecondData.d.ts +18 -18
- package/dist/data/values/LeapSecondData.js +22 -22
- package/dist/data/values/LeapSecondData.js.map +1 -1
- package/dist/data/values/egm96.d.ts +18 -18
- package/dist/data/values/egm96.js +18 -18
- package/dist/data/values/hpAtmosphere.d.ts +18 -18
- package/dist/data/values/hpAtmosphere.js +18 -18
- package/dist/data/values/iau1980.d.ts +18 -18
- package/dist/data/values/iau1980.js +18 -18
- package/dist/enums/AngularDiameterMethod.d.ts +18 -18
- package/dist/enums/AngularDiameterMethod.js +18 -18
- package/dist/enums/AngularDistanceMethod.d.ts +18 -18
- package/dist/enums/AngularDistanceMethod.js +18 -18
- package/dist/enums/OrbitRegime.d.ts +18 -18
- package/dist/enums/OrbitRegime.js +18 -18
- package/dist/enums/PassType.d.ts +18 -18
- package/dist/enums/PassType.js +18 -18
- package/dist/enums/Sgp4OpsMode.d.ts +18 -18
- package/dist/enums/Sgp4OpsMode.js +18 -18
- package/dist/force/AtmosphericDrag.d.ts +2 -2
- package/dist/force/AtmosphericDrag.js +3 -6
- package/dist/force/AtmosphericDrag.js.map +1 -1
- package/dist/force/EarthGravity.d.ts +2 -2
- package/dist/force/EarthGravity.js +2 -2
- package/dist/force/Force.d.ts +2 -2
- package/dist/force/Force.js +2 -2
- package/dist/force/ForceModel.d.ts +2 -2
- package/dist/force/ForceModel.js +2 -2
- package/dist/force/Gravity.d.ts +2 -2
- package/dist/force/Gravity.js +2 -2
- package/dist/force/SolarRadiationPressure.d.ts +2 -2
- package/dist/force/SolarRadiationPressure.js +2 -2
- package/dist/force/ThirdBodyGravity.d.ts +2 -2
- package/dist/force/ThirdBodyGravity.js +2 -2
- package/dist/force/Thrust.d.ts +2 -2
- package/dist/force/Thrust.js +2 -2
- package/dist/interfaces/BaseObjectParams.d.ts +18 -18
- package/dist/interfaces/BaseObjectParams.js +18 -18
- package/dist/interfaces/ClassicalElementsParams.d.ts +18 -18
- package/dist/interfaces/ClassicalElementsParams.js +18 -18
- package/dist/interfaces/EquinoctialElementsParams.d.ts +18 -18
- package/dist/interfaces/EquinoctialElementsParams.js +18 -18
- package/dist/interfaces/GroundPositionParams.d.ts +18 -18
- package/dist/interfaces/GroundPositionParams.js +18 -18
- package/dist/interpolator/ChebyshevCoefficients.d.ts +5 -5
- package/dist/interpolator/ChebyshevCoefficients.js +2 -2
- package/dist/interpolator/ChebyshevCoefficients.js.map +1 -1
- package/dist/interpolator/ChebyshevInterpolator.d.ts +3 -3
- package/dist/interpolator/ChebyshevInterpolator.js +9 -9
- package/dist/interpolator/ChebyshevInterpolator.js.map +1 -1
- package/dist/interpolator/CubicSpline.d.ts +2 -2
- package/dist/interpolator/CubicSpline.js +2 -2
- package/dist/interpolator/CubicSplineInterpolator.d.ts +4 -4
- package/dist/interpolator/CubicSplineInterpolator.js +10 -10
- package/dist/interpolator/CubicSplineInterpolator.js.map +1 -1
- package/dist/interpolator/FieldInterpolator.d.ts +2 -2
- package/dist/interpolator/FieldInterpolator.js +2 -2
- package/dist/interpolator/Interpolator.d.ts +2 -2
- package/dist/interpolator/Interpolator.js +2 -2
- package/dist/interpolator/LagrangeInterpolator.d.ts +7 -7
- package/dist/interpolator/LagrangeInterpolator.js +2 -2
- package/dist/interpolator/LagrangeInterpolator.js.map +1 -1
- package/dist/interpolator/StateInterpolator.d.ts +2 -2
- package/dist/interpolator/StateInterpolator.js +2 -2
- package/dist/interpolator/VerletBlendInterpolator.d.ts +2 -2
- package/dist/interpolator/VerletBlendInterpolator.js +2 -2
- package/dist/main.d.ts +5 -3
- package/dist/main.js +5 -3
- package/dist/main.js.map +1 -1
- package/dist/maneuver/TwoBurnOrbitTransfer.d.ts +3 -3
- package/dist/maneuver/TwoBurnOrbitTransfer.js +3 -3
- package/dist/maneuver/TwoBurnOrbitTransfer.js.map +1 -1
- package/dist/maneuver/Waypoint.d.ts +3 -3
- package/dist/maneuver/Waypoint.js +3 -3
- package/dist/maneuver/Waypoint.js.map +1 -1
- package/dist/objects/BaseObject.d.ts +18 -18
- package/dist/objects/BaseObject.js +18 -18
- package/dist/objects/DetailedSatellite.d.ts +3 -3
- package/dist/objects/DetailedSatellite.js +7 -5
- package/dist/objects/DetailedSatellite.js.map +1 -1
- package/dist/objects/DetailedSensor.d.ts +4 -4
- package/dist/objects/DetailedSensor.js +2 -2
- package/dist/objects/DetailedSensor.js.map +1 -1
- package/dist/objects/GroundObject.d.ts +19 -19
- package/dist/objects/GroundObject.js +19 -19
- package/dist/objects/GroundObject.js.map +1 -1
- package/dist/objects/LandObject.d.ts +3 -3
- package/dist/objects/LandObject.js +2 -2
- package/dist/objects/LandObject.js.map +1 -1
- package/dist/objects/Marker.d.ts +2 -2
- package/dist/objects/Marker.js +2 -2
- package/dist/objects/Satellite.d.ts +19 -19
- package/dist/objects/Satellite.js +22 -22
- package/dist/objects/Satellite.js.map +1 -1
- package/dist/objects/Sensor.d.ts +19 -20
- package/dist/objects/Sensor.js +19 -20
- package/dist/objects/Sensor.js.map +1 -1
- package/dist/objects/Star.d.ts +18 -18
- package/dist/objects/Star.js +18 -18
- package/dist/observation/Observation.d.ts +2 -2
- package/dist/observation/Observation.js +2 -2
- package/dist/observation/ObservationOptical.d.ts +6 -6
- package/dist/observation/ObservationOptical.js +9 -9
- package/dist/observation/ObservationOptical.js.map +1 -1
- package/dist/observation/ObservationRadar.d.ts +6 -6
- package/dist/observation/ObservationRadar.js +9 -9
- package/dist/observation/ObservationRadar.js.map +1 -1
- package/dist/observation/ObservationUtils.d.ts +3 -3
- package/dist/observation/ObservationUtils.js +3 -3
- package/dist/observation/ObservationUtils.js.map +1 -1
- package/dist/observation/PropagatorPairs.d.ts +5 -5
- package/dist/observation/PropagatorPairs.js +8 -8
- package/dist/observation/PropagatorPairs.js.map +1 -1
- package/dist/observation/RAE.d.ts +18 -18
- package/dist/observation/RAE.js +18 -19
- package/dist/observation/RAE.js.map +1 -1
- package/dist/observation/RadecGeocentric.d.ts +19 -19
- package/dist/observation/RadecGeocentric.js +18 -18
- package/dist/observation/RadecGeocentric.js.map +1 -1
- package/dist/observation/RadecTopocentric.d.ts +19 -19
- package/dist/observation/RadecTopocentric.js +18 -18
- package/dist/observation/RadecTopocentric.js.map +1 -1
- package/dist/observation/index.d.ts +18 -18
- package/dist/observation/index.js +18 -18
- package/dist/operations/BoxMuller.d.ts +2 -2
- package/dist/operations/BoxMuller.js +2 -2
- package/dist/operations/EulerAngles.d.ts +2 -2
- package/dist/operations/EulerAngles.js +2 -2
- package/dist/operations/Matrix.d.ts +19 -19
- package/dist/operations/Matrix.js +64 -64
- package/dist/operations/Matrix.js.map +1 -1
- package/dist/operations/Quaternion.d.ts +7 -7
- package/dist/operations/Quaternion.js +2 -2
- package/dist/operations/Quaternion.js.map +1 -1
- package/dist/operations/Random.d.ts +18 -18
- package/dist/operations/Random.js +18 -18
- package/dist/operations/RandomGaussianSource.d.ts +3 -3
- package/dist/operations/RandomGaussianSource.js +5 -5
- package/dist/operations/RandomGaussianSource.js.map +1 -1
- package/dist/operations/Vector.d.ts +19 -19
- package/dist/operations/Vector.js +25 -25
- package/dist/operations/Vector.js.map +1 -1
- package/dist/operations/Vector3D.d.ts +18 -18
- package/dist/operations/Vector3D.js +18 -18
- package/dist/operations/operations.d.ts +18 -18
- package/dist/operations/operations.js +18 -18
- package/dist/optimize/ChebyshevCompressor.d.ts +4 -4
- package/dist/optimize/ChebyshevCompressor.js +8 -8
- package/dist/optimize/ChebyshevCompressor.js.map +1 -1
- package/dist/optimize/DownhillSimplex.d.ts +2 -2
- package/dist/optimize/DownhillSimplex.js +2 -2
- package/dist/optimize/GoldenSection.d.ts +3 -3
- package/dist/optimize/GoldenSection.js +4 -4
- package/dist/optimize/PolynomialRegression.d.ts +2 -2
- package/dist/optimize/PolynomialRegression.js +2 -2
- package/dist/optimize/PolynomicalRegressionResult.d.ts +2 -2
- package/dist/optimize/PolynomicalRegressionResult.js +2 -2
- package/dist/optimize/SimpleLinearRegression.d.ts +2 -2
- package/dist/optimize/SimpleLinearRegression.js +2 -2
- package/dist/optimize/SimplexEntry.d.ts +5 -5
- package/dist/optimize/SimplexEntry.js +11 -11
- package/dist/optimize/SimplexEntry.js.map +1 -1
- package/dist/orbit_determination/BatchLeastSquaresOD.d.ts +11 -11
- package/dist/orbit_determination/BatchLeastSquaresOD.js +2 -2
- package/dist/orbit_determination/BatchLeastSquaresOD.js.map +1 -1
- package/dist/orbit_determination/BatchLeastSquaresResult.d.ts +2 -2
- package/dist/orbit_determination/BatchLeastSquaresResult.js +2 -2
- package/dist/orbit_determination/GibbsIOD.d.ts +2 -2
- package/dist/orbit_determination/GibbsIOD.js +2 -2
- package/dist/orbit_determination/GoodingIOD.d.ts +2 -2
- package/dist/orbit_determination/GoodingIOD.js +3 -3
- package/dist/orbit_determination/GoodingIOD.js.map +1 -1
- package/dist/orbit_determination/HerrickGibbsIOD.d.ts +2 -2
- package/dist/orbit_determination/HerrickGibbsIOD.js +2 -2
- package/dist/orbit_determination/LambertIOD.d.ts +2 -2
- package/dist/orbit_determination/LambertIOD.js +2 -2
- package/dist/orbit_determination/ModifiedGoodingIOD.d.ts +4 -4
- package/dist/orbit_determination/ModifiedGoodingIOD.js +3 -3
- package/dist/orbit_determination/ModifiedGoodingIOD.js.map +1 -1
- package/dist/propagator/DormandPrince54Propagator.d.ts +6 -6
- package/dist/propagator/DormandPrince54Propagator.js +10 -10
- package/dist/propagator/DormandPrince54Propagator.js.map +1 -1
- package/dist/propagator/KeplerPropagator.d.ts +7 -7
- package/dist/propagator/KeplerPropagator.js +32 -32
- package/dist/propagator/KeplerPropagator.js.map +1 -1
- package/dist/propagator/Propagator.d.ts +3 -3
- package/dist/propagator/Propagator.js +3 -3
- package/dist/propagator/Propagator.js.map +1 -1
- package/dist/propagator/RkCheckpoint.d.ts +2 -2
- package/dist/propagator/RkCheckpoint.js +2 -2
- package/dist/propagator/RkResult.d.ts +2 -2
- package/dist/propagator/RkResult.js +2 -2
- package/dist/propagator/RungeKutta4Propagator.d.ts +4 -4
- package/dist/propagator/RungeKutta4Propagator.js +3 -3
- package/dist/propagator/RungeKutta4Propagator.js.map +1 -1
- package/dist/propagator/RungeKutta89Propagator.d.ts +6 -6
- package/dist/propagator/RungeKutta89Propagator.js +2 -2
- package/dist/propagator/RungeKutta89Propagator.js.map +1 -1
- package/dist/propagator/RungeKuttaAdaptive.d.ts +5 -5
- package/dist/propagator/RungeKuttaAdaptive.js +3 -3
- package/dist/propagator/RungeKuttaAdaptive.js.map +1 -1
- package/dist/propagator/Sgp4Propagator.d.ts +7 -7
- package/dist/propagator/Sgp4Propagator.js +16 -16
- package/dist/propagator/Sgp4Propagator.js.map +1 -1
- package/dist/sgp4/index.d.ts +18 -18
- package/dist/sgp4/index.js +18 -18
- package/dist/sgp4/sgp4.d.ts +18 -21
- package/dist/sgp4/sgp4.js +27 -24
- package/dist/sgp4/sgp4.js.map +1 -1
- package/dist/smoothing/ExponentialSmoothing.d.ts +2 -2
- package/dist/smoothing/ExponentialSmoothing.js +2 -2
- package/dist/time/Epoch.d.ts +18 -18
- package/dist/time/Epoch.js +18 -18
- package/dist/time/EpochGPS.d.ts +19 -19
- package/dist/time/EpochGPS.js +19 -19
- package/dist/time/EpochGPS.js.map +1 -1
- package/dist/time/EpochTAI.d.ts +18 -18
- package/dist/time/EpochTAI.js +18 -18
- package/dist/time/EpochTDB.d.ts +18 -18
- package/dist/time/EpochTDB.js +18 -18
- package/dist/time/EpochTT.d.ts +18 -18
- package/dist/time/EpochTT.js +18 -18
- package/dist/time/EpochUTC.d.ts +18 -18
- package/dist/time/EpochUTC.js +18 -18
- package/dist/time/EpochUTC.js.map +1 -1
- package/dist/time/EpochWindow.d.ts +18 -18
- package/dist/time/EpochWindow.js +18 -18
- package/dist/time/TimeStamped.d.ts +18 -22
- package/dist/time/TimeStamped.js +18 -22
- package/dist/time/TimeStamped.js.map +1 -1
- package/dist/time/index.d.ts +0 -22
- package/dist/time/index.js +0 -22
- package/dist/time/index.js.map +1 -1
- package/dist/transforms/TransformCache.d.ts +18 -18
- package/dist/transforms/TransformCache.js +18 -18
- package/dist/transforms/conversions.d.ts +18 -18
- package/dist/transforms/conversions.js +18 -18
- package/dist/types/types.d.ts +2 -2
- package/dist/types/types.js +1 -1
- package/dist/utils/create-covariance-from-tle.d.ts +18 -0
- package/dist/utils/create-covariance-from-tle.js +57 -0
- package/dist/utils/create-covariance-from-tle.js.map +1 -0
- package/dist/utils/functions.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/jacobian.d.ts +6 -0
- package/dist/utils/jacobian.js +6 -1
- package/dist/utils/jacobian.js.map +1 -1
- package/package.json +1 -2
- package/src/body/Celestial.ts +19 -19
- package/src/body/Earth.ts +18 -18
- package/src/body/NutationAngles.ts +18 -18
- package/src/body/PrecessionAngles.ts +18 -18
- package/src/body/Sun.ts +14 -18
- package/src/body/index.ts +19 -18
- package/src/coordinate/ClassicalElements.ts +28 -22
- package/src/coordinate/EquinoctialElements.ts +20 -20
- package/src/coordinate/FormatTle.ts +19 -19
- package/src/coordinate/Geodetic.ts +18 -18
- package/src/coordinate/Hill.ts +2 -2
- package/src/coordinate/ITRF.ts +19 -19
- package/src/coordinate/J2000.ts +19 -19
- package/src/coordinate/RIC.ts +18 -18
- package/src/coordinate/RelativeState.ts +18 -18
- package/src/coordinate/StateVector.ts +26 -20
- package/src/coordinate/TEME.ts +19 -19
- package/src/coordinate/Tle.ts +27 -27
- package/src/coordinate/index.ts +0 -1
- package/src/coordinate/tle-format-data.ts +18 -18
- package/src/covariance/CovarianceSample.ts +119 -21
- package/src/covariance/StateCovariance.ts +2 -2
- package/src/covariance/index.ts +2 -0
- package/src/data/DataHandler.ts +18 -18
- package/src/data/values/Egm96Data.ts +19 -19
- package/src/data/values/HpAtmosphereData.ts +21 -21
- package/src/data/values/HpAtmosphereResult.ts +18 -18
- package/src/data/values/Iau1980Data.ts +19 -19
- package/src/data/values/LeapSecond.ts +18 -18
- package/src/data/values/LeapSecondData.ts +24 -24
- package/src/data/values/egm96.ts +18 -18
- package/src/data/values/hpAtmosphere.ts +18 -18
- package/src/data/values/iau1980.ts +18 -18
- package/src/enums/AngularDiameterMethod.ts +18 -18
- package/src/enums/AngularDistanceMethod.ts +18 -18
- package/src/enums/OrbitRegime.ts +18 -18
- package/src/enums/PassType.ts +18 -18
- package/src/enums/Sgp4OpsMode.ts +18 -18
- package/src/force/AtmosphericDrag.ts +2 -4
- package/src/force/EarthGravity.ts +2 -2
- package/src/force/Force.ts +2 -2
- package/src/force/ForceModel.ts +2 -2
- package/src/force/Gravity.ts +2 -2
- package/src/force/SolarRadiationPressure.ts +2 -2
- package/src/force/ThirdBodyGravity.ts +2 -2
- package/src/force/Thrust.ts +2 -2
- package/src/interfaces/BaseObjectParams.ts +18 -18
- package/src/interfaces/ClassicalElementsParams.ts +18 -18
- package/src/interfaces/EquinoctialElementsParams.ts +18 -18
- package/src/interfaces/GroundPositionParams.ts +18 -18
- package/src/interpolator/ChebyshevCoefficients.ts +5 -5
- package/src/interpolator/ChebyshevInterpolator.ts +10 -10
- package/src/interpolator/CubicSpline.ts +2 -2
- package/src/interpolator/CubicSplineInterpolator.ts +8 -8
- package/src/interpolator/FieldInterpolator.ts +2 -2
- package/src/interpolator/Interpolator.ts +2 -2
- package/src/interpolator/LagrangeInterpolator.ts +7 -7
- package/src/interpolator/StateInterpolator.ts +2 -2
- package/src/interpolator/VerletBlendInterpolator.ts +2 -2
- package/src/main.ts +24 -3
- package/src/maneuver/TwoBurnOrbitTransfer.ts +3 -3
- package/src/maneuver/Waypoint.ts +4 -4
- package/src/objects/BaseObject.ts +18 -18
- package/src/objects/DetailedSatellite.ts +9 -8
- package/src/objects/DetailedSensor.ts +4 -4
- package/src/objects/GroundObject.ts +23 -23
- package/src/objects/LandObject.ts +3 -3
- package/src/objects/Marker.ts +2 -2
- package/src/objects/Satellite.ts +24 -24
- package/src/objects/Sensor.ts +19 -20
- package/src/objects/Star.ts +18 -18
- package/src/observation/Observation.ts +2 -2
- package/src/observation/ObservationOptical.ts +7 -7
- package/src/observation/ObservationRadar.ts +10 -6
- package/src/observation/ObservationUtils.ts +3 -3
- package/src/observation/PropagatorPairs.ts +4 -4
- package/src/observation/RAE.ts +18 -19
- package/src/observation/RadecGeocentric.ts +19 -19
- package/src/observation/RadecTopocentric.ts +19 -19
- package/src/observation/index.ts +19 -18
- package/src/operations/BoxMuller.ts +2 -2
- package/src/operations/EulerAngles.ts +2 -2
- package/src/operations/Matrix.ts +67 -67
- package/src/operations/Quaternion.ts +7 -7
- package/src/operations/Random.ts +18 -18
- package/src/operations/RandomGaussianSource.ts +5 -5
- package/src/operations/Vector.ts +25 -25
- package/src/operations/Vector3D.ts +18 -18
- package/src/operations/operations.ts +19 -18
- package/src/optimize/ChebyshevCompressor.ts +7 -7
- package/src/optimize/DownhillSimplex.ts +2 -2
- package/src/optimize/GoldenSection.ts +4 -4
- package/src/optimize/PolynomialRegression.ts +2 -2
- package/src/optimize/PolynomicalRegressionResult.ts +2 -2
- package/src/optimize/SimpleLinearRegression.ts +2 -2
- package/src/optimize/SimplexEntry.ts +9 -9
- package/src/orbit_determination/BatchLeastSquaresOD.ts +11 -11
- package/src/orbit_determination/BatchLeastSquaresResult.ts +2 -2
- package/src/orbit_determination/GibbsIOD.ts +2 -2
- package/src/orbit_determination/GoodingIOD.ts +3 -3
- package/src/orbit_determination/HerrickGibbsIOD.ts +2 -2
- package/src/orbit_determination/LambertIOD.ts +2 -2
- package/src/orbit_determination/ModifiedGoodingIOD.ts +5 -5
- package/src/propagator/DormandPrince54Propagator.ts +10 -10
- package/src/propagator/KeplerPropagator.ts +32 -32
- package/src/propagator/Propagator.ts +3 -3
- package/src/propagator/RkCheckpoint.ts +2 -2
- package/src/propagator/RkResult.ts +2 -2
- package/src/propagator/RungeKutta4Propagator.ts +4 -4
- package/src/propagator/RungeKutta89Propagator.ts +6 -6
- package/src/propagator/RungeKuttaAdaptive.ts +6 -6
- package/src/propagator/Sgp4Propagator.ts +15 -15
- package/src/sgp4/index.ts +19 -18
- package/src/sgp4/sgp4.LICENSE.md +2 -2
- package/src/sgp4/sgp4.ts +22 -25
- package/src/smoothing/ExponentialSmoothing.ts +2 -2
- package/src/time/Epoch.ts +18 -18
- package/src/time/EpochGPS.ts +21 -21
- package/src/time/EpochTAI.ts +18 -18
- package/src/time/EpochTDB.ts +18 -18
- package/src/time/EpochTT.ts +18 -18
- package/src/time/EpochUTC.ts +20 -20
- package/src/time/EpochWindow.ts +18 -18
- package/src/time/TimeStamped.ts +18 -22
- package/src/time/index.ts +0 -23
- package/src/transforms/TransformCache.ts +18 -18
- package/src/transforms/conversions.ts +18 -18
- package/src/types/types.ts +2 -2
- package/src/utils/create-covariance-from-tle.ts +75 -0
- package/src/utils/functions.ts +3 -3
- package/src/utils/index.ts +1 -0
- package/src/utils/jacobian.ts +6 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,38 +14,38 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { J2000 } from '../main.js';
|
|
18
17
|
import { VerletBlendInterpolator } from '../interpolator/VerletBlendInterpolator.js';
|
|
18
|
+
import { J2000 } from '../main.js';
|
|
19
19
|
import { Propagator } from './Propagator.js';
|
|
20
20
|
// / Kepler analytical two-body propagator.
|
|
21
21
|
export class KeplerPropagator extends Propagator {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
initElements_;
|
|
23
|
+
elements_;
|
|
24
|
+
cacheState_;
|
|
25
|
+
checkpoints_;
|
|
26
26
|
constructor(initElements) {
|
|
27
27
|
super();
|
|
28
|
-
this.
|
|
29
|
-
this.
|
|
30
|
-
this.
|
|
31
|
-
this.
|
|
28
|
+
this.initElements_ = initElements;
|
|
29
|
+
this.elements_ = initElements;
|
|
30
|
+
this.cacheState_ = J2000.fromClassicalElements(initElements);
|
|
31
|
+
this.checkpoints_ = [];
|
|
32
32
|
}
|
|
33
33
|
get state() {
|
|
34
|
-
return this.
|
|
34
|
+
return this.cacheState_;
|
|
35
35
|
}
|
|
36
36
|
propagate(epoch) {
|
|
37
|
-
this.
|
|
38
|
-
return this.
|
|
37
|
+
this.cacheState_ = J2000.fromClassicalElements(this.elements_.propagate(epoch));
|
|
38
|
+
return this.cacheState_;
|
|
39
39
|
}
|
|
40
40
|
reset() {
|
|
41
|
-
this.
|
|
42
|
-
this.
|
|
41
|
+
this.elements_ = this.initElements_;
|
|
42
|
+
this.cacheState_ = J2000.fromClassicalElements(this.elements_);
|
|
43
43
|
}
|
|
44
44
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
45
45
|
maneuver(maneuver, interval = 60) {
|
|
46
|
-
this.
|
|
47
|
-
this.
|
|
48
|
-
return [this.
|
|
46
|
+
this.cacheState_ = maneuver.apply(this.propagate(maneuver.center));
|
|
47
|
+
this.elements_ = this.cacheState_.toClassicalElements();
|
|
48
|
+
return [this.cacheState_];
|
|
49
49
|
}
|
|
50
50
|
ephemerisManeuver(start, finish, maneuvers, interval = 60.0) {
|
|
51
51
|
const tMvr = maneuvers.slice(0).filter((mvr) => mvr.center >= start || mvr.center <= finish);
|
|
@@ -54,31 +54,31 @@ export class KeplerPropagator extends Propagator {
|
|
|
54
54
|
ephemeris.push(this.propagate(start));
|
|
55
55
|
}
|
|
56
56
|
for (const mvr of tMvr) {
|
|
57
|
-
while (this.
|
|
58
|
-
const step = Math.min(mvr.center.difference(this.
|
|
59
|
-
this.propagate(this.
|
|
60
|
-
if (this.
|
|
61
|
-
ephemeris.push(this.
|
|
57
|
+
while (this.cacheState_.epoch < mvr.center) {
|
|
58
|
+
const step = Math.min(mvr.center.difference(this.cacheState_.epoch), interval);
|
|
59
|
+
this.propagate(this.cacheState_.epoch.roll(step));
|
|
60
|
+
if (this.cacheState_.epoch.posix !== mvr.center.posix) {
|
|
61
|
+
ephemeris.push(this.cacheState_);
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
ephemeris.push(...this.maneuver(mvr, interval));
|
|
65
65
|
}
|
|
66
|
-
while (this.
|
|
67
|
-
const step = Math.min(finish.difference(this.
|
|
68
|
-
this.propagate(this.
|
|
69
|
-
ephemeris.push(this.
|
|
66
|
+
while (this.cacheState_.epoch < finish) {
|
|
67
|
+
const step = Math.min(finish.difference(this.cacheState_.epoch), interval);
|
|
68
|
+
this.propagate(this.cacheState_.epoch.roll(step));
|
|
69
|
+
ephemeris.push(this.cacheState_);
|
|
70
70
|
}
|
|
71
71
|
return new VerletBlendInterpolator(ephemeris);
|
|
72
72
|
}
|
|
73
73
|
checkpoint() {
|
|
74
|
-
this.
|
|
75
|
-
return this.
|
|
74
|
+
this.checkpoints_.push(this.cacheState_);
|
|
75
|
+
return this.checkpoints_.length - 1;
|
|
76
76
|
}
|
|
77
77
|
clearCheckpoints() {
|
|
78
|
-
this.
|
|
78
|
+
this.checkpoints_ = [];
|
|
79
79
|
}
|
|
80
80
|
restore(index) {
|
|
81
|
-
this.
|
|
81
|
+
this.cacheState_ = this.checkpoints_[index];
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
//# sourceMappingURL=KeplerPropagator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeplerPropagator.js","sourceRoot":"","sources":["../../src/propagator/KeplerPropagator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"KeplerPropagator.js","sourceRoot":"","sources":["../../src/propagator/KeplerPropagator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { EpochUTC, J2000, Seconds } from '../main.js';
|
|
18
17
|
import { Thrust } from '../force/Thrust.js';
|
|
19
18
|
import { VerletBlendInterpolator } from '../interpolator/VerletBlendInterpolator.js';
|
|
19
|
+
import { EpochUTC, J2000, Seconds } from '../main.js';
|
|
20
20
|
export declare abstract class Propagator {
|
|
21
21
|
abstract propagate(epoch: EpochUTC): J2000;
|
|
22
22
|
ephemeris(start: EpochUTC, stop: EpochUTC, interval?: Seconds): VerletBlendInterpolator;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { EpochUTC } from '../main.js';
|
|
18
17
|
import { VerletBlendInterpolator } from '../interpolator/VerletBlendInterpolator.js';
|
|
18
|
+
import { EpochUTC } from '../main.js';
|
|
19
19
|
import { GoldenSection } from './../optimize/GoldenSection.js';
|
|
20
20
|
// Propagator base class.
|
|
21
21
|
export class Propagator {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Propagator.js","sourceRoot":"","sources":["../../src/propagator/Propagator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"Propagator.js","sourceRoot":"","sources":["../../src/propagator/Propagator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { EpochUTC, J2000, Seconds } from '../main.js';
|
|
18
17
|
import { ForceModel } from '../force/ForceModel.js';
|
|
19
18
|
import { Thrust } from '../force/Thrust.js';
|
|
20
19
|
import { VerletBlendInterpolator } from '../interpolator/VerletBlendInterpolator.js';
|
|
20
|
+
import { EpochUTC, J2000, Seconds } from '../main.js';
|
|
21
21
|
import { Propagator } from './Propagator.js';
|
|
22
22
|
export declare class RungeKutta4Propagator extends Propagator {
|
|
23
|
-
private initState_;
|
|
23
|
+
private readonly initState_;
|
|
24
24
|
private forceModel_;
|
|
25
25
|
private stepSize_;
|
|
26
26
|
private cacheState_;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { J2000, Vector } from '../main.js';
|
|
18
17
|
import { ForceModel } from '../force/ForceModel.js';
|
|
19
18
|
import { VerletBlendInterpolator } from '../interpolator/VerletBlendInterpolator.js';
|
|
19
|
+
import { J2000, Vector } from '../main.js';
|
|
20
20
|
import { Propagator } from './Propagator.js';
|
|
21
21
|
// / Runge-Kutta 4 fixed numerical propagator.
|
|
22
22
|
export class RungeKutta4Propagator extends Propagator {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RungeKutta4Propagator.js","sourceRoot":"","sources":["../../src/propagator/RungeKutta4Propagator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"RungeKutta4Propagator.js","sourceRoot":"","sources":["../../src/propagator/RungeKutta4Propagator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { RungeKuttaAdaptive } from './RungeKuttaAdaptive.js';
|
|
18
18
|
export declare class RungeKutta89Propagator extends RungeKuttaAdaptive {
|
|
19
|
-
private a_;
|
|
20
|
-
private b_;
|
|
21
|
-
private ch_;
|
|
22
|
-
private c_;
|
|
19
|
+
private readonly a_;
|
|
20
|
+
private readonly b_;
|
|
21
|
+
private readonly ch_;
|
|
22
|
+
private readonly c_;
|
|
23
23
|
get a(): Float64Array;
|
|
24
24
|
get b(): Float64Array[];
|
|
25
25
|
get ch(): Float64Array;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RungeKutta89Propagator.js","sourceRoot":"","sources":["../../src/propagator/RungeKutta89Propagator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,4DAA4D;AAC5D,2CAA2C;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,oDAAoD;AACpD,MAAM,OAAO,sBAAuB,SAAQ,kBAAkB;
|
|
1
|
+
{"version":3,"file":"RungeKutta89Propagator.js","sourceRoot":"","sources":["../../src/propagator/RungeKutta89Propagator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,15 +14,15 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { EpochUTC, J2000, Seconds } from '../main.js';
|
|
18
17
|
import { ForceModel } from '../force/ForceModel.js';
|
|
19
18
|
import { Thrust } from '../force/Thrust.js';
|
|
19
|
+
import { EpochUTC, J2000, Seconds } from '../main.js';
|
|
20
20
|
import { VerletBlendInterpolator } from './../interpolator/VerletBlendInterpolator.js';
|
|
21
21
|
import { Propagator } from './Propagator.js';
|
|
22
22
|
export declare abstract class RungeKuttaAdaptive extends Propagator {
|
|
23
|
-
private initState_;
|
|
23
|
+
private readonly initState_;
|
|
24
24
|
private forceModel_;
|
|
25
|
-
private tolerance_;
|
|
25
|
+
private readonly tolerance_;
|
|
26
26
|
/**
|
|
27
27
|
* Create a new [RungeKuttaAdaptive] object from an initial state vector
|
|
28
28
|
* along with an optional [ForceModel] and [tolerance].
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { J2000, Vector } from '../main.js';
|
|
18
17
|
import { ForceModel } from '../force/ForceModel.js';
|
|
18
|
+
import { J2000, Vector } from '../main.js';
|
|
19
19
|
import { VerletBlendInterpolator } from './../interpolator/VerletBlendInterpolator.js';
|
|
20
20
|
import { Propagator } from './Propagator.js';
|
|
21
21
|
import { RkCheckpoint } from './RkCheckpoint.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RungeKuttaAdaptive.js","sourceRoot":"","sources":["../../src/propagator/RungeKuttaAdaptive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"RungeKuttaAdaptive.js","sourceRoot":"","sources":["../../src/propagator/RungeKuttaAdaptive.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
15
15
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
16
16
|
*/
|
|
17
|
-
import { EpochUTC, J2000, Tle } from '../main.js';
|
|
18
17
|
import { Thrust } from '../force/Thrust.js';
|
|
19
18
|
import { VerletBlendInterpolator } from '../interpolator/VerletBlendInterpolator.js';
|
|
19
|
+
import { EpochUTC, J2000, Tle } from '../main.js';
|
|
20
20
|
import { Propagator } from './Propagator.js';
|
|
21
21
|
/**
|
|
22
22
|
* Sgp4Propagator is a propagator that uses the SGP4 model to propagate the state of an object.
|
|
@@ -24,10 +24,10 @@ import { Propagator } from './Propagator.js';
|
|
|
24
24
|
* state of the TLE at different epochs.
|
|
25
25
|
*/
|
|
26
26
|
export declare class Sgp4Propagator extends Propagator {
|
|
27
|
-
private
|
|
28
|
-
constructor(
|
|
29
|
-
private
|
|
30
|
-
private
|
|
27
|
+
private readonly tle_;
|
|
28
|
+
constructor(tle_: Tle);
|
|
29
|
+
private cacheState_;
|
|
30
|
+
private checkpoints_;
|
|
31
31
|
/**
|
|
32
32
|
* Gets the state of the propagator in the J2000 coordinate system.
|
|
33
33
|
* @returns The J2000 state of the propagator.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
3
|
* @license AGPL-3.0-or-later
|
|
4
|
-
* @copyright (c)
|
|
4
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
5
5
|
*
|
|
6
6
|
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
7
7
|
* terms of the GNU Affero General Public License as published by the Free Software
|
|
@@ -21,20 +21,20 @@ import { Propagator } from './Propagator.js';
|
|
|
21
21
|
* state of the TLE at different epochs.
|
|
22
22
|
*/
|
|
23
23
|
export class Sgp4Propagator extends Propagator {
|
|
24
|
-
|
|
25
|
-
constructor(
|
|
24
|
+
tle_;
|
|
25
|
+
constructor(tle_) {
|
|
26
26
|
super();
|
|
27
|
-
this.
|
|
28
|
-
this.
|
|
27
|
+
this.tle_ = tle_;
|
|
28
|
+
this.cacheState_ = tle_.state.toJ2000();
|
|
29
29
|
}
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
cacheState_;
|
|
31
|
+
checkpoints_ = [];
|
|
32
32
|
/**
|
|
33
33
|
* Gets the state of the propagator in the J2000 coordinate system.
|
|
34
34
|
* @returns The J2000 state of the propagator.
|
|
35
35
|
*/
|
|
36
36
|
get state() {
|
|
37
|
-
return this.
|
|
37
|
+
return this.cacheState_;
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
40
|
* Calculates the ephemeris maneuver using the SGP4 propagator.
|
|
@@ -61,36 +61,36 @@ export class Sgp4Propagator extends Propagator {
|
|
|
61
61
|
* @returns The propagated state in J2000 coordinates.
|
|
62
62
|
*/
|
|
63
63
|
propagate(epoch) {
|
|
64
|
-
this.
|
|
65
|
-
return this.
|
|
64
|
+
this.cacheState_ = this.tle_.propagate(epoch).toJ2000();
|
|
65
|
+
return this.cacheState_;
|
|
66
66
|
}
|
|
67
67
|
/**
|
|
68
68
|
* Resets the state of the Sgp4Propagator by updating the cache state
|
|
69
69
|
* to the current J2000 state of the TLE.
|
|
70
70
|
*/
|
|
71
71
|
reset() {
|
|
72
|
-
this.
|
|
72
|
+
this.cacheState_ = this.tle_.state.toJ2000();
|
|
73
73
|
}
|
|
74
74
|
/**
|
|
75
75
|
* Saves the current state of the propagator and returns the index of the checkpoint.
|
|
76
76
|
* @returns The index of the checkpoint.
|
|
77
77
|
*/
|
|
78
78
|
checkpoint() {
|
|
79
|
-
this.
|
|
80
|
-
return this.
|
|
79
|
+
this.checkpoints_.push(this.cacheState_);
|
|
80
|
+
return this.checkpoints_.length - 1;
|
|
81
81
|
}
|
|
82
82
|
/**
|
|
83
83
|
* Clears all the checkpoints in the propagator.
|
|
84
84
|
*/
|
|
85
85
|
clearCheckpoints() {
|
|
86
|
-
this.
|
|
86
|
+
this.checkpoints_ = [];
|
|
87
87
|
}
|
|
88
88
|
/**
|
|
89
89
|
* Restores the state of the propagator to a previously saved checkpoint.
|
|
90
90
|
* @param index - The index of the checkpoint to restore.
|
|
91
91
|
*/
|
|
92
92
|
restore(index) {
|
|
93
|
-
this.
|
|
93
|
+
this.cacheState_ = this.checkpoints_[index];
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
//# sourceMappingURL=Sgp4Propagator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sgp4Propagator.js","sourceRoot":"","sources":["../../src/propagator/Sgp4Propagator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,UAAU;
|
|
1
|
+
{"version":3,"file":"Sgp4Propagator.js","sourceRoot":"","sources":["../../src/propagator/Sgp4Propagator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,UAAU;IACf;IAA7B,YAA6B,IAAS;QACpC,KAAK,EAAE,CAAC;QADmB,SAAI,GAAJ,IAAI,CAAK;QAEpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;IAEO,WAAW,CAAQ;IACnB,YAAY,GAAY,EAAE,CAAC;IAEnC;;;OAGG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAe,EAAE,MAAgB,EAAE,SAAmB,EAAE,QAAQ,GAAG,IAAI;QACvF,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,QAAQ,CAAC,QAAgB,EAAE,QAAQ,GAAG,IAAI;QACxC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,KAAe;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;QAExD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEzC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,KAAa;QACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;CACF"}
|