Output

The ODTK filter has output controls for data archiving, display, output to the smoother, and creation of STK ephemeris files for display and file operations.

Data archiving

Choose from the available Data Archiving options.

Display output controls

You can set the following display output control options:

Display Output Controls
Parameter Description
EveryNMeasUpdates Enter a number to indicate how many sets of measurement updates (azimuth, elevation, range, and doppler) to skip before displaying the next set in the dynamic display windows. For example, to display every fifth set of measurement updates, enter 4.
EveryNTimeUpdates Enter a number to indicate how many time updates to skip before displaying the next one in the dynamic display windows. For example, to display every fifth time update, enter 4.
ShowPassTimes Choose whether or not the filter, as it is running, provides information about when it will process the next pass of data. When processing GPS or other multisatellite scenarios, these messages can be overwhelming, and so you may want to turn them off.
OutputClockReductionUpdates This option is mainly for debug and validation. If set to true, ODTK writes output from the Covariance Reduction Update algorithm to the State History file as a Measurement Update. The default is false.

ClearMsgLog

Set the ClearMsgLog attribute to true to clear the FilterLog file of old entries before the filter writes a new entry.

Smoother data

The following options control the creation of a filter output file for the smoother.

SmootherData Options
Option Description
Generate Set to true to have filter output data written to the specified file (see below). ODTK saves the output data for the smoother in a file with the extension .rough. This file, which is necessary if you want to run the smoother, constitutes the input for the smoother.
Filename Specify the path and filename of the file to which filter output data for the smoother is to be written. Click the current value to display a file selection window. The default name for this file is <Scenario name>_<Filter name>.rough, and its default location is <USER HOME>\Smoother.
TimeMode Set this to either FilterSpan or SetTimeSpan. If you choose FilterSpan, then the Smoother creates data for the entire span of the filter run and stores it in the .rough file. Alternatively, you can choose SetTimeSpan and set a StartTime and a StopTime (defaults are the filter start and stop times). Then the .rough file will only contain information between the specified times, and the smoother will only process information between those times. Typically, the latter option is used to exclude data from the early stages of the filter run.

STK ephemeris files

Configure the STKEphemeris attribute to write the filter output to a file in your Ephemeris directory during the filtering process. The file is assigned a default name based on the name of the satellite:

Sat_<SATELLITE NAME>_Fil_<FILTER REF TIME>.ext

where the FILTER REF TIME is one of the following:

  • ProcessStart - filter start time
  • ProcessStop - filter stop time
  • PredictStart - filter stop time
  • PredictStop - prediction end time

and where ext = "e" when using STK Ephemeris format and "oem" when using CCSDS 502 format.

The filter ephemeris file may also contain the position or position and velocity covariance information.

If you set Predict.Generate to false, PredictStop is the filter stop time.

SP3 ephemeris files

Configure the SP3Ephemeris attribute to reformat the output ephemeris and clock data into an SP3 file. One file is generated for each Constellation object for which ephemeris and clocks were estimated.

The SP3Ephemeris attribute only applies to scenarios containing one or more Constellation objects where Constellation.SVEstimated states include the ephemeris and clock.

You can generate the SP3 data over:

  1. The process interval only
  2. The predict interval only
  3. The process and predict interval

Data over the process interval requires that STKEphemeris be generated over the process interval and that clock data be added to the process run file.

Data over the predict interval requires that the STKEphemeris be generated over the predict interval.

The granularity for the STKEphemeris may be different than the SP3 ephemeris.

The output file name is in the form:

<GNSS Name>_<Process Type>_yyymmdd_hhmmss.sp3

where

<Process_Type> = “Truth”| “Filter| “Smoother”
yyymmdd_hhmmss refers to the start time of the SP3 file in Scenario.Units.DateFormat system.

An example file name is:

GPS_Filter_20120601_120000.sp3

Debug

The Debug attributes control whether or not ODTK will dump filter internal data to a text file. Such a file can become quite large very quickly depending on state size and the number of steps taken during a filter run.

Debug.Matrices

You can enable or disable filter output, recorded at each time update and measurement update, for each of these options: filtered state, covariance, state error transition, measurement partials, and filter gain matrices. The first part of the file shows the state contents, each state name, the state object name, and the units of the state parameter. The values are in state units. The times are written in UTCG date and time format. You can relate the matrix names directly to the filter equations in Chapter 5 of ODTK Orbit Determination: Theorems & Equations. PHI and Pss designate the state transition and process noise matrices, respectively. Matrices are written as N rows and M columns. For measurement type values, see the entry for MeasureType in the Help topic Tracking Data File Providers.

To use debug matrices, set the Generate attribute to true and specify a Filename to hold the filter state and covariance information. A sample of a debug matrix text file accompanies this help system. It uses the following state notation:

  • m_Xkk - state prior to time update
  • m_Xk1k - state at a measurement time prior to processing the measurement
  • m_Xk1k1 - state after processing a measurement

Debug.Eigenvalues

The Eigenvalues attribute enables logging of determinants and eigenvalues of filtered covariance matrices. You can relate the matrix names directly to the filter equations in Chapter 5 of ODTK Orbit Determination: Theorems & Equations.

To write eigenvalues and determinants of each filter covariance matrix to a file, set the Generate attribute to true and specify a file name.

The accompanying sample of an eigenvalue text file uses the following notation:

  • m_Pkk - covariance prior to time update
  • m_Pk1k - covariance at a measurement time prior to processing the measurement
  • m_Pk1k1 - covariance after processing a measurement

As shown in the sample, when there is a time update step, time step information is written as TDT minutes after midnight. The current time is for the state before being moved to the predict time. The times in the first line of the sample are the same, indicating that you are looking at the initial covariance. State Size is an indication of how many eigenvalues will be written for a matrix.

Then ODTK writes the determinant and the eigenvalues of the matrix in state units. For state units and original covariance values, create the filter Matrix debug file.

When ODTK processes a measurement, it provides the measurement time and internal measurement type designation in the output.

For large state sizes, you should be discreet in using the option to dump eigenvalues to a file, since there will be a considerable amount of output, and calculating the eigenvalues will slow the process considerably.