ODTK 7.7 Release Notes

ODTK 7.7 is a minor release with eight 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.

ODTK general enhancements

Antenna phase center offsets for GNSS

ODTK now enables you to apply GNSS antenna phase center locations and variations using the IGS v1.4 ANTEX file. This is especially helpful when you use IGS-generated SP3 files.

GPS Nav Sol IOD

When using a GNSS Navigation Solution for an initial orbit determination, ODTK provides the following enhancements:

  • Output now includes read-only attributes for minimum and maximum number of satellites available as well as the minimum and maximum geometric dilution of precision. You can use these as diagnostic metrics to evaluate the quality of the initial orbit determination (IOD) solution.
  • The maximum time allowed between the requested IOD time and potential data points increased from 60 minutes to 120 minutes, adding flexibility to your selection.

Covariance for a second central body

You can now use ODTK’s CreateEphFileTool to generate relative covariance data with respect to an estimated target body that is different from the satellite's central body.

Importing and exporting objects

You can now import and export two or more objects either to or from ODTK at the same time.

Additional measurement processing

SB TDOA SBE: Initial geolocation of surface vehicles

ODTK now can process space-based TDOA from space-based emitter (SB TDOA SBE) measurements. This enables you to perform initial geolocation of surface vehicles.

Bistatic ground FDOA

You can now use bistatic ground FDOA as a measurement type in ODTK. This measurement type allows for the processing of TDOA measurements of signals emitted from a fixed, ground-based transmitter where one signal path is direct to a ground-based receiver and the other signal path reflects off a satellite.

SB one-way Doppler

ODTK can now process space-based, one-way Doppler measurements. This enables you to estimate relative clock frequency.

Corrected issues and additional enhancements in ODTK 7.7

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.7
Tracking No. Description
108440 You can now use mean phase center locations and phase center variations on GNSS satellite antennas by using the IGS v1.4ANTEX file. AGI recommends using this IGS-generated ANTEX file when you use IGS-generated SP3 files.
110564 For the GNSS NAV solution for initial orbit determination (IOD), you can now see four new read-only properties: minimum/maximum number of satellites and minimum/maximum geometric dilution of precision. These diagnostic metrics provide valuable insight into the quality of the IOD solution.
115582 The ILRS CRD tracking data reader now processes measurements in format versions 1.0 and 2.01.
117007 ODTK now has Tracking ID Aliases associated with the emitter object.
117471 When transferring IOD and Least Squares solutions to a parent satellite that has a different central body, ODTK now gives you an error message with a description of how to resolve the issue. Previously, ODTK did not provide this message.
118258 Least Squares processing now includes transponder delay correction estimation for relay satellite transponders.
118266 When you click the File menu and select an option, a dialog box appears. This dialog box is now larger, so you can see the file names and folders more clearly. Also, the dialog box looks like an Explorer window, meaning that you can adjust the file path at the top of the box.
118434 You can now use the Bistatic Ground FDOA measurement type. This measurement type allows for the processing of FDOA measurements of signals emitted from a fixed, ground-based transmitter where one signal path is direct to a ground-based receiver and the other signal path reflects off a satellite.
118611 The error processing changed for the case when PyCharm is debugging Python scripts that connect to ODTK via the CrossPlatform API interface and a timeout between executing steps exceeds 150 seconds (HTTP Transport default). Previously, ODTK would just raise an exception, but now it retries the connection and resends the request.
118686 For Least Squares, when you have an empty list for relay satellites, ODTK will include all available satellites, which is consistent with other ODTK lists. Previously, ODTK Least Squares would interpret an empty list as "no relay satellites available."
118703 ODTK can now export two or more objects at the same time.
119129 For the simulator object, the property CustomTrackingIntervals.Schedule now has a description column.
119317 When using the cross-platform (Python) API, there was a performance degradation when connecting to the full ODTK UI application but no degradation when using command line ODTK Runtime. Microsoft handles WM_TIMER events in the main UI loop (minimum 10 millisecond delay). To remove the UI application degradation, ODTK now processes crossplatform API scripting requests in bursts of 50 milliseconds. You can override the default time by setting ODTK_CROSSPLATFORM_SCRIPTING_API_BATCH_TIME=nn to another value (in milliseconds) or to -1 to revert to the old behavior.
119328 ODTK now correctly processes one-way Doppler measurements from CCSDS TDM files. Previously, ODTK was interpreting these as two-way Doppler measurements and erroneously dividing by two.
119339 When ODTK generates CCSDS ephemeris to write to a file, it can now accept FileNameFormat choices other than ProcessStart.
119340 You can now choose to have the ODTK filter send filter gain and measurement partials matrices to a filter debug file.
119360

Antennas attached to GNSS receivers now have an alias string setting. You can use this to ensure that ODTK uses the correct antenna when modeling GNSS observations from a RINEX-formatted tracking data file that specifies a string instead of an integer in the antenna ID field in the file header.

The NAVSOL format now has new record types so you can specify an antenna associated with GNSS navigation solution measurements.

119382 ODTK now supports all instantiations of ITRF frames on import and export of ephemeris. The ITRF frames model different realizations of the Earth's Fixed frame over the years. The differences in position computed using different ITRF frames are very often less than 10 centimeters, but older frames (e.g., ITRF1993) may produce differences of up to 1 meter compared to newer ones (e.g., ITRF2020). Computations using newer ones likely differ on the order of millimeters.
119405 For the Finite Maneuver Summary report, the maneuver execution frame now properly reflects the inertial frame in which the maneuver was applied.
119406 ODTK now checks for numerical roundoff that could result in taking the square root of negative numbers. The most common occurrences of this condition result from transformations of the state-error covariance for the purpose of reporting root-variances in specific reference frames in cases where uncertainties have become very small numbers.
119427 ODTK can now provide initial geolocation for surface vehicles by using SB TDOA SBE measurements.
119509 For ODTK 7.7 and later, AGI will no longer validate support for hosting ODTK on Windows Server 2012R2.
119556 When processing RINEX measurements, ODTK now properly processes unsupported observation codes as well as supported ones.
119569 The ODTK 7.7 installation package has an updated version of Dynamic Earth Data, including EOP, space weather, IRI, and adjustments for the ITRF2020 reference frame.
119861 The DeveloperKit/CodeSamples/CrossPlatform/ODTK/python/odtk.py sample script now explicitly closes the transport HTTP connection to the ODTK cross-platform API upon deletion of the client object. Without this change, the ODTK application could stay open for another 10-15 seconds waiting for the socket to close, even if the driving python script has finished.
119890 The ODTK 7.7 installation package contains the upgraded version 9.8.0.32 of the ProEssentials graphing library.
119942 ODTK now properly generates and processes optical measurements from a space-based tracker that is orbiting the Sun. Previously, ODTK blocked the processing of these measurements due to incorrect application of the lighting constraint.
119943 ODTK is now using the correct value of the gravitational parameter (μ) when generating reports and graphs of orbital elements of estimated central body orbits.
119945 ODTK now uses a great arc interpolation method for ephemeris files generated for a spacecraft with a motion model setting of "Lander." This model better represents the fact that these objects are expected to be on the surface of a central body. This update mainly affects ephemeris files, generated from the ODTK filter, that have position discontinuities at times of measurement updates.
119952 ODTK now checks the IDs of GNSS receivers to make sure no two have the same ID. It also assures that no two retroreflectors of the same parent satellite have the same ID.
120000 You can now install just the Ansys License Manager without needing to install the ODTK application.
120091 ODTK now displays all toolbars when opening scenarios with workbooks created by older application versions. Earlier versions of ODTK would sometimes fail to display certain toolbars in this case.
120102 ODTK can now provide relative covariance data with respect to an estimated target body that is different than the satellite's central body.
120103 The Change Central Body tool now properly accounts for correlations between the orbits of estimated satellites and the orbits of estimated central bodies when updating a restart record for new central body selections for estimated satellites. A case where this would be important is the transition from a Sun-centered estimation to an asteroid-centered estimation when ODTK is estimating corrections to the asteroid ephemeris simultaneously with the satellite ephemeris.
120204 The ODTK Filter now properly processes OpNav measurements when using higher-order corrections to the Filter estimate that depend on the measurement Hessian matrix. Previous processing of this specific type and method could cause ODTK to crash. The fix involved correcting first-order partial derivatives of the OpNav bearing measurements (RA / Dec) where the bearing angles were relative to a reference frame other than the ICRF and for cases where the spacecraft carrying the OpNav camera was not estimated in inertial coordinates centered on either the Sun or the target body of the OpNav measurements.
120211 ODTK can now process space-based, one-way Doppler measurements.
120268 You can now view the entire text field of the Python Report Designer plugin to specify additional arguments below the Python Script picker. Previously, this text field was clipped.
120471 For space-to-ground one-way Doppler measurements, ODTK now uses the correct relationship between clock phase drift over the integration interval and the measured Doppler effect. The prior flawed implementation resulted in incorrect use of clock frequency errors.
120559 ODTK measurement models for TDOA, FDOA, and TDOA Dot now accommodate use cases across the Earth-Moon domain. An example use case is having an emitter on the surface of the Moon and a receiver on the surface of the Earth.
120846 ODTK now correctly registers the satellite setting SPICE.ID. Previously, ODTK was not properly saving the SPICE.ID value with the scenario. ODTK only uses this value when generating spacecraft ephemeris in the SPICE (*.bsp) format.

Unresolved issues affecting the ODTK 7.7 release

You should be aware of the following limitations and unresolved issues affecting ODTK as of the ODTK 7.7 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.