ODTK 7.5 Release Notes

ODTK 7.5 is a minor release with five new features and some additional improvements. You are encouraged to read thoroughly all release notes to understand how you may benefit or be impacted if upgrading from a previous version.

Feature items

Estimate central body gravitational parameters

ODTK now supports the estimation of a correction to the gravitational parameter of a non-Earth central body. This feature is a complement to the previously released capability to estimate corrections to the ephemeris of a non-Earth central body. Together they improve the utility of ODTK for the planning and execution of missions to small bodies, such as asteroids, where precise mass and orbit information is not typically available prior to the mission.

SPICE attitude files

ODTK now supports the use of SPICE attitude files to specify satellite attitude. To use this new functionality, first place the relevant SPICE attitude (*.bc) and spacecraft clock (*.tsc) files into one of the existing ODTK SPICE directories. The next time ODTK is started, it will load the SPICE files, which will be available for use via the satellite Attitude property. If a satellite or satellite structure is specified in the attitude file and linked to a loaded clock file, the SPICE ID for that object will be available for selection in ODTK. You can use both continuous and discrete SPICE attitude files.

Estimate the trajectory of moving surface vehicles

ODTK now supports a new class of moving objects, surface vehicles, which models ground-based vehicles and ships. Surface vehicle objects can be tracked and can host tracking instruments, similar to satellite objects. Example use cases for the new surface vehicle modeling and estimation capability include the tracking of satellites from ship-based RADAR, the reconstruction of routes taken by ships or land-based vehicles using tracking from space-based assets, and the tracking of planetary rovers from Earth-based ground stations or planetary orbiters.

Child satellite deployment modeling and estimation

ODTK now supports the modeling and estimation of child satellite deployment from a parent satellite, typically either an upper stage or mothership. You can specify a deployment schedule in the properties of the parent object that dictates the time of the deployment along with the separation velocity and separation velocity uncertainty. Simulation of deployments includes the option to randomly perturb the separation velocity based on the provided uncertainty and model the effects on both the parent and child satellites. The actual separation effects on both objects can then be recovered during sequential estimation where ODTK automatically initializes the proper correlation between the parent and child orbit estimates.

Containerization

The ODTK install now includes instructions and code samples showing how to containerize ODTK runtime for deployment to cloud computing resources. The install also provides interfaces supporting Jupyter Notebooks, Python, and web services.

Corrected issues and additional enhancements in ODTK 7.5

In addition to the new features, this release also provided additional enhancements and technical corrections from the last release.

Additional Enhancements and Resolved Issues in ODTK 7.5
Tracking No. Description
114068 Adds support for the DTM 2020 atmospheric model.
115310 Adds an option to finite maneuvers to inertially fix Delta-V and thrust vectors at the start of the burn.
115321 Replaces GNSS Satellite BeamFOV with a new SimConstraints attribute tree in the GNSS Satellites and GNSS Constellation object properties. Thus, the BeamFOV attribute is now deprecated. Calls to get or set the BeamFOV will now modify the halfAngleFOV attribute instead.When loading scenarios created from previous versions of ODTK, the default value for the halfAngleFOV parameter is now 19.0 degrees. For newly created objects, the default is 23.5 degrees.
115854 For satellite force modeling for ocean tides, you can now choose between the FE2014b model (newly added) and the CSR 3.0 model.
116037 You can now specify satellite maneuvers in the True of Date and Mean of Date reference frames.
116199 Status messages for the simulator, filter, and smoother now include the object name.
116274 Adds two new Simulator Error Modeling attributes: AddMeasBiasProcessNoise and AddForceModelProcessNoise. These together replace the AddProcessNoise attribute, which is now deprecated.
116379 ODTK now offers the Goddard Solar Pressure and Atmospheric Drag (SPAD) tool as an option for modeling the spacecraft for solar pressure calculation. SPAD produces a two-dimensional table of area vectors that represent an effective directional area of the spacecraft as a function of the illumination direction.
116441 ODTK now processes the Bistatic Ground TDOA measurement type. ODTK can process TDOA measurements of signals emitted from a fixed, gound-based transmitter, where one signal path is direct to a ground-based receiver and the other signal path reflects off a satellite.
116526 This fixes a specific case when ODTK computed the Hessian used in the Gaussian second-order measurement update correction. The error only occurred when a user selected the Gaussian second-order filter as the Higher Order Corrections Mitigation method in the Filter. The error only affected cases where the Filter estimated a corresponding measurement bias. The effect of the error was to make the residual error variance artificially large.
116529 This fixes a specific case when ODTK did not use the latest settings in the optical properties of a space-based tracking instrument during estimation. The case occurred when a setting was changed in a tracking instrument that had already been explicitly placed into the TrackerList on a Filter or Least Squares object. The error would self-correct when saving and then reloading the scenario.
116566 Updates the SPICE files responsible for planetary ephemeris in ODTK by taking into account the latest NASA NAIF data. This also updates the default planetary ephemeris file for ODTK scenarios to plneph.440.
116624 Adds the VenusGRAM 2005 atmospheric density model to ODTK to support mission analysis and operations for satellites in the vicinity of Venus.
116625 UpdateInitialConditions() now supports "dd mmm yyy hh:mm" as a valid time format.
116724 Gooding Angles Only IOD would crash if the input angles resulted in the computation of nonsensical solutions and the user disabled the setting Limit Solutions to Closed Orbits. Now ODTK removes such solutions from the solution set so that processing continues.
116824 Eliminates divide-by-zero errors where satellites are using a Vasicek MeasTimeBias.
116827 Removes a duplicate graph called "TrackerMeasBiasStateHistory(Vasicek).gph" from the Static Product Builder.
116830 ODTK can now process direction cosine measurements through an ODTK-specific angle type that is now on the list of measurements supported in the CCSDS TDM tracking data format.
116925 Corrects an error in the loading frequency ramp information from tracking data files in the CCSDS TDM format. The error affected scenarios where ODTK used two or more tracking data files containing frequency ramps for the same ground station. In this case, ODTK only used the frequency ramps contained in the first file. The error only occurred when using DSN data in the CCSDS TDM format.
117128 This corrects a labeling error in the FF SRP Consistency graph, where "Ballistic Coefficient" was appearing instead of the correct label "SRP Coefficient".
117223 When doing a copy/paste of an object with an emitter, the Emitter List would not recognize the second emitter because it had the same name as the original. ODTK now renames the second emitter so that it will appear in the list.
117259 This updates the GNSS Catalog files based on the latest status reporting on the constellations.
117260 For the DSN tracking system that AGI includes in the ODTK installation, the position of DSS53 is up to date based on the latest JPL report 301 version N, called "Coverage and Geometry."
117318 In the Simulator and Filter, an indexing error was occurring when a spacecraft in lander mode had a tracking ID larger than the tracking ID of another satellite in the scenario, resulting in the corruption of the trajectory of the lander in state space. The indexing is now correct.
117364 The user interrupt feature (filter, smoother, simulator) now works even during the generation of ephemeris predictions at the end of the main process execution.
117503 Before this change, if a LeastSquares object failed initialization due to bad input conditions, the ODTK UI would not reset the pointer to the current active object and keep trying to run the last failed LeastSquares when users pressed "Go," even if the person selected a different LS object. ODTK now resets the pointer to run the selected object.
117588 The Data Update server that downloads the latest Space Weather and EOP files is transitioning from ftp.agi.com to Stk12-00-duu.agi.com. If you already have an existing C:\ProgramDate\AGI\ODTK7\DataUpdate\Settings.txt file set to the old server name, you may want to update it manually to the new location so that it will work if the old server goes away.

Unresolved issues affecting the current release

You should be aware of the following limitations and unresolved issues affecting ODTK as of the date of this release.

Known Issues
Tracking No. Description
07071 Tracker satellites cannot share tracking IDs with GPS constellation PRN numbers. If a scenario contains both an optical tracker satellite and a GPS constellation and the tracker satellite has a tracking ID between 1-36, the tracking ID will become ambiguous.
23349 LaunchPad doesn't format dates in local format. It always uses MM/DD/YYYY, even if your machine is configured to show dates as DD/MM/YYYY.
30517 The Plugins tab does not refresh the SupportsSave column. When you add a new plugin tracking data reader and click Apply, the column labeled SupportsSave is not refreshed. By default, the value in this column is false, but after you add a new tracking data reader that supports save, then the value in this column should be true. You must dismiss the panel and pull it back up to get the correct value.
31034 After a long predict, the covariance is quite large. A very large measurement update can drive the filter covariance negative.
31802 A GPS constellation object does not populate the PRNList until properties are applied. We suggest that when you first assign a source file to a GPS constellation, you press Apply before double-clicking on the PRNList to view its contents.
32139 State File To SP3 utility limits output to GPSSatellites named PRN01, PRN02, etc.
42672 Dynamic Earth Data does not use file find paths. Do not attempt to change the location from the default location.
100422 When using native support for 4K displays, the Object Properties tree [+] and [-] boxes do not scale properly and will appear very small.
110488 In deep space mode, the simulator runs in two stages. In the first stage, it generates ephemeris over the analysis period plus an interval of time before the analysis period to account for light time delay (LTD). The simulator ignores any maneuvers in this LTD interval, so any measurements generated under the case where the signal would have been at the satellite before the end of the maneuver will be incorrectly modeled.
113157 Adding non-EOP txt files, particularly SOLFSMY.txt, to the EOP properties causes ODTK to crash rather than just producing an error.
114299 If any type of Doppler measurement that uses an integration interval contains a maneuver boundary within the integration interval, the measurement model will generate an erroneous result. This can result in Filter divergence in certain conditions.
116805 When a text export fails, ODTK displays old content from a previous successful run. This could be misleading if you are not aware of the failure.
117007 ODTK does not expose the alias system for emitters, even though tracking data providers send in the emitter tracking IDs.
117471 If you have a satellite going around the Earth and you add an IOD object, ODTK will associate that IOD object with the Earth. If you change the central body for the satellite, the IOD object will not realize it. If you then run the IOD, the solution will be Earth centered when you really want the center to be a different central body.