General Information | What's New? | Transition Issues | Online Help Resources

ODTK 6.0 Release Notes

Including Changes through ODTK 6.0.1, ODTK 6.0.2, ODTK 6.0.3, and ODTK 6.0.4.

These release notes contain information on system and disk space requirements for installing and running ODTK; information on new capabilities and features introduced in the current version of ODTK, including issues resolved from the prior version; transition information -- cautions, workarounds and operational tips -- to help maximize your successful use of the product; and a brief introduction to online help resources.

Unless otherwise indicated, the information presented below reflects the state of ODTK as of version 6.0. Changes introduced in ODTK 6.0.1, ODTK 6.0.2 and ODTK 6.0.3 are described in a separate section.

General information

This section includes system requirements and background information on ODTK 6.0.

System and disk space requirements

The following table sets out minimum and recommended system requirements for ODTK 6.0:

ODTK 6.0 System Requirements
Memory Disk Space Processor Operating System Browser
Minimum 256 MB 1 GB 800 MHz XP/XP Professional X64
, Windows Vista, or Windows 7 (ODTK 6.0.3 only)
Internet Explorer 5.5
Recommended 512 MB 4 GB 2.0 GHz XP/XP Professional X64
, Windows Vista, or Windows 7 (ODTK 6.0.3 only)
Internet Explorer 6.0

An ODTK 6.0 installation requires 200-300 MB of disk space. Running a typical scenario, such as the Sapphire demo scenario that accompanies ODTK 6.0 (3 satellites, 5 trackers x 3 days), takes about 600MB disk space for simulator, filter and smother runs. During such a run the memory footprint of ODTK 6.0 is slightly over 110Mb.

Background

ODTK 6.0 is built upon the same verified astrodynamics functions and coordinate conversions as STK and its modules. ODTK 6.0 is a matched set of modules, designed to provide orbit determination and analysis support for the entire life-cycle of satellite tracking systems. All phases of systems design can be supported with simulated tracking data, Monte Carlo analyses, and covariance analyses. ODTK 6.0 can produce results for satellite orbit parameters by processing one satellite at a time or multiple satellites simultaneously. ODTK is a stand-alone product, not an add-on module to STK.

The main products in this suite are a tracking data simulator, a state-of-the-art optimal sequential filter and a matched optimal sequential smoother. The sequential filter is designed to provide capabilities in support of routine satellite operations, including orbit determination, ephemeris prediction, and bias and maneuver/thruster calibration. The sequential filter produces a realistic covariance for system performance analyses, tasking optimization, and calculation of the probability of collision (in conjunction with STK/CAT). The optimal smoother provides high accuracy post-fit ephemerides in support of mission data products.

Particular care has been taken to ensure that regression tests to ODTK 5 are satisfied, that ODTK 5 scenarios will load and run in ODTK 6.0, and that ODTK 5 restart files will initialize in ODTK 6.0.

What's New in ODTK 6.0?

The sections below describe the following new features and capabilities of ODTK 6:

User interface changes

While the general look and feel of ODTK remains the same, the underlying window-management code has been updated. You may notice this when moving windows around. As you grab the title bar and start to drag the window, you will see various blue arrows show up, indicating possible docking options. While dragging, move the mouse over the different arrows and it will show you where the window will dock if the mouse is released.

The properties browser now allows you to collapse and expand the tree to the first level using the >> and << buttons at the top of the panel. Right-clicking on a tree item will display an option "Start Expanded" which will save the user preference to always start up with the tree fully expanded or not.

Right-clicking on an object in the browser now displays a Properties option which will open up the Object Properties browser.

Graphing improvements

The underlying graphing package used in ODTK has been upgraded. You'll notice that all graphs with Time on the X axis now have a date/time format rather than "Minutes after Midnight". Users may find this easier to interpret, especially when looking at graphs covering longer time spans. As you zoom in the time scales will automatically adjust, with a lower bound of 1 ms resolution. The X-axis title for time based graphs has been updated to read "Time" rather than "Minutes Since Midnight". If you have your own custom graph styles you may wish to update them.

All graphs with Time on the X axis now have the option to "Show Events". This is a new flag that has been added to the Graph Designer that is on by default for all the time-based graph styles that ship with ODTK.

There are two sources of events: Instant Maneuvers and Finite Maneuvers. An instant maneuver will be displayed on the graph as a vertical line at the time of the maneuver and labeled with the maneuver name at the bottom of the graph. A finite maneuver will be displayed as vertical lines at the start and stop times and a shaded region in between, labeled with the maneuver name at the bottom of the graph. The event display allows you to visually correlate key events with the behavior of other OD data such as residuals, position uncertainty, etc. We anticipate adding additional event types (such as eclipses, user defined, etc) in future releases. When displaying events from difrun files, the events from the reference source will be displayed. The target source events are not available in the difrun file.

If the user specifies start and stop times for a graph, the X axes will be set to those limits, regardless of the time span of the data being graphed. This is useful when aligning multiple graphs over the same span.

You can now zoom in and out incrementally using the zoom-in and -out buttons. By default all graphs are in zoom mode when first created.

Graphs can now be saved in more formats, including EMF, WMF, BMP, JPG, and PNG.

It is now possible to perform residual editing directly from the graphs. See the Graphical Editing of Residuals help page for details.

Pressing the F5 key while on the Output page of the Static Product Builder will perform a refresh of the list. This is useful after doing a Save As on a graph or report as it will refresh the list to show the new item.

Automation improvements

The option to automatically create a difference run (.difrun) file has been added to the Smoother and Variable Lag Smoother objects. If enabled, the smoother will automatically create the .difrun file as the difference between the filter and the smoother run files. This automation feature was added since this task is very often performed after running the smoother.

Least squares improvements

The least squares run files (.lsrun) now allow data limiting by stage and iteration number. This allows you to generate a report or graph showing just the first or last set of residuals from your least squares fit. It also now includes the satellite state parameters so that you can difference a .lsrun file with a .filrun, .smtrun, or .simrun to compare the performance of your least squares solution with other solutions. Graph styles for displaying the residuals have been added.

You can now specify the use of partial derivatives calculated using an Encke method, in addition to the traditional Full Numerical method that was used in previous versions. The Encke method is faster and is recommended for future use.

The least squares objects now allow for the estimation of measurement biases. If enabled, the biases will be estimated and the results shown in the Output | OrbitState | MeasBiasList. This aids the user in getting their OD started when very little information is known about the measurements and tracking systems being used.

Maneuver improvements

Maneuvers now allow you to specify the direction of the maneuver using right ascension and declination (RADec) when an inertial coordinate frame is specified.

Maneuvers are now displayed sorted by start time, which is more intuitive than previous behavior.

Users can specify a net Delta-V impulse for a finite maneuver. ODTK will compute a constant thrust to approximate the input Delta-V. Note that this method assigns the final direction to the initial direction, so that the delta-v at the stop time will not match exactly the input Delta-V. The approximation will degrade as the length of the maneuver increases.

Measurement editing and thinning

The concept of measurement editing (which measurements will be actually processed) and thinning (decreasing the sampling rate of a series of measurements) has been completely overhauled to provide greater flexibility. These settings are now controlled on a per-object (Filter, Least Squares) basis using the Custom Data Editing attributes. See the Getting Started document for more details and examples.

Data providers

Several new data providers have been added:

  • Classical Element Uncertainty - calculates the uncertainty for each of the classical Keplerian elements. This feature is useful when trying to verify performance relative to a specification defined in terms of Keplerian elements.
  • Measurement First and Second Differences - calculates the first and second differences from the time sequence of measurements to be processed. This may be useful for identifying discontinuities in measurement data.
  • Earth-Centered Earth-Fixed Position and Velocity - calculates the position and velocity of the satellite in the ECEF frame.

Report and graph styles

Several new report and graph styles were added:

  • Measurement Summary by True Anomaly graph, Measurement Summary by Arg of Latitude graph - These two graphs plot when measurements were available as a function of the orbit position and time. These are useful when correlating your measurement availability with key orbit events such as perigee, apogee, and the ascending and descending nodes.
  • Ballistic Coefficient Consistency graph - plots the ballistic coefficient consistency test statistic.

In addition, the LeastSquaresResiduals table, referenced in the Least Squares Residuals reports and graph, was updated to include Emitter Name & Emitter ID. Though these are not displayed in our delivered Least Squares Residuals reports, the information is used in the graphical residual editing capability.

Measurement models

ODTK now allows the use of an STK external ephemeris file (.e) as a measurement source. It treats the position and velocity elements in the file as independent measurements.

The bi-static range model was updated to allow the time tag to be the time of signal transmit (in addition to the already supported time of receipt). We've also added the appropriate partial derivatives to allow the use of bi-static range measurements when solving for transmit or receive station locations.

Variable Lag Smoother

ODTK 6 adds a variable lag smoother (VLS) to our current fixed interval smoother (FIS). The VLS is a sub-object of the filter and allows you to smooth the output of the filter as it runs, producing a near-real-time smoothed solution. You no longer have to wait for the filter run to complete in order to obtain a more accurate solution.

The filter now has the capability to estimate instantaneous maneuvers using two fixed epoch smoothers.

Coordinate frame updates

The default inertial coordinate frame is now the International Celestial Reference Frame (ICRF). Previous releases used the J2000 frame. A new scenario level attribute "SuppressICRF" has been added. When true, this will cause all calculations to be performed in the J2000 frame and the ICRF options to be hidden in the GUI. Old scenarios loaded into ODTK 6 will have the SuppressICRF flag enabled by default. New scenarios created in ODTK 6 will have this flag disabled and will use the ICRF frame. You may optionally change this flag as you see fit on any scenario.

When ICRF is the default inertial frame, ephemeris files from the simulator, filter and smoother will be written in this frame. These files will be stamped as stk.v.9.0 files and will only be readable by STK v9 and later. If you are creating ephemeris files for use in a version of STK prior to v9, set SuppressICRF to true.

The default fixed frame for the Moon is now the Lunar ME frame rather than the Lunar PA frame. This is consistent with the changes in STK 9.

Troposphere models

The SCF troposphere model now allows for the specification of monthly averages for the refraction coefficients.

Supported platforms

Vista is officially supported now.

Windows 2000 is no longer supported. Current customers were notified of this change via a letter earlier this summer.

Initial Orbit Determination

The Herrick-Gibbs IOD method now allows you to use NP Range measurements.

SGP4

ODTK 6 defaults to use the CSSI SGP4 propagator for the Initial State Tool and Generate TLE Utilities, to match STK 9 behavior. Previously it used the AGI SGP4 propagator. The user can still use the AGI SGP4 propagator by setting the STK_USE_AGI_SGP4 environmental variable to "1".

Force Models

The third body perturbations now allow you to specify the source and value of the Gm parameter for each planet. This is consistent with HPOP in STK.

The EGM2008 gravity model has been added.

Previous versions of ODTK contained two versions of each of the gravity files (e.g. WGS84 and WGS84_PN). The _PN versions contained covariance information to drive the gravity process noise models. These two files have been combined to reduce redundancy and a new flag Scenario.EarthDefinition.OverrideGravityProcessNoise has been added. When true, the legacy JGM2-based gravity process noise model will be used regardless of the information in the file. This flag will be set to true automatically when loading any scenario created in earlier versions of ODTK and that also used a gravity file that did not contain process-noise information.

Attitude

A spinning attitude mode has been added which allows for the modeling of satellites spinning at a constant rate where the spin axis is fixed in both the satellite body fixed and inertial axes. This is useful for generating simulated tracking data and observing the effects of the spinning attitude in the measurements.

GPS Models

The GPS object now allows the use of SP3c formatted files (in addition to SP3a). Previous versions only supported SP3a files.

GPS satellites can now have a laser retroreflector attached to them.

Users can now change the L1 and L2 frequencies. This is useful when simulating navigation systems other than GPS.

The simulator can now deviate clock biases. This is controlled by the ErrorModeling.DeviateClocks property.

Run Time performance

Regression test results show that ODTK 6 is approximately 20% faster than ODTK 5.1.4. This may be further improved on a system with multiple processors or cores by setting the OMP_NUM_THREADS environment variable to equal the number of processors or cores available (e.g. on a dual-core system set it to 2). This will not have any improvement on an older system that is using hyperthreading (and we recommend that you actually disable hyperthreading).

Debugging options

The ability to create a Microsoft "minidump" was added to ODTK. If a user is experiencing a crash, AGI tech support may ask you to set the AGI_GENERATE_MINIDUMP environment variable to "1". The next time there is a crash, ODTK will create a file that can be sent to tech support to assist us in trouble-shooting.

Dynamic data updating

ODTK 6 now uses a Data Update Utility (DUU) like STK. The DUU replaces the old UpdateDataFiles.html page under the ODTK Utilities on the Launchpad. The DUU is the mechanism for ensuring that your Earth orientation parameters (EOP), leap seconds, GPS catalog, and solar flux data files can be updated in a timely manner.

The location of the DynamicEarthData, Databases, and DataUpdate directories have been moved out of the Program Files area and are now located in C:\Documents and Settings\All Users\Application Data\AGI\ODTK\6.0. This allows ODTK to be compatible with security rules imposed by Windows Vista.

B3 Tracking data reader

The B3 tracking data reader has been improved for faster performance. It also supports reading and writing a equinox indicator flag in column 76 when processing measurement types 5 and 9.

Version Changes in Tracking Data Interface

The following table shows changes in the tracking data interface between ODTK 5 and the current version:

ODTK 5  ODTK 6 
ODTK.Application ODTK.Application
ODTK5.Application ODTK6.Application
   
AgAttrAutomation5.AgAttrBuilder AgAttrAutomation6.AgAttrBuilder
   
AgMach10_5.AgODObsSet AgMach10_6.AgODObsSet
AgMach10_5.AgODObsSetCollection AgMach10_6.AgODObsSetCollection
AgMach10_5.AgODTrackingIDList AgMach10_6.AgODTrackingIDList
AgMach10_5.AgODRealList AgMach10_6.AgODRealList
AgMach10_5.OLEDBDataSource AgMach10_6.OLEDBDataSource
   
AgOdtkPlugin5.AgOdtkPluginSite AgOdtkPlugin6.AgOdtkPluginSite
   
IAgODProvideTrackingData5.AgODGenericObs IAgODProvideTrackingData6.AgODGenericObs
IAgODProvideTrackingData5.AgODProvideB3TrackingData IAgODProvideTrackingData6.AgODProvideB3TrackingData
IAgODProvideTrackingData5.AgODProvideCobTrackingData IAgODProvideTrackingData6.AgODProvideCobTrackingData
  IAgODProvideTrackingData6.AgODProvideDSNTrackingData
  IAgODProvideTrackingData6.AgODProvideEphemerisTrackingData
IAgODProvideTrackingData5.AgODProvideGenericTrackingData IAgODProvideTrackingData6.AgODProvideGenericTrackingData
IAgODProvideTrackingData5.AgODProvideGeoLocTrackingData IAgODProvideTrackingData6.AgODProvideGeoLocTrackingData
IAgODProvideTrackingData5.AgODProvideGeoscTrackingData IAgODProvideTrackingData6.AgODProvideGeoscTrackingData
IAgODProvideTrackingData5.AgODProvideGPSNavTrackingData IAgODProvideTrackingData6.AgODProvideGPSNavTrackingData
IAgODProvideTrackingData5.AgODProvideILRSTrackingData IAgODProvideTrackingData6.AgODProvideILRSTrackingData
IAgODProvideTrackingData5.AgODProvideLanceTrackingData IAgODProvideTrackingData6.AgODProvideLanceTrackingData
  IAgODProvideTrackingData6.AgODProvideMDPTrackingData
  IAgODProvideTrackingData6.AgODProvideOASYSTrackingData
IAgODProvideTrackingData5.AgODProvideRAWPRTrackingData IAgODProvideTrackingData6.AgODProvideRAWPRTrackingData
IAgODProvideTrackingData5.AgODProvideRINEXTrackingData IAgODProvideTrackingData6.AgODProvideRINEXTrackingData
IAgODProvideTrackingData5.AgODProvideUTDFTrackingData IAgODProvideTrackingData6.AgODProvideUTDFTrackingData
   
AgHtmlServer.AgHtmlServerInitOD50 AgHTMLServerODTK6.HTMLServer
   
HTML Utilities that are run inside ODTK and use HTML Server should instantiate it with:
   window.external.CreateObject("AGI HTML Server")

Capabilities Added and Issues Resolved From the Prior Release

The following table identifies limitations and issues that have been resolved in the current release, as well as new capabilities and improvements that have been added:

For convenience, this table includes all enhancements and resolved issues believed to be significant, including some that are discussed in more detail above.

New Capabilities and Resolved Issues
Tracking No. Description
01083 User can now add events to any time based graph (on by default). Currently the only events are instantaneous and finite maneuvers.
04880 Histogram graphs now respect the number of histogram bins specified in the filter and smoother output properties instead of using a hard-coded value of 22.
05365 An option has been added to the smoother to create a filter-smoother state difference run during smoothing.
16317 The ability has been added to do data filtering based on stage and iteration numbers when reporting least squares run results.
16492 The ability has been added to specify inertial maneuvers using right ascension (RA) and declination angles.
17655 The ability has been added to manually select residuals from a graph and flag them to be rejected the next time the filter is run.
20190 Prior to 6.0 ODTK used CIRA72 flux lag times for all density models. Lag times are now density model dependent in conjunction with STK modeling.
20768 The ability has been added to specify inertial maneuvers using right ascension (RA) and declination angles.
23800 Previously, geometric data such as elevation angle was not reported for GPS SD and DD measurements unless it failed the validation test. Now it will always be reported, which affects the least squares residuals report and reports created using the geometric values from the measurement history table.
26189

Instant and finite maneuver lists on the satellite object now automatically sort their elements using the following criteria:

  1. Maneuver Time
  2. Maneuver Type
  3. Enabled / Disabled status
  4. Name

For instant maneuvers, maneuver time is a centroid time, i.e. the time when Delta-V is applied.

Scripts that manage maneuver lists can no longer use push_back() operations, they should use insert() operations instead. New elements added to the list will be placed into the correct sorted position and not at the end of the list as they were previously.

If a new maneuver has all four fields equal to those of the existing maneuver it will replace the old. This is not a bug but a standard behavior consistent with STL set implementation. To avoid replacing existing maneuvers each new element should be given a unique name.

27936 The ability has been added to save both pseudorange and phase measurements to a RINEX format file.
28205 The ability has been added for the data update utility to download the gpscatalog.txt file whenever it has been updated.
29472 The ability has been added to specify Delta-V impulse for finite maneuvers.
30947 The attribute properties Value, Choices, Count, Item, Range, and Unknown are now case insensitive, which should make script writing easier.
31636 When adding or deleting finite or instant maneuvers using a script or an HTML page the satellite object must be reclicked or the maneuver list dialog will display stale data.
31729 A new attribute named PartialsMethod has been added to the least squares object, with choices of "Full Numerical" and "Encke". The default is "Encke". The Encke method is faster and will speed up least squares runs.
31819 A new chapter has been added to the GPS section of the math specification to describe the computation of GPS navigation solutions.
32059 The ability has been added to the least squares object to estimate tracking measurement biases.
32929

The ability has been added to create custom data editing which includes new attributes at the filter and least squares levels:

     CustomDataEditing.Enabled
     CustomDataEditing.Schedule

The following attributes are duplicated under the scenario object. These attributes do not globally affect measurement processing. They are only applied to raw measurement reporting and saving.

     Measurements.ViewAndSave.CustomDataEditing.Enabled
     Measurements.ViewAndSave.CustomDataEditing.Schedule

The following scenario attributes were removed:

     Measurements.EditingMethods.ThinningTime
     Measurements.EditingMethods.InclusionTimes
     Measurements.EditingMethods.ExclusionTimes

If a scenario is loaded with any of the above deleted attributes set, they will be automatically incorporated into the new Measurements.ViewAndSave.CustomDataEditing schedule. However, scripts setting these values will be broken.

We also modified the Simulator's Schedule, changing the first two columns to say "PrimaryObjects" and "SelectedObject", to match the custom data editing schedule.

We also added ability to select specific (or all) emitters and specific GPS Satellites (as a subset of GPSConstellation) in the simulator's schedule.

We also moved definitions of residual editing sigmas and dynamic data editing to the filter object, using the new attributes:

     SigmaEditing.Defaults.NominalSigma
     SigmaEditing.Defaults.Dynamic.Enabled
     SigmaEditing.Defaults.Dynamic.HighSigma
     SigmaEditing.Defaults.Dynamic.NumRejectToStart
     SigmaEditing.Defaults.Dynamic.NumAcceptToStop
     SigmaEditing.Defaults.Dynamic.InitialHighSigmaDuration
     SigmaEditing.CustomSigmas.Enabled
     SigmaEditing.CustomSigmas.Schedule

Since least squares also used residual editing sigmas, the sigma value is now part of the stages list and is named sigma.

33379 The ability to report and graph classical orbit element uncertainties has been added.
34049 Capability to report and graph the first and second differences of the actual measurements has been added.
34646 A problem was fixed that showed an incorrect state count on restart, when finite maneuver state parameters were added/dropped to an existing maneuver.
36141 Graph annotations no longer require that they reference a field from the database in order to be displayed.
36147 User can set the start/stop time for a graph. Note the start/stop time also limits the data that is fetched from the file.
36383 The capability to edit measurements based on an individual tracker and/or measurement type has been added.
36533 Restart filenames are now unique for restart times at .001 second intervals. Attempting to create restart files for times less than .001 seconds apart will result in overwriting of restart files.
37017 RINEX files that are incorrectly formatted will now produce informative error messages in the message window.
37964 ODTK has been updated to use a combined common propagator using the best of HPOP and astrogator. This is consistent with both of these propagators in STK 9.
38155 Feature has been added to allow an STK ephemeris to be a measurement file.
38254 Tracking file format descriptions have been consolidated into one section of the help system, titled Measurement Formats in ODTK.
38420

The simulator will output a generic obs (.gobs) file as the default tracking data format. The choice of output format is now configurable via the preferences file and via the scripting interface.

Before selecting a new measurement format make sure it is able to handle the desired measurement types. If there are any measurement types a particular format can't handle then these types will be written out in the file Simulated_Excess_Measurements.gobs.

Note that if none of the simulated measurement types can be saved to the specified format, the simulator will not run.

38617 The interface for third body settings now matches the interface found in STK's HPOP propagator. You can now choose the source of the GM values.
38678 A new variable lag smoothing (VLS) capability has been added. One or more VLS objects may be configured to run in conjunction with a filter process producing a smoothed estimate without the need to perform a separate smoothing step.
38753 The attribute name for ForceModel.EarthRadiation has been changed to ForceModel.CentralBodyRadiation, as the central body may be other than the Earth. Backwards compatibility has been retained for scripting support.
39050 The definition of the moon fixed reference frame has been updated to be coincident with the lunar MeanEarth reference frame. The moon fixed reference frame in version 5.1, where it was introduced, was coincident with the principal axis reference of the JPL DE 405. The MeanEarth frame has also been explicitly added to the satellite initial state reference frame options for lunar satellites. Computations of lunar gravitational accelerations are still performed in the lunar principal axis frame.
39051 Support for the International Celestial Reference Frame (ICRF) has been added. The ICRF is now the default inertial reference frame for the Earth and the Sun.
39214 New thinning logic may cause measurements times to change from previous version of ODTK. However, this new logic is more consistent and allows measurements of different types to be thinned on different grids.
39441 The user interface panel for configuring tracking data plug-ins under Tools | Options | Plugins previously only allowed one configurable option per plugin. It now supports the display of multiple options.
39573 Problem fixed in converting inertial position and velocity covariance to the fixed frame when reading in an external ephemeris file that contains a full 6x6 covariance.
39597 ODTK can now correctly read a GPS AUX message and extract the ephemeris and clock information from it. The use of the covariance information is not currently supported.
40096 ODTK now supports reading SP3c files directly for GPS processing.
40683 CBF position and velocity were added to the SatelliteState data base.
40807 The ConcatenateSP3 files tool can now merge more than 20 files.
41020 For bistatic range measurements imported into ODTK, we now support time tags at either ground receive or ground transmit time.
41021 Added new Facility.TroposphereModel.Data.SurfaceRefractivity option "Monthly Averages". With this selected, the user can enter average values for each month, and specify the day of month, and the model linearly interpolates between values.
41160 The NAVSOL tracking data reader was updated to ignore blank lines and other lines that don't conform to the expected format.
41264 Two new graph styles "Measurement Summary by True Anomaly" and "Measurement Summary by Arg of Latitude" have been added. They are useful for visualizing where in the orbit measurements occurred. For circular (or near circular) orbits the argument of perigee is not well defined and therefore the true anomaly moves in a somewhat unintuitive fashion.
41818 The application scope has a new functional attribute called "RunScript" which allows calling an event-driven script.
41900

ODTK uses a third party graphing package to create graphs. ChartFX has been replaced with a new package called ProEssentials. This change provides better support for the display of dates and times on the X axis. The graphs now automatically sense the time and date ranges and adjust accordingly, even when zooming in and out. Resolution is limited to a precision of 1 millisecond. All graph styles have been updated slightly to accommodate the new capabilities.

Users may want to examine their custom graph styles that they have created and change the X axis title from "Minutes after Midnight" to "Time".

41901

The least squares objects can now write out a complete satellite state as part of the .lsrun file. Added new attribute under LeastSquares to allow writing of satellite state during a given LS iteration:

     Output.OutputStateHistory = { "First Iteration", "Last Iteration", "false" }
42126 The location of the DynamicEarthData, Databases, and DataUpdate directories have been moved out of the program files area and are now located in C:\Documents and Settings\All Users\Application Data\AGI\ODTK\6.0. This allows ODTK to be compatible with the security rules imposed by Windows Vista.
42351 The ability to estimate instant maneuvers during the filter process has been added. This capability uses two fixed epoch smoothers with epochs at the time of the maneuver to produce the estimate of the instant maneuver.
42374 A custom function was created to merge the SRP plugin attributes from the scenario file with those specified in the SRP plugin. If the parameter names are the same then the values from the file will be used. If the file contains parameters that are not in the new SRP plugin then they are considered to be obsolete and are dropped.
42448

The "Model Atm Density" and "Total Atm Density Est" parameters in the SatelliteState database have been rescaled. In previous versions the actual values (in kg/m^3) were multiplied by 1.0e12 to rescale them so that the values could be reported without having an inordinate number of leading zeros while using standard floating point notation. This was done because the reports did not support scientific notation. Subsequently, we updated the reports to display in scientific notation, but then the reports and graph styles had to undo the scaling.

The scaling has been removed within ODTK and the standard "Atmospheric Density Total" graph and report styles updated to remove the reverse scaling. Any user specific reports or graphs that use these parameters should be edited to remove the scaling as well.

42456 The functional attribute SiteSolution on GPS receiver objects has been added to the documentation.
42597 ODTK 6 will now run if either the OD-Single or OD-MSS license is present. An OD-Single license is not required if you have a OD-MSS license.
42727 User can save graphs in five different formats.
42737

The graph styles listed below were updated to use the improved exponential scaling on the Y axis. The units are now consistent with the units in the equivalent report style.

	Clock Aging - Satellite
	Clock Aging
	Clock Freq - Satellite
	Clock Freq
	Clock Phase - Satellite
	Clock Phase
	Differenced Clock Aging - Satellite
	Differenced Clock Aging
	Differenced Clock Freq
	Differenced Clock Frequency - Satellite
	Differenced Clock Phase - Satellite
	Differenced Clock Phase
	
42764 New graph for ballistic coefficient consistency was added.
42778 All dynamic and static graphs have been updated so that the X-axis is labeled time. This is consistent with the new graphing capabilities that allow us to display a true date/time axis rather than elapsed time.
42905 If a tracking data provider plugin fails to load, additional information will be displayed (if available) as part of the error message to assist in trouble-shooting.
43190 The capability to estimate the location of the transmitting or receiving facilities has been added to the one-way bistatic range measurement model.
43195

If users created a custom HTML utility based on one of the utilities shipped with ODTK 5 and it has embedded AgUiDatePickerCtrl control they have to change its GUID from:

     <OBJECT id="Time1" classid="CLSID:6434FE55-4F36-431A-A934-3BAD3BB18317" VIEWASTEXT>
          to
     <OBJECT id="Time1" classid="CLSID:1770C669-2CC4-4964-9128-CF69586225E3" VIEWASTEXT>
43454

The GPS Catalog has been updated to the constellation status as of 07/22/2008. Changes include:

  1. Added SVN48/PRN07
  2. Added reassigned SVN23/PRN32
  3. Decommissioned SVN32/PRN01 and SVN37/PRN07
  4. Changed clock type for SVN40/PRN10 from RB to Cs
  5. Added SV Antenna offsets for SVN's 48, 57, 58
  6. Updated group delays using 7/22/08 broadcast message data
43518 The EGM2008 gravity field for the Earth is now provided.
43907 A graph style for plotting the residuals from a least squares run file has been added. The "Least Squares Residuals" style can be used to plot the residuals for any iteration of the least squares run. You can use the data limiting capabilities of the static product builder to limit the data to residuals from a particular iteration (typically the 1st or last one), satellite, tracker, or measurement type.
43913 Herrick Gibbs IOD has been revised to treat NP range the same as range and allow an IOD with NP range plus angles.
43986 The EGM2008 gravity model file now contains covariance information to drive the gravity process noise model.
44007 ODTK now has the capability to produce a mini-dump file by setting the AGI_GENERATE_MINIDUMP environment variable. This file is useful in debugging crashes.
44016 Redundant gravity field data files have been eliminated which were copies of other retained gravity field files but contained additional information to support ODTK gravity process noise generation. The additional information has been added to the baseline files and a new setting has been added to the scenario properties to control the use of the model specific gravity process noise information.
44048 B3 tracking data provider now reads and writes equinox indicator field in column 76. This information is used for measurement types 5 and 9 (RA/Dec).
44050 The integration documentation for the AgAttrAutomation interface has been improved.
44064 The SLR active and inactive site listings have been updated as of 2008.
44080 VB.NET code can now assign one attribute scope to another using an equals (=) sign.
44371 The UI Plugins Framework has been integrated into ODTK.
44456 User can specify font attributes in the style file.
44937 The TDRS Getting Started document was updated to reflect some lessons learned while processing real TDRS data. A section was added that discusses how to convert transponder biases from other OD systems into ODTK.
44984 The user can expand and collapse the white panel tree with one click and can specify if the tree starts out expanded or collapsed.
45111 Interval files may now specify specific GPSSatellite objects (e.g., "Satellite/PRN02") and can even specify emitters ("Emitter/Emitter1"), though there is no utility to support saving emitter names to interval files.
45124

The user has several ways to bring up the "Properties" of an object as follows:

  1. In the object browser window right-click on an object and choose "Object Properties"
  2. In the object browser window double-click on an object. This will create equal widths for column "Name" and "Value" in the properties window
  3. In the object browser window click on an object and hit <Enter>
  4. In the object browser window click on a three-tab yellow icon
  5. In the ODTK window click on View -> Object Properties. Note that the user can bring up multiple properties windows for different objects but ODTK doesn't allows multiple properties windows for the same object.
45156 A laser retroreflector can now be added to a GPS satellite object.
45188 The gross raw data editing capability has been removed as it was never fully functional.
45410 The VLS includes the option to generate a filter-smoother difference file (.difrun).
45412 To support Navigation systems, other than GPS, the L1 and L2 frequencies are now an input under the GPSConstellation object. For now ODTK assumes that all satellites in the constellation use the same frequencies.
45424 If users have created their own style files they will see the colors they expect.
45437 If the user zooms in too far they can undo the last zoom using the toolbar button. The right-click remains unzoom all.
45572 The reporting of modeled atmospheric density has been corrected to use the same atmospheric density model and space weather settings as were in effect when the process was run. In prior versions, the reported density was always computed based on the CIRA72 model. Also, the total density is now reported as equal to the modeled density when atmospheric drag estimation is turned off. In prior versions it was reported as zero. These changes only affect the reporting of density and do not affect the computation of the trajectory.
45606 ODTK 6 defaults to using the CSSI SGP4 propagator for the initial state tool and generate TLE utilities to match STK 9 behavior. Previously it used the AGI SGP4 propagator. The user can still use the AGI SGP4 propagator by setting the STK_USE_AGI_SGP4 environmental variable.
45703 The use of the name "Inertial" as a coordinate frame for the Earth and Sun has been deprecated in ODTK 6. We now explicitly declare this to be J2000 or ICRF. ODTK 5 scenarios that used Inertial frame in conjunction with the Earth or Sun will now show J2000 instead. The only exception to this is the Moon which still supports an "Inertial" frame.
45732 A spinning attitude mode has been added which allows for the modeling of satellites spinning at a constant rate where the spin axis is fixed in both the satellite body fixed and inertial axes.
45802 Fixed a problem in function GetObsSet of VBScript B3 tracking data provider in which pObs.TrackerVector doesn't get reinitialized after reading type 9 obs. This problem caused the filter to reject other types of measurements after processing type 9 measurements.
45889

A new application has been added to the ODTK suite, called "AGI ODTK Data Update 6" (ODTK DUU). This application is launched from the Utilities menu. ODTK DUU l allows Windows XP and Windows Vista users to update dynamic files available from the agi.com ftp site. ODTK DUU replaces the former HTML utility: UpdateDataFiles.htm.

DUU provides the ability to manually update selected dynamic files, or to enable an AGI developed system service which will check for updates on a daily, weekly or monthly basis at a time of the users preference.

File update preferences for the various ODTK DUU files are saved out to a file.

45946 A warning message has been added and the Help documentation has been updated to alert the user that when simulating L1 Phase, L2 Phase and deviating tropospheric refraction, TropoNoiseScaling should be = 1 or filter residuals will be rejected.
45970 ODTK now allows a "sleep" option when writing messages to the message viewer. See the ODTK Scripting Guide for more details.
45971 Dynamic graphs now have a consistent appearance (line colors and marker styles) with the graphs from the static product builder.
45998 The atmospheric graph density reports will now display the density values even if drag is turned off.
46007 The simulator ErrorModeling.AddGPSReceiverClockProcessNoise property has been replaced by the ErrorModeling.DeviateClocks property which, when enabled, deviates all clock parameters, both initial conditions, and process noise.
46235 The LinkFreqs list used in the IAgODGenericObs interface has been updated to ensure that all frequencies passed in are consistently in Hz. Previously versions of ODTK used units of MHz when passing in frequencies for TDRS measurements. The only tracking data reader capable of reading TDRS measurements was the UTDF reader and it has been updated to reflect the changes. End-users should not see any differences. The documentation for the IAgODGenericObs interface has been updated appropriately.
46324 Plugin samples have been moved to <INSTALL_DIR>\CodeSamples\Extend\ODTK\.
46331 The ODTK Scripting Guide has been updated to include Matlab examples and more examples in Perl.
46383 The state difference tool will write out to the .difrun the full Target/Reference covariance if the Target/Reference runfile was generated with the full covariance. This will allow the proper population of some cross-correlations into the database tables and in particular the proper calculation of Satellite URA.
46418 Users can now rename a product in the static product builder using the F2 key.
46466

To fix a problem with URE calculations, a SaveCrossCorrelations parameter has been added to the CreateDifference functional attribute parameter list:

Example VBS call:
bSuccess = ODTK.CreateDifference(outputfile, referencefile, targetfile, bLastMeasOnly, ddate1, ddate2, saveCrossCorrelations)

Scripts containing a call to this attribute need to be updated. The saveCrossCorrelations parameter should be set to true when URE calculations are needed. If URE calculations are not needed this parameter should be set to false to save storage space and speed up reporting and graphing.

46664 A problem was fixed where finite maneuvers caused least squares to diverge when the fit span included a finite maneuver (even if the apriori finite maneuver was modeled correctly). It will now process across the maneuver correctly. Note however that least squares still does not estimate finite maneuver parameters.
46898 A sample solar radiation pressure plugin implemented in CSharp was added to the list of example plugins.
46902 If GPSSatellite objects exist in a scenario, they will be available as target satellites in the GenSimSchedule30.htm utility page to allow for realistic simulations for tracking constellation satellites.
47189 Least squares objects now support graphical residual editing.
47724 The scale field in the graph style editor has been removed. In previous versions this functionality was used to convert the X axis from minutes after midnight to hours or days. ODTK 6 supports a much improved time axis behavior that makes this capability obsolete. If you were using it to scale the Y-axis variables, you can continue to do so by editing the variable and using the arithmetic field to perform the desired scaling.
47757 When attempting to transfer filter results to satellites that had been removed from the scenario, the application would crash. This has been fixed.
47798 Setting the AddProcessNoise flag to true will cause the force model and measurement model parameters to be randomly deviated throughout the simulation regardless of the settings of the other flags. Reference the simulator error modeling help section for a detailed explanation.
47808 Errors in the reporting of finite maneuver biases in the finite maneuver history and finite maneuver summary reports have been corrected. The errors were generally small and resulted from the writing of bias values corresponding to times slightly different than the time associated with the data in the output file.
47859 A problem in the smoother where instant maneuver process noise was being zeroed out if a finite maneuver started or ended at the same time as the instant maneuver has been corrected. This caused the smoother to estimate zero corrections to the instant maneuver and resulted in bad smoother estimates on the early side of the instant maneuver.
47860 A problem with the integration of the spacecraft mass during a finite maneuver was corrected. The problem only affected cases where at the filter start time one finite maneuver is active and a second maneuver on the same spacecraft is ending. Under this situation, the integration of mass for the active maneuver was erroneously turned off.
47901 A reporting problem which resulted in certain finite maneuvers not being reported in the finite maneuver summary report has been corrected. The issue only affected reports of simulator results for finite maneuvers which were not estimated, started during the simulation time interval and ended at or beyond the stop time of the simulation.
47903 A problem was fixed with the GenSimSchedule30 utility, where while the first set of intervals relating to ground-based access would be correct, when running more than once the new set of intervals would be computed using an additional non-relevant constraint possibly yielding fewer access periods.
47921 When ICRF is the default inertial frame, ephemeris files from the simulator, filter and smoother will be written in this frame. These files will be stamped as stk.v.9.0 files and will only be readable by STK v9 and later. If you are creating ephemeris files for use in a version of STK prior to v9, set SuppressICRF to true.
48015 A sample Ui Plugin VB.net project is included with the ODTK install. This utility copies Custom Data Editing schedules from one object to another. The user needs to build it and register it for it to be visible in ODTK. Start by reading the Readme.txt file in the C:\Program Files\AGI\ODTK 6\Plugins\ODTK\CustomDataEditUiPlugin directory.
48034 The Cira72 density model was modified to avoid a floating point error at high altitudes.
48106 A problem was fixed in which the smoother ignored disabled finite maneuvers when smoothing back over several rough files.
48183 A problem was fixed in which the simulator was not correctly interpreting disabled inclusion interval entries in the custom tracking intervals schedule.
48382 The reported full tracking strand for 2L CA pseudo-range measurements now contains the GPS satellite.
48721 When modeling 2L CA Pseudo-range measurements and estimating GPS satellite orbits, there is no longer a dependency on the GPSConstellation source file.
48759

Finite and instant maneuver lists have two new methods:

	InsertNew("ByManeuverTypeName")

and

	find("ByManeuverName")

Refer to the ODTK Scripting Guide for more details and usage examples.

48874 GPS Catalog has been updated through the launch of SVN 49/PRN01 on Mar 24, 2009

Transition issues

This section presents transition issues of importance to the user, including operational tips and caveats to help smooth the path to successful use of ODTK, as well as a list of limitations and unresolved issues of which the user should be made aware.

Transition matters

It is suggested that you review the following list of cautions, workarounds and operational tips before using the current version of ODTK:

Updating custom Report and Graph styles for ODTK 6

Users that have created their own custom report and graph styles in ODTK 5 will need to update them to work with ODTK 6. Since ODTK 5 report and graph styles are not compatible with ODTK 6, a tool has been provided to convert your ODTK 5 custom styles to ODTK 6 styles. The tool is called ODTK_Style_Update50To60.pl, and is found in your install area under AppData\Scripts. This tool will convert all report and graph styles in the designated directory and store them to a new directory. It is recommended that you use a different folder for output, so that your ODTK 5 styles are not overwritten. After converting the report styles, we recommend that you verify them using the procedure below.

Changes in Database Table Contents

From release to release, the contents of database tables used in the definition of report and graph styles may change, usually through the addition of new elements to the record definitions. These changes can impact the content of custom report styles created by the user. Before attempting to use a report style generated with ODTK 5 (or a prior version) with ODTK 6, a Verify Database operation should be performed and a new copy of the report style should be saved to a new directory. Overwriting the old style will cause that style to work incorrectly with the prior version of ODTK. The Verify Database operation is performed by highlighting the report style in the Static Product Builder, clicking on the Edit button then right clicking on the Database Fields and selecting Verify Database. After the verification completes, save the style.

Scripting Guide Updates

Please see the ODTK Scripting Guide for changes to scripting interfaces and additional scripting examples.

Functional Attribute Changes

The functional attribute CreateDifference() now takes an additional parameter. See the description for Item 46466 above.

Obsolete Scenario Attributes

As a result of updating our data thinning and data editing capabilities (items 32929 & 45188), the following scenario attributes are now obsolete in ODTK 6.0:

     - Measurements.EditingMethods.ThinningTime
     - Measurements.EditingMethods.GrossRawData
     - Measurements.EditingMethods.InclusionTimes
     - Measurements.EditingMethods.ExclusionTimes

If you load a scenario file with these attributes set, we will attempt to convert them (except GrossRawData) and populate these new scenario attributes:

     - Measurements.ViewAndSave.CustomDataEditing.Enabled
     - Measurements.ViewAndSave.CustomDataEditing.Schedule

Note that this will only have the effect of applying the editing methods to the viewing of measurements using the reporting tool, or to the saving of measurements to a file. It will not affect the measurements processed by the filter or during a least squares run; to do so, you will need to duplicate this table for the filter or least squares object.

Scripting support for these attributes no longer exists.

Obsolete Satellite and Facility Attributes

As a result of updating our data thinning and sigma editing capabilities (REQ 32929), the following satellite and facility attributes are now obsolete in ODTK 6.0:

	- MeasurementProcessing.ThinningTime
	- MeasurementProcessing.ResidualEditing.NominalSigma
	- MeasurementProcessing.ResidualEditing.Dynamic.Enabled
	- MeasurementProcessing.ResidualEditing.Dynamic.HighSigma
	- MeasurementProcessing.ResidualEditing.Dynamic.NumRejectToStart
	- MeasurementProcessing.ResidualEditing.Dynamic.NumAcceptToStop
	- MeasurementProcessing.ResidualEditing.Dynamic.InitialHighSigmaDuration

These attributes are ignored when loaded from files from a previous version, and scripting support for these attributes no longer exists.

The thinning time is now defined for processing measurements in the filter or least squares objects under the new attributes:

	- CustomDataEditing.Enabled
	- CustomDataEditing.Schedule

The residual editing sigma and dynamic residual editing parameters have been moved to the filter object under the new attributes:

	- SigmaEditing.Defaults.NominalSigma
	- SigmaEditing.Defaults.Dynamic.Enabled
	- SigmaEditing.Defaults.Dynamic.HighSigma
	- SigmaEditing.Defaults.Dynamic.NumRejectToStart
	- SigmaEditing.Defaults.Dynamic.NumAcceptToStop
	- SigmaEditing.Defaults.Dynamic.InitialHighSigmaDuration
	- SigmaEditing.CustomSigmas.Enabled
	- SigmaEditing.CustomSigmas.Schedule

Since the nominal sigma attribute has been removed from the satellite object and was needed for Least Squares runs, the attribute is duplicated in the Least Square Stages List and will default to a value of 3:

	- Sigma

Obsolete Product Builder Attributes

As a result of updating our graphing capabilities the following Product Builder attributes have changed in ODTK 6.0. For every data product there was an Outputs.Export attribute that contained Options. The Options attribute has been removed because it was redundant. All the attributes under Options still exist but are now parented directly under Exports. For example, assuming you wanted to change the output file name for a product named "Azimuth Residuals". The resulting attribute path from ODTK 5.1 was

	ODTK.ProductBuilder.DataProducts.Azimuth Residuals.Outputs.Export.Options.FileName
but in ODTK6 it is now
	ODTK.ProductBuilder.DataProducts.Azimuth Residuals.Outputs.Export.FileName

Unresolved issues affecting the current release

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

Unresolved Issues
Tracking No. Description
07071Tracker 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.
07630Setting the Display Product option to false on a graph data product is ignored when an Export option is chosen.
10186Users should not name objects using class names like Filter, Smoother, Simulator. Refer to the "VBA to VB.NET Migration" section of the ODTK Help.
23349LaunchPad doesn't format dates in local format, it always uses MM/DD/YYYY even if machine is configured to show dates as DD/MM/YYYY.
26002It is not possible to Export the HTML generated by the ViewScenario.htm utility to Microsoft Excel, even though the option is offered.
29439To avoid abnormal terminations that may occur when FLEXlm code is run with Windows Data Execution Prevention enabled, you need to change the DEP settings: Open the "System Properties", click on the "Advanced" tab and click on "Performance,� Settings�" button. This will bring up a dialog with three tabs. Click on the "DEP" tab and set the option to: "Turn on DEP for essential Windows programs and services only". You may need to restart the computer after that.
30517The 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. The user must dismiss the panel and pull it back up to get the correct value.
31034After a long predict, the covariance is quite large. A very large measurement update can drive the filter covariance negative.
31802A 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.
31917 The Static Product Builder does not update the Data Product List filename when it is loaded from a script. The workaround is to close and reopen the Static Product Builder or browse to the correct directory manually.
32139State File To SP3 utility limits output to GPSSatellites named PRN01, PRN02, etc.
36839If ODTK aborts or runs out of disk space then any active runfile is not saved in a valid state. This issue can not be corrected without a big impact on processing speed (opening and closing the file and opening to append). The user is advised to monitor disk utilization and plan for large runfiles from ODTK to avoid disk space issues.
38689When attempting to integrate an orbit in low altitudes, such as < 90 km, the integrator may perform poorly and hang. This problem may be overcome by changing the integration method or integrator settings.
42045The SB range measurements ignore the optional tracker vector information. If you have a B3 file with type 8 or 9 measurements that are supplying the tracker position then you will get bad answers if you have your tracker satellite set up with its ephemeris source set to " Meas File Embedded Trajectory ".
42672Dynamic Earth Data does not use file find paths. Do not attempt to change the location from the default location.
45226ODTK does not support saving and loading of files that use multi-byte character sets.
47065The legend will not appear for a graph if there are more than 20 sets/lines of data being displayed. This is a limitation in the graphing package, designed to ensure that the graph contents are still visible when many items are being displayed. Users can still determine which line belongs to what data set by hovering their mouse over it and waiting for the Tool Tip to be displayed that shows the identity of the line.

Changes introduced in ODTK 6.0.1

The following information applies to ODTK 6.0.1.

What's New in ODTK 6.0.1

The sections below describe the following new features and capabilities of ODTK 6.0.1:

CCSDS Compatibility

ODTK has been upgraded to support the CCSDS standard formats for the following items:

  • Input and output of ephemeris in the CCSDS 502 (OEM) format.
  • Input of measurements in the CCSDS 503 (TDM) format. We do not currently support saving measurements out in TDM format yet.
  • Input of initial states in the CCSDS 502 (OPM) format.

Initial Orbit Determination Improvements

The IOD object now supports generating an initial state using GPS NAVSOL measurements.

Least Squares Improvements

The least squares objects now have the capability to generate ephemeris for any iteration and include predicted ephemeris as well. This makes it easier to compare solutions between the least squares outputs and the filter or smoother.

Ephemeris Improvements

You can now specify the output coordinate frame for any of the ephemeris files. Previously all outputs were in an inertial frame.

Tracking Data Updates

Two new tracking data formats have been added:

  • Consolidated Laser Ranging Data Format (CRD) for laser ranging data.
  • CCSDS Tracking Data Message (TDM).

We have also added two new reference frames for the specification of optical measurements. Both reference frames are based on FK5.

  • MEME of UTC 00:00 is defined by the mean equator and mean equinox at zero hours on the UTC day of the observation epoch.
  • TETE of UTC 00:00 is defined by the true equator and true equinox at zero hours on the UTC day of the observation epoch.

The generic observation interface now supports passing in laser retro reflector IDs to support tagging of observations with the appropriate ID. There is also a flag to indicate whether the offset location from the center of mass has already been accounted for or not.

Graphing

You can now specify explicit limits for the secondary Y axis as part of the graph style.

We have added new graph styles for

  • 1, 2, and 3 sigma bounds for the position and velocity uncertainty
  • Measurement Summary by Altitude
  • Satellite Classical Element Uncertainties (i)
  • Finite Mnvr Thrust Magnitude Pct and Direction
  • Finite Mnvr Thrust Magnitude Pct
  • Finite Mnvr RIC Thrust States
  • Tracker Bias Consistency

Ease of Use

The list editing dialog box (e.g. maneuver lists, measurement statistics, etc) has been enhanced to make it easier when working with long lists. The box is now larger and it highlights the names of the items to help make them distinguishable from their contents.

You can copy maneuvers by highlighting an existing maneuver and pressing the copy button.

You can select multiple rough files at once when configuring the smoother inputs.

Pressing return on a field in the Object Properties panel will put it into edit mode.

The static product builder will automatically look for and load a data product list (.dpl) file that has the same name and location as the current scenario.

ODTK will detect and prompt you to delete duplicate measurement data files.

You can sort the measurement data files and simulator tracking schedules by clicking on the column headings.

The Scripting Guide has been converted to HTML format to make it easier to copy and paste the code examples. It's now fully integrated into the HTML help system.

The FilePath HTML utility has been updated to allow changes to the file paths in the data product list. This makes it easier to make mass changes to the data product list input files.

Restart File Management

When saving a scenario to a new directory or renaming a scenario, the restart directory and records will automatically be copies or renamed as necessary. You also have the option to turn off backing up the restart records (this can speed up your filter runs if you have a large restart directory).

Transition matters and unresolved issues

Backwards compatibility code for ODTK versions 4.1.0 has been removed. You will not be able to read older versions of scenarios, run files, rough files, generic observation files, or restart records from these older versions.

The HTML server in ODTK has been updated for consistency with STK. The following methods have been renamed:

OldNew
GetRegRegistryGetKeyValue
checkFileFileExists
checkFolderFolderExists
getCountDataArrayCount
getLineDataArrayGetTextItem
readFileDataArrayReadTextFromFile
AddToArrayDataArrayAddTextItem
createFileDataArrayWriteTextToFile
getFileInfoFileGetInfo
formatDateTimeFormatDateTime
formatSizeFormatSize
getHtmlFileHttpGetTextFile
addFolderAddFolder
getZipFileHttpGetBinaryFile
unZipFile60ZipUncompressFile

Users should review any HTML utilities they have written and update them with the new method names.

Capabilities added and issues resolved in ODTK 6.0.1

The following table identifies limitations and issues that have been resolved in the current release, as well as new capabilities and improvements that have been added:

New Capabilities and Resolved Issues in ODTK 6.0.1
Tracking No. Description
17444

The capability to identify components of NAVSOL residuals in graphs and reports has been provided.

18692

The IOD object's GPSNavSolution method can now use CA Nav Sol measurement types directly. Set the IOD attribute Method.GPSObsType to "CA Nav Sol". This assumes the scenario is using a measurement file which contains GPS Navigational solutions.

21593

Users can now specify the Min/Max for the secondary Y axis in their graph styles.

26399

During a Least Squares run we can now output ephemeris during every iteration, the final iteration or the initial and final iterations, and include predicted ephemeris.

33180

Users can now select multiple rough files at once when configuring the smoother input.

34647

Writing of ephemeris data in the CCSDS 502 Orbit Ephemeris Message format is now supported.

37010

The initial state tool now loads states from CCSDS OPM files.

38827

The lower limit for Facility minimum elevation has been set to -90 deg.

42255

As of version 6.0.1 we support a subset of the data types provided by the CCSDS TDM format, consisting of azimuth, elevation, right ascension, declination, range, Doppler (file keyword DOPPLER_INTEGRATED), and DSN Doppler (file keyword RECEIVE_FREQ).

46648

New dynamic graph styles were added for new measurement types.

47124

New facilities now have unique tracking IDs when added to any tracking system.

47250

The property page now allows use of the return key to edit the selected field.

47284

When first opened, the static product builder will automatically look for a Data Product List (*.dpl) file with the same name and location as the scenario. If found, it will load it as the default .dpl.

47294

The Custom Data Edit UI Plugin has been updated to allow copying of residual editing schedules.

47594

The capability to specify the coordinate frame for the output ephemeris file for Filter, VLS, Smoother, LeastSquares, and Simulator has been added.

47600

ODTK will now automatically detect when duplicate measurement files are loaded into a scenario and display a dialog prompting to delete them.

47601

The Scenario measurement files list can now be sorted in the GUI by clicking on the column headings. This makes it easier to organize your input files.

47639

The filter-smoother consistency test may fail (i.e. show large inconsistencies) when running the filter past the time of the last measurement. The consistency test is defined in section 6.4 of the equation report. Note that this test becomes undefined when the smoother covariance is equal to the filter covariance. Formally this is the case during the filter prediction interval after the last measurement. Practically, however, differences occur between propagating the smoother state and covariance backwards from the end of the prediction interval vs propagating the filter state forwards. These differences include the accumulation of round error and the forward/backward non-transitivity of the Gauss-Markov state parameters (see section 10.1 of the equation report). These differences, though small, may result in a large test value. This behavior is discussed further in the ODTK math specification document ODTK Orbit Determination: Theorems & Equations.

47907

The ability to report Finite Maneuver history for non-estimated maneuvers has been added.

48268

Sigma editing codes are no longer applied to measurements that are only being modeled (e.g. set to Force Reject) during a filter run.

48333

The user can now sort the SelectedObject and SelectedTrackingStrand columns in the Simulator's CustomTrackingIntervals schedule.

48705

The GPSSatellite object has two new functional attributes: ReplaceICRFWithJ2000() and UpdateCentralBody(). See functional attribute documentation for details.

48811

When using the GPSSource_To_SimRun.htm tool the overridden start time is used if it has been set.

48819

Checking of data validity in the IRI2001 directory, which is used for ionosphere modeling, is now more robust.

48880

A new built-in tracking data provider has been added to read the Consolidated Laser Ranging Data Format (CRD). Currently, only 2-way passive (retroreflector) range (and normal point) is supported.

48918

ODTK now verifies that a Restart directory exists in the directory where the scenario will be saved, allowing the current Filter and Simulator restart records to be saved to the new location.

49116

If an entered satellite ID is in use by another satellite, the error message now indicates the name of that other satellite.

49163

The instant maneuver tool has been updated to include J2000 and ICRF as available coordinate frames for the maneuvers.

49168

The Scripting Guide has been converted to HTML format for ease of use in cutting and pasting example code.

49287

The HTML server and the installed HTML utilities have been updated to use an API consistent with STK's HTML server. The following methods have been renamed:

OldNew
GetRegRegistryGetKeyValue
checkFileFileExists
checkFolderFolderExists
getCountDataArrayCount
getLineDataArrayGetTextItem
readFileDataArrayReadTextFromFile
AddToArrayDataArrayAddTextItem
createFileDataArrayWriteTextToFile
getFileInfoFileGetInfo
formatDateTimeFormatDateTime
formatSizeFormatSize
getHtmlFileHttpGetTextFile
addFolderAddFolder
getZipFileHttpGetBinaryFile
unZipFile60ZipUncompressFile

Users should review any HTML utilities that they have written and update them with the new method names.

49288

Two new reference frames have been added for the specification of optical measurements. "MEME Of UTC 00:00" is defined by the mean equator and mean equinox at zero hours on the UTC day of the observation epoch. "TETE Of UTC 00:00" is defined by the true equator and true equinox at zero hours on the UTC day of the observation epoch. Both reference frames are based on FK5.

49313

The issue has been corrected in which the scripting interface did not return the correct time for the stop time of a smoother's input rough file unless the user had previously queried the start time as well. The stop time will always be valid regardless of whether the start time has been queried or not.

49465

The IOD transfer function now returns True if it completes successfully. It was previously returning False.

49467

A minor error which resulted in maneuvers based on acceleration history files for non-Earth orbiting spacecraft to potentially show an incorrect maneuver reference frame in the object properties has been corrected. This error did not affect the actual execution of the maneuver.

49471

Binary files version stamped prior to 4.1 will no longer be supported in ODTK. This includes run files, generic observation measurement files, rough files and restart files.

49487

The RunSTK and RunSTKX HTML utilities have been updated to create STK satellites using ephemeris from the least squares and variable lag smoother objects.

49513

The Smoother now displays in the message viewer the correct runfile name when the scenario OverrideNameOption is selected.

49514

Graphical residual editing now works for a satellite named "Satellite".

49557

A problem copying and pasting ODTK objects in which if the object you were copying had children and grandchildren, the grandchildren would be attached to the wrong objects, has been fixed.

49561

A problem in which cancelling graph generation caused the application to crash has been fixed.

49571

ODTK html pages now show object names sorted alphabetically.

49640

The ability to output accelerations for non-inertial coordinate frames to the ephemeris files was added.

49682

The FilePath HTML utility has been updated to also display input files used by the Static Product Builder. User's can now easily update the locations of the input files used in their data product list.

49694

If a workbook has the message viewer column width set to zero then it will appear as if the message viewer is not updating as the filter runs. ODTK will now detect the invalid column width and force it to be a minimum of 3 pixels wide. The user can then adjust the width as necessary.

49695

A least squares fit over a period containing an instantaneous maneuver would fail to model the maneuver correctly. This has been corrected.

49700

A typo in Eq. 25.56 for the 'RC Tropo model has been fixed in the ODTK math specification document ODTK Orbit Determination: Theorems & Equations.

49730

The default for the Filter ProcessNoiseTimeInterval was changed from 2 minutes to 1 minute to ensure accurate interpolation of LEO ephemeris files.

49731

The ability to read the CCSDS 502.0-B-1 OEM ephemeris message has been added.

49732

The smoother was not generating a "double point" at the time of a instantaneous maneuver when the output ephemeris was set to use a Uniform Time Grid.

49773

It is now possible to turn off the automatic backing up of restart records by setting the filter or simulator attribute Restart.BackupRestartRecords to false. This will improve run times when using very large restart directories.

49947

The user interface for editing lists of items has been improved to make it easier when working with long lists (such as maneuvers). The following enhancements were made:

  1. The list editing dialog box will now size it self automatically to try to accommodate the entire list (up to 90% of the available vertical screen space).
  2. The Element line in each list is now bold. This makes it easy to see where new items in the list begin as you scroll through a long list. It will only be bold if the list item has children underneath it.
  3. If a list Element has a child called Name, then use its value in column 1 of "Element x" row. Most importantly, this will display the Name of each of the maneuvers as the first line in each maneuver in the list. This makes it easier to find a maneuver when you are scrolling through the list, especially if the list has been collapsed.
  4. The list will obey the "Start Expanded" flag from the white panel. If set, the list dialog will show the list as collapsed.
  5. If the list is collapsed and the user edits a combo box, the list is will not automatically expand the entire tree. It will remember which items are collapsed and keep them that way when redrawing the list.
50051

It is now possible to add rejected residuals to a filter or LS ResidualEditing schedule. This can be used to remove bad measurements by changing the Action from "ForceReject" to "Ignore".

50079

The instantaneous and finite maneuver lists now have a copy button. Users can create copies of existing maneuvers by selecting the maneuver and pressing copy.

50088

The unsupported measurement types "DF Phase Range" and "DF SD Phase Range" are no longer available as measurement types for GPS satellites.

50103

The following graph styles have been added to the install:

  • Measurement Summary by Altitude
  • Satellite Classical Element Uncertainties (i)
  • Finite Mnvr Thrust Magnitude Pct and Direction
  • Finite Mnvr Thrust Magnitude Pct
  • Tracker Bias Consistency
  • Finite Mnvr RIC Thrust States
50104

Position and velocity 1 and 3 sigma uncertainty graph styles have been added.

50115

The UI Plugins documentation has been added to the ODTK Help.

50156

A laser retro reflector tracking id has been added to the Retroreflector object. This id has been connected to the LaserRetroIDs list property of the IAgODGenericObs interface. In addition, a ModelCM property has been added to the IAgODGenericObs interface to tell the laser ranging measurement models if CM offset has already been applied to the measurement.

50174

The ability to limit a static product to only use a Nav Sol measurement type now works.

50175

An error in the computation of a coordinate transformation involved in the modeling of finite maneuvers has been corrected. The error occurred for the case where the nominal maneuver was in the purely -Z direction in the user selected maneuver frame, maneuver corrections were being estimated and the uncertainty in the maneuver was specified in terms of magnitude or percent magnitude and direction. This error resulted in the state corrections to the finite maneuver acceleration being applied in the wrong direction during orbit propagation. The nominal maneuver acceleration was applied properly.

50176

An error in the computation of a coordinate transformation involved in the modeling of instant maneuvers has been corrected. The error occurred for the case where the nominal maneuver was in the purely -Z direction in the user selected maneuver frame and the uncertainty in the maneuver was specified in terms of magnitude or percent magnitude and direction. This error resulted in the velocity change due to the maneuver being applied in the wrong direction during orbit propagation.

50318

When a satellite with a transponder is being tracked by a facility (or another satellite) using the Skin Track ranging method, the transponder bias will no longer be applied to that measurement model.

When a satellite with a transponder is being tracked by a facility using the Retroreflector ranging method, the transponder bias estimate will no longer be updated using that measurement.

If you have an old scenario which processes NP Range measurements, and it is using a transponder and antenna to mimic a retroreflector, you will need to replace them with a retroreflector object. The NP Range model only looks for valid retroreflectors, ignoring the tracker's ranging method.

50329

An issue was fixed so that histograms are now available when running the filter in simultaneous mode with NAVSOLs.

50331

The CustomDataEditUiPlugin solution has been upgraded to open with VS2008.

50469

An issue was fixed in which graphs that were zoomed in on and then exported to .emf format became corrupted.

50509

ODTK automation (scripting) interface was returning "C++" style constants for boolean values: 0 for false and 1 for true. This works fine for most of the scripting languages like JavaScript and Perl where false is defined as 0 and true is defined as anything not 0.

However, in VBScript "false" is 0 and "true" is -1 and comparing the boolean result with the literal constant "true" will always result in false.

For example:

if ODTK.SomeObject.SomeBoolean then ' Always works correctly
....
else
....
end if

if ODTK.SomeObject.SomeBoolean = true then ' DID NOT work correctly - would always evaluate to false - now fixed and works correctly
....
else
....
end if


if ODTK.SomeObject.SomeBoolean = 1 then ' Erroneously used to work but will not work anymore
....
else
....
end if
ODTK users are strongly advised to review their VBScript code for any instances of comparison of booleans returned from ODTK to "true" constant. JavaScript, Perl, VB.NET are not affected by this bug.
50620

A problem with the UTDF tracking data reader has been fixed. Tracker IDs in the data files were interpreted as a signed byte rather than unsigned. This caused the wrong tracker ID to be reported to ODTK whenever the ID was greater than 128.

50671

A display problem where dynamic graphs would not necessarily show a valid time scale for some period of time at the start of a filter run, has been corrected.

Changes introduced in ODTK 6.0.2

The following information applies to ODTK 6.0.2.

What's New in ODTK 6.0.2

The sections below describe the following new features and capabilities of ODTK 6.0.2:

Measurement Models

Two new measurement models have been added:

  • Space-based Doppler
  • Ground FDOA-dot

The GEOLOC format was updated to accommodate the new Ground FDOA-dot measurements.

The double-differencing HTML utility now preserves measurements that were not used as part of the double-differencing process. The "leftover" measurements are written out in the measurement file and can be processed by the filter if desired.

Satellite Ephemeris Generation

New covariance options have been added to Satellite.Ephemeris generation. An option to output the covariance as either a Position 3x3 or a Position Velocity 6x6 has been added. An option to disable Covariance output altogether has also been added.

Graphing

The Static Product builder now allows users to specify the size of the graph when exporting it to file. This is done on a per-product basis.

Capabilities added and issues resolved in ODTK 6.0.2

The following table identifies limitations and issues that have been resolved in the current release, as well as new capabilities and improvements that have been added:

New Capabilities and Resolved Issues in ODTK 6.0.2
Tracking No. Description
24373

Space-Based Doppler has been added as a measurement type.

50727

The Data Update Utility has been updated to show the actual date/time of the user's files if they are newer than the ones on the AGI web site. It also allows users to force an update from the AGI web site and overwrite their local files, even if the local files are newer.

50729

The GPS Catalog has been updated through Sep 01, 2009 and includes the launch of SVN/PRN 50/05 and the decommission of 25/25.

50744

ODTK Java Automation Sample files have been included in the ODTK install area.

50754

The ability to generate and process double differenced LA phase observations has been added.

50755

The capability to write raw observations which were not used in the generation of the double differences during the generation of double differenced measurements to the double difference output file has been added.

50867

A new dynamic graph style for GPS LA DD Phase residuals has been added.

50997

The capability to associate space-based laser ranging observations with specific retroreflectors on the target satellite has been added. The retroreflector id has been connected to the LaserRetroIDs list property of the IAgODGenericObs interface. In addition a ModelCM property has also been added to the IAgODGenericObs interface to tell the laser ranging measurement models if CM offset has already been applied to the measurement.

51087

A problem was corrected where a CustomTrackingIntervals schedule or a CustomDataEditing schedule would sometimes get corrupted when an object referred to by that schedule was removed from the scenario.

51119

An error which resulted in the Z component of finite maneuvers which were input in the form of a Delta-V being set to the input value of the X component has been corrected. The previous error resulted in improper execution of maneuvers of this type where the X and Z components of the maneuver were intended to be different.

51154

An issue in which graphs exported via scripting were created too small when ODTK was minimized has been corrected. The default size for graphs created this way is 700 x 400 pixels.

51240

New covariance options have been added to Satellite.Ephemeris generation. An option to output the covariance as either a Position 3x3 or a Position Velocity 6x6 has been added. An option to disable Covariance output altogether has also been added. The ordering of the ephemeris generation controls within the white panel has been changed to follow that of the filter/smoother.

51267

The capability to process FDOA Dot measurements from a space based emitter to two ground stations has been added.

51272

The output size of an exported graph can now be specified.

51296

Support for GFDOADot measurements has been added to the GEOLOC format.

51324

An issue in which maneuvers were not being accounted for during generation of LS predicted ephemeris has been fixed.

51328

LS ephemeris output has been improved as follows:

  • LS ephemeris files no longer contain points prior to start of fit span when using Uniform output grid
  • LS ephemeris files no longer contain duplicate points at measurement times when using Filter output grid
  • LS ephemeris files now contain ephemeris points for all maneuvers, regardless of output grid
51393

An error in the computation of the white noise variance for ephemeris position and velocity measurements has been corrected. The error occurred when the STK ephemeris file (.e) being used to specify the position/velocity information also contained covariance information. It was further required that the scenario level setting, Measurements.EmbeddedWNSigmas.Use, be set to true for the error to affect estimation results.

51454

A problem which caused a memory leak when generating graphs or reports from runs that contain Atmospheric Density Estimates has been fixed.

51494

A problem which caused the smoother to terminate ODTK abnormally has been fixed.

51723

Emitter ID lists were not being reset properly in the report run files, so if emitters were renamed the reports may not have shown the current names. This has been corrected.

51734

A correction to the construction of the estimation state space has been made to prevent the addition of measurement bias states for tracking facilities and satellites not identified in the TrackerList of the filter. The previous error resulted in an unnecessarily large state space under certain conditions but did not adversely affect numerical results.

Changes introduced in ODTK 6.0.3

The following information applies to ODTK 6.0.3.

What's New in ODTK 6.0.3

The sections below describe the following new features and capabilities of ODTK 6.0.3:

Windows 7 Compliance

With the release of version 6.0.3, ODTK is Windows 7 compliant.

Least Squares

The least squares object now allows the user to specify the epoch for the solution. The options include Beginning, End, Midpoint, or User Defined.

Graphical Residual Editing

When performing graphical residual editing, the user can now specify whether the selected points should be ignored or rejected.

Plugin Tracking Data Interface

The generic observation interface IAgODGenericObs now allows a RangeModulus parameter to support ambiguous range models.

GPS Measurement Processing

The IOD object will now work with dual frequency navigation solutions (DF NavSols). Previously it only supported CA NavSols.

A capability to adjust the white noise variance associated with navigation solution measurements based on dilution of precision has been added. A configured GPS constellation and knowledge of the GPS satellites used in the generation of the navigation solution are required. The white noise sigma used for measurement deweighting can be scaled individually for each component of the navigation solution or a common scaling for all components equal to the solution PDOP can be used.

The GenerateNavSolution.html now allows *.yyo files as input in addition to *.RNX files (where "yy" represents a two-digit year).

Right Ascension and Declination Measurements

The capability to simulate and process ground and space based right ascension and declination measurements has been added for cases where the target object is in orbit about either the Moon or the Sun.

Capabilities added and issues resolved in ODTK 6.0.3

The following table identifies limitations and issues that have been resolved in the current release, as well as new capabilities and improvements that have been added:

New Capabilities and Resolved Issues in ODTK 6.0.3
Tracking No. Description
15172

The simulator now gracefully handles the condition when the orbit error scaling value is zero.

50124

User can now Reject or Ignore points using graphical editing for Residuals.

50391

The CAgODGenericObs Object and IAgODGenericObs Interface now have methods to save and load a range modulus to support ambiguous range measurements.

50734

The capability to run an IOD GPSNavSolution using DF Nav Sol measurements was added.

50756

A capability to adjust the white noise variance associated with navigation solution measurements based on dilution of precision has been added. A configured GPS constellation and knowledge of the GPS satellites used in the generation of the navigation solution are required. The white noise sigma used for measurement deweighting can be scaled individually for each component of the navigation solution or a common scaling for all components equal to the solution PDOP can be used.

50923

The Measurement Residual report edit flag is now consistently set to "Invalid Tracker" when the filter detects that measurement statistics for the given tracker/measurement type are not entered. Previously, it sometimes would be set to "Unknown".

51049

The random seed for the simulator needs to be a positive integer. Previous versions of ODTK allowed an input of 0, but would internally change the value to 1. With 6.0.3, a random seed input of 0 produces a validation error. For old scenarios that contain a random seed of 0, the 0 is changed to 1 on load and a warning message is printed.

51450

The emitter frequency is now written to GEOLOC formatted tracking data files during the simulation of space based TDOA, FDOA and TDOA Dot observations. Previously, the emitter frequency was written as either -1 or 0 which resulted in the frequency from the emitter properties being used during processing of simulated measurements. An error would have occurred had the emitter frequency property been changed between the simulation and processing of measurements.

51753

Ephemeris created from a TLE using ODTK.Application.InitialStateTool are now appended with the .e file extension.

51810

GenerateNavSolution.html now allows *.yyo files as input in addition to *.RNX files (where "yy" represents a two-digit year).

52080

Any satellite not being estimated is a candidate tracker satellite for Least Squares.

52114

The SolarFlux method on the plugin light reflection interface was incorrectly calculating the solar flux at the satellite. Internally the correct flux value was used by HPOP, but the correct value was not being returned via the method.

52439

There were problems when starting multiple copies of ODTK via the CreateObject COM interface. The second copy would not actually start up and you would instead have references to the first copy. This has been corrected and calls to CreateObject will instantiate a new copy of ODTK each time.

52448

When running ODTK from scripts in automatic mode set "uiApp.UserControl = false" to prevent ODTK engine from displaying interactive message boxes. However, this will not control third-party modules and install related issues coming from operating system libraries (i.e. missing registry keys, missing DLLs, etc...)

52522

When calling the state differencing tool via a script, the start and stop times of the difrun file may have been incorrect. This has been corrected.

52760

An issue where if a satellite's NumForWarning = 0 and NumForAlert > 0, the number of rejected measurements counter would never be reset to zero, which could have resulted in the OnAlert script being called prematurely, has been fixed.

52812

A problem was fixed to correctly allow for the changing of Gauss-Markov measurement bias states associated with TDRSS measurements at a Restart time.

52815

An issue in which ODTK would crash if it couldn't open the Message Viewer log file for writing has been fixed.

52867

The tracking data reader for DSN TRK2-34 format files has been updated to read data files which contain the primary label and K header information. Prior versions of ODTK could only read TRK2-34 files for which the header information had been removed.

53056

An issue in which the stage epoch did not start at a grid time when outputting ephemeris in "Uniform" mode in Least Squares has been fixed.

53315

An error in the construction of generic strand names for ground based right ascension and declination measurements has been corrected. The error resulted in the reporting of tracking strands using the numeric tracking id of the ground station instead of its name and resulted in the inability to graphically edit ground based right ascension and declination measurements.

53359

Graphs now respect the flag in the graph style and don't display the Time of the First Point annotation if the style indicates it should not.

53634

An issue in which FrequencyRampMaps may have been used incorrectly if files in the list were not in the ascending time order in scenarios using DSN tracking data with multiple measurement files in the list has been fixed.

53639

An error in the Gauss-Markov parameter update algorithm for user specified changes in the constant bias term in the ballistic coefficient through the filter update Gauss-Markov parameter interface has been corrected. Prior to the correction, the value of the ballistic coefficient would remain unchanged when the filter was restarted.

53657

The capability to simulate and process ground and space based right ascension and declination measurements has been added for cases where the target object is in orbit about either the Moon or the Sun.

53680

A crash while displaying maneuver markers on a graph has been fixed. The problem occurred only if you had more than five satellites with maneuvers and at least one satellite had four or more maneuvers.

53932

A time display issue for graphed measurements where measurement times were being displayed incorrectly when they had a small non-zero millisecond value has been fixed.

54083

The Residuals Versus Reference utility now automatically sets the proper ephemeris file format according to the satellite ReferenceEphemeris.EphemerisFileFormat attribute.

54283

An error in the data processing logic used by the filter while in simultaneous mode to Force Reject data via an operator entered interval in the Filter.CustomDataEditing list has been corrected.

54323

An error in the Fixed Interval Smoother which could occur when smoothing over multiple filter outputs has been corrected. The error was limited to the case where multiple rough files were used, the filter was run with a StopMode of either StopTime or TimeSpan and the measurement time grid was such that one or more measurements were present on the next to final filter time and no measurements were present at the final time. When triggered, the error resulted in an incorrect smoother covariance result.

54327

The consistency test formula format has been corrected in the Ballistic Coefficient Consistency graph style file.

54367

An error with using the incorrect half-life value for plugin SRP parameters during measurement update modeling has been corrected. Originally the half-life of the internal SRP model was being used. The problem did not affect the half-life used during time updates.

54429

An error in the handling of frequency information in the single differenced FDOA measurement model has been corrected. In prior releases, emitter frequency information supplied via the tracking data interface was ignored and the frequency specified in the emitter settings was used instead. The emitter frequency information supplied via the tracking data interface now properly overrides the emitter settings.

54536

A problem has been corrected where the filter would crash while trying to process measurements for a satellite that had a reference ephemeris and was not being estimated. Now the measurements will be properly ignored.

54539

The minimum elevation angle limits for the Herrick-Gibbs and Gooding Angles Only IOD methods can now go as low as -90 deg (the previous limit was -15 deg). This allows IOD's using space based angles to process measurements below the tracking satellite.

Changes introduced in ODTK 6.0.4

The following information applies to ODTK 6.0.4.

What's New in ODTK 6.0.4

ODTK 6.0.4 is primarily a maintenance release to address various issues identified internally and by our customers. The new features are:

Support for Angle Measurements

Support has been added for angle measurements (both azimuth/elevation and X/Y) in the DSN TRK 2-34 file format. However, we were unable to thoroughly test this capability because we have not been able to obtain any real world DSN tracking data that actually contains angle measurements.

RINEX file Antenna ID Numbers

ODTK now supports the ability to read antenna ID numbers from a RINEX file and will use them to identify which antenna is receiving GPS measurements. The antenna IDs must be integer numbers - alphanumeric IDs are not supported.

Solve for GFDOA Bias

The ability to solve for a bias in the Ground Frequency Difference Of Arrival (GFDOA) measurement model has been added.

New Dot Measurement Models

New TDOA and TDOA dot measurement models are provided for the case where two emitters transmit a signal through a common satellite to a single ground station.

Capabilities added and issues resolved in ODTK 6.0.4

The following table identifies limitations and issues that have been resolved in the current release, as well as new capabilities and improvements that have been added:

New Capabilities and Resolved Issues in ODTK 6.0.4
Tracking No. Description
54584

DSN Sequential Range measurement processing now respects the scenario level one-way/two-way representation flag. Previously it always assumed a two-way representation.

54844

An issue was corrected where the wrong double smoother ephemeris point was written at the end of a maneuver end time when using an .accelhist file and writing the smoother ephemeris using the uniform grid option.

54884

An error in the transformation of covariance information between inertial reference frames during the import of external ephemeris data has been corrected. The error was most noticeable for cases where the reference frame of the covariance differed significantly from the default inertial reference frame of the central body.

54908

ODTK now supports angle measurements in DSN TRK 2-34 formatted files.

54940

LS code now allows graphical residual editing of residuals with either the Edit or Ignore options.

55083

Gauss-Markov states associated with finite maneuvers have been added to the restart GM lists in the filter and simulator. This allows for estimate sigma and half-life values to be updated at restart points.

55248

An issue has been fixed in which Graphs/Reports that depended on SimPertSatelliteState table (like "Sim Sat Perts") would not work and could possibly cause the application to hang.

55324

ODTK stores maneuvers (finite and instantaneous) as an ordered list sorted by Time, Type, Active Flag, and Name. If you have a script that changes any of these parameters for a maneuver then you must call the ReOrder() function on the list. Otherwise the functions that operate on the list such as FindByName() or RemoveByName() may not work correctly.

55347

The Least Squares sigma editing capability was incorrectly using the residual standard deviation as it's editing criteria rather than the residual RMS. In some cases this prevented the least squares iterations from converging if the measurement residuals had a large mean value (for that iteration) resulting in a standard deviation that was much smaller than the RMS. The measurements could then be prematurely edited out.

55903

An issue was corrected with the Least Squares white panel display when running a satellite with the sun specified as the central body. The LS Output.OrbitState.CentralBody display property and the CoordFrame CBName display property now correctly display the 'Sun' as the central body.

56057

The Rinex reader was updated to parse the Antenna Id string in the header. If the string begins with a series of digits then those digits are converted into a numeric antenna id that is passed along in the measurements. This allows processing of GPS data from multiple antennas.

56090

ODTK would try to check out both a multi-satellite license (ODMSS) and a single satellite license (ODSNGL). This problem affects users who have both licenses on the same PC or network licenses of each type. ODTK would check out more licenses than it needed, reducing the number of available licenses to the users.

ODTK will now look for a ODMSS license first. If it does not find an ODMSS license it will look for ODSNGL license.

56177

An issue has been corrected in which when loading an HPOP satellite from STK into ODTK the X Position element of the state vector did not load properly and was set to zero.

56377

ODTK can now import satellite files from STK 9 that use the 2-body, J2, or J4 propagators.

56461

New TDOA and TDOA dot measurement models are provided for the case where two emitters transmit a signal through a common satellite to a single ground station.

56479

An option to model a Ground FDOA bias was added. The option defaults to false.

56506

An issue has been corrected in which ODTK would terminate while running simulator when specifying a measurement that did not apply to space based emitters.

56785

Least Squares was modified to write out residuals and statistics when LS fails after the first iteration due to an unrealistic state solution.

56842

An issue has been fixed in which a scenario with a simulator object in it and many possible tracking strands (many trackers defined in the scenario) would take a minute or longer to close the scenario or exit ODTK.

Online Help Resources

The current version of ODTK is shipped with the following online help resources:

The ODTK Help System

The ODTK Help system appears in the Microsoft HTML Help Viewer, which uses components of the Microsoft Internet Explorer to display help topics and navigational tools. The latter are accessible from the following tabs:

  • Contents - Click on the book and page icons to find the topic of interest.
  • Index - Scroll down the list or begin typing the name of the index item in the text box. When the item you are seeking appears in the list, double-click it or highlight it and click the Display button. If the item is found on more than one help page, a window listing the applicable pages will display.
  • Search - Type in the word or phrase for which you wish to search. To specify an exact phrase, enclose it in double quotes; otherwise, any page containing all of the words in the phrase (not necessarily contiguous) will be listed. After typing in the search term, either press the Enter key or click the List Topics button.
  • Favorites - This tab lets you bookmark help topics to which you might want to refer to frequently. Clicking the Add button places the name of the currently displayed help topic in the list. To delete a topic from the list, select it and click the Remove button.

Context-Sensitive Help

F1 Help for OD Attributes

To display context-sensitive help for a property of an OD object, select it in the Object Properties window for the object and click the F1 key.

Help Buttons for Report and Graph Windows

Help buttons are available for the Static Product Builder, the Dynamic Product Selector, the Graph Designer and the Report Designer. Click these buttons for context sensitive help on the functionality in question.

Printable (PDF) documents

Several printable (PDF) documents accompany this version of ODTK, including a set of tutorials (Getting Started with ODTK), a scripting guide, and documents explaining the mathematical and scientific background of ODTK. To access these documents, go to the manuals page.