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
|
|
@@ -17,9 +17,9 @@
|
|
|
17
17
|
|
|
18
18
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
19
19
|
/* eslint-disable class-methods-use-this */
|
|
20
|
-
import { EpochUTC, J2000, Tle } from '../main.js';
|
|
21
20
|
import { Thrust } from '../force/Thrust.js';
|
|
22
21
|
import { VerletBlendInterpolator } from '../interpolator/VerletBlendInterpolator.js';
|
|
22
|
+
import { EpochUTC, J2000, Tle } from '../main.js';
|
|
23
23
|
import { Propagator } from './Propagator.js';
|
|
24
24
|
|
|
25
25
|
/**
|
|
@@ -28,20 +28,20 @@ import { Propagator } from './Propagator.js';
|
|
|
28
28
|
* state of the TLE at different epochs.
|
|
29
29
|
*/
|
|
30
30
|
export class Sgp4Propagator extends Propagator {
|
|
31
|
-
constructor(private
|
|
31
|
+
constructor(private readonly tle_: Tle) {
|
|
32
32
|
super();
|
|
33
|
-
this.
|
|
33
|
+
this.cacheState_ = tle_.state.toJ2000();
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
private
|
|
37
|
-
private
|
|
36
|
+
private cacheState_: J2000;
|
|
37
|
+
private checkpoints_: J2000[] = [];
|
|
38
38
|
|
|
39
39
|
/**
|
|
40
40
|
* Gets the state of the propagator in the J2000 coordinate system.
|
|
41
41
|
* @returns The J2000 state of the propagator.
|
|
42
42
|
*/
|
|
43
43
|
get state(): J2000 {
|
|
44
|
-
return this.
|
|
44
|
+
return this.cacheState_;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
/**
|
|
@@ -71,9 +71,9 @@ export class Sgp4Propagator extends Propagator {
|
|
|
71
71
|
* @returns The propagated state in J2000 coordinates.
|
|
72
72
|
*/
|
|
73
73
|
propagate(epoch: EpochUTC): J2000 {
|
|
74
|
-
this.
|
|
74
|
+
this.cacheState_ = this.tle_.propagate(epoch).toJ2000();
|
|
75
75
|
|
|
76
|
-
return this.
|
|
76
|
+
return this.cacheState_;
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
/**
|
|
@@ -81,7 +81,7 @@ export class Sgp4Propagator extends Propagator {
|
|
|
81
81
|
* to the current J2000 state of the TLE.
|
|
82
82
|
*/
|
|
83
83
|
reset(): void {
|
|
84
|
-
this.
|
|
84
|
+
this.cacheState_ = this.tle_.state.toJ2000();
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
/**
|
|
@@ -89,16 +89,16 @@ export class Sgp4Propagator extends Propagator {
|
|
|
89
89
|
* @returns The index of the checkpoint.
|
|
90
90
|
*/
|
|
91
91
|
checkpoint(): number {
|
|
92
|
-
this.
|
|
92
|
+
this.checkpoints_.push(this.cacheState_);
|
|
93
93
|
|
|
94
|
-
return this.
|
|
94
|
+
return this.checkpoints_.length - 1;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
/**
|
|
98
98
|
* Clears all the checkpoints in the propagator.
|
|
99
99
|
*/
|
|
100
100
|
clearCheckpoints(): void {
|
|
101
|
-
this.
|
|
101
|
+
this.checkpoints_ = [];
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
/**
|
|
@@ -106,6 +106,6 @@ export class Sgp4Propagator extends Propagator {
|
|
|
106
106
|
* @param index - The index of the checkpoint to restore.
|
|
107
107
|
*/
|
|
108
108
|
restore(index: number): void {
|
|
109
|
-
this.
|
|
109
|
+
this.cacheState_ = this.checkpoints_[index];
|
|
110
110
|
}
|
|
111
111
|
}
|
package/src/sgp4/index.ts
CHANGED
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
24
|
export { Sgp4 } from './sgp4.js';
|
|
25
|
+
|
package/src/sgp4/sgp4.LICENSE.md
CHANGED
|
@@ -19,10 +19,10 @@ links to the main page, to facilitate communications regarding any questions on
|
|
|
19
19
|
|
|
20
20
|
[https://celestrak.org/publications/AIAA/2006-6753/faq.php](Link to Source)
|
|
21
21
|
|
|
22
|
-
## ootk
|
|
22
|
+
## ootk Notes
|
|
23
23
|
|
|
24
24
|
Since the original authors do not have a license file, this file is to document the permission granted to use the code
|
|
25
25
|
to develop a TypeScript implementation.
|
|
26
26
|
|
|
27
|
-
The ootk
|
|
27
|
+
The ootk TypeScript implementation is licensed under the AGPL 3.0 License. ootk is not affiliated with the original
|
|
28
28
|
authors.
|
package/src/sgp4/sgp4.ts
CHANGED
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* This class was ported from the python-sgp4 library by Brandon Rhodes. That library
|
|
9
|
+
* is licensed under the MIT license and he maintains the copyright for that work.
|
|
14
10
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
11
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
12
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
13
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
14
|
+
*
|
|
15
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
16
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
17
|
+
* See the GNU Affero General Public License for more details.
|
|
18
|
+
*
|
|
19
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
20
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
24
21
|
*/
|
|
25
22
|
|
|
26
23
|
// NOTE: This file is meant to maintain as much of the original format as possible.
|
|
@@ -30,14 +27,14 @@
|
|
|
30
27
|
/* eslint-disable max-lines */
|
|
31
28
|
/* eslint-disable @typescript-eslint/no-loss-of-precision */
|
|
32
29
|
|
|
33
|
-
import { OmmParsedDataFormat } from '../interfaces/OmmFormat.js';
|
|
34
30
|
import { Sgp4OpsMode } from '../enums/Sgp4OpsMode.js';
|
|
31
|
+
import { OmmParsedDataFormat } from '../interfaces/OmmFormat.js';
|
|
32
|
+
import { Tle } from '../main.js';
|
|
35
33
|
import {
|
|
36
34
|
GreenwichMeanSiderealTime, Kilometers, KilometersPerSecond, SatelliteRecord, StateVectorSgp4, Vec3Flat,
|
|
37
35
|
} from '../types/types.js';
|
|
38
36
|
import { DEG2RAD, PI, TAU, temp4, x2o3 } from '../utils/constants.js';
|
|
39
37
|
import { Sgp4ErrorCode } from './sgp4-error.js';
|
|
40
|
-
import { Tle } from '../main.js';
|
|
41
38
|
|
|
42
39
|
export enum Sgp4GravConstants {
|
|
43
40
|
wgs72old = 'wgs72old',
|
|
@@ -626,8 +623,8 @@ export class Sgp4 {
|
|
|
626
623
|
let i = 1;
|
|
627
624
|
let inttemp = 0;
|
|
628
625
|
|
|
629
|
-
while (dayofyr > inttemp + (lmonth[i - 1]
|
|
630
|
-
inttemp += (lmonth[i - 1]
|
|
626
|
+
while (dayofyr > inttemp + (lmonth[i - 1]) && i < 12) {
|
|
627
|
+
inttemp += (lmonth[i - 1]);
|
|
631
628
|
i += 1;
|
|
632
629
|
}
|
|
633
630
|
|
|
@@ -1499,7 +1496,7 @@ export class Sgp4 {
|
|
|
1499
1496
|
|
|
1500
1497
|
rdotv = Sgp4.dot_(r, v);
|
|
1501
1498
|
for (i = 0; i <= 2; i++) {
|
|
1502
|
-
ebar[i] = (c1 * (r[i]
|
|
1499
|
+
ebar[i] = (c1 * (r[i]) - rdotv * (v[i])) / mus;
|
|
1503
1500
|
}
|
|
1504
1501
|
ecc = Sgp4.mag_(ebar);
|
|
1505
1502
|
|
|
@@ -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
|
package/src/time/Epoch.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
24
|
import { Seconds } from '../main.js';
|
package/src/time/EpochGPS.ts
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
|
-
import { Seconds } from '../main.js';
|
|
25
24
|
import { DataHandler } from '../data/DataHandler.js';
|
|
25
|
+
import { Seconds } from '../main.js';
|
|
26
26
|
import { secondsPerWeek } from '../utils/constants.js';
|
|
27
27
|
import type { EpochUTC } from './EpochUTC.js';
|
|
28
28
|
// / Global Positioning System _(GPS)_ formatted epoch.
|
|
@@ -42,7 +42,7 @@ export class EpochGPS {
|
|
|
42
42
|
throw new Error('GPS seconds must be within a week.');
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
// TODO:
|
|
45
|
+
// TODO: Set EpochGPS.reference statically without circular dependency.
|
|
46
46
|
EpochGPS.reference = reference;
|
|
47
47
|
}
|
|
48
48
|
|
|
@@ -50,7 +50,7 @@ export class EpochGPS {
|
|
|
50
50
|
static reference: EpochUTC;
|
|
51
51
|
|
|
52
52
|
// / GPS leap second difference from TAI/UTC offsets.
|
|
53
|
-
static offset = 19 as Seconds;
|
|
53
|
+
static readonly offset = 19 as Seconds;
|
|
54
54
|
|
|
55
55
|
// / Get GPS week accounting for 10-bit rollover.
|
|
56
56
|
get week10Bit(): number {
|
package/src/time/EpochTAI.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
24
|
import { Epoch } from './Epoch.js';
|
package/src/time/EpochTDB.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
24
|
import { Epoch } from './Epoch.js';
|
package/src/time/EpochTT.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
24
|
import { Epoch } from './Epoch.js';
|
package/src/time/EpochUTC.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
24
|
import { Seconds } from '../main.js';
|
|
@@ -164,8 +164,8 @@ export class EpochUTC extends Epoch {
|
|
|
164
164
|
|
|
165
165
|
private static dayOfYear_(year: number, month: number, day: number): number {
|
|
166
166
|
const dex = EpochUTC.isLeapYear_(year) ? 1 : 0;
|
|
167
|
-
const dayOfYearArray = EpochUTC.dayOfYearLookup_[dex]
|
|
168
|
-
const daysBeforeCurrentMonth = dayOfYearArray[month - 1]
|
|
167
|
+
const dayOfYearArray = EpochUTC.dayOfYearLookup_[dex];
|
|
168
|
+
const daysBeforeCurrentMonth = dayOfYearArray[month - 1];
|
|
169
169
|
|
|
170
170
|
return daysBeforeCurrentMonth + day - 1;
|
|
171
171
|
}
|
package/src/time/EpochWindow.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @author Theodore Kruczek
|
|
3
|
-
* @
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Software without restriction, including without limitation the rights to use,
|
|
8
|
-
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
-
* the Software, and to permit persons to whom the Software is furnished to do
|
|
10
|
-
* so, subject to the following conditions:
|
|
2
|
+
* @author Theodore Kruczek
|
|
3
|
+
* @description Orbital Object ToolKit (ootk) is a collection of tools for working
|
|
4
|
+
* with satellites and other orbital objects.
|
|
5
|
+
* @license AGPL-3.0-or-later
|
|
6
|
+
* @copyright (c) 2025 Kruczek Labs LLC
|
|
11
7
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Many of the classes are based off of the work of @david-rc-dayton and his
|
|
9
|
+
* Pious Squid library (https://github.com/david-rc-dayton/pious_squid) which
|
|
10
|
+
* is licensed under the MIT license.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
12
|
+
* Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the
|
|
13
|
+
* terms of the GNU Affero General Public License as published by the Free Software
|
|
14
|
+
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
|
17
|
+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
18
|
+
* See the GNU Affero General Public License for more details.
|
|
19
|
+
*
|
|
20
|
+
* You should have received a copy of the GNU Affero General Public License along with
|
|
21
|
+
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
24
|
import type { EpochUTC } from './EpochUTC.js';
|