Error Modeling

The simulator attempts to create a set of realistic measurements by applying different deviations to initial conditions of satellites and measurement biases, and by adding noise to measurements based on the defined measurement statistics for each station. ODTK provides an ability to control which of these deviations are applied. If no deviations are applied, the resultant measurements should provide zero residuals when run through the filter (depending on the precision of the tracking file to which the measurements are saved).

The following table lists the error modeling options. In addition, you can assign scaling factors to the attributes that you choose to deviate.

Error Modeling
Parameter Description
NoDeviations If set to true, no deviations are applied by the simulator, the resultant measurements should yield zero residuals, and none of the parameters below are available (setting this parameter to true is equivalent to setting all of the other parameters to false).
DeviateOrbits If set to true, the initial orbit state from the satellite is deviated by taking random gaussian draws against the orbit covariance in an RIC frame. The resultant orbit is then used as the 'truth' in the simulator. If set to false, no initial orbit deviations are applied.
DeviateDensity If set to true, the initial atmospheric density correction is set to a gaussian random draw against the internally calculated density correction sigma. This will affect the resultant truth ephemeris of each satellite. If set to false, no initial density deviation is applied. This setting only applies to the deviating of the initial correction and this correction will decay towards zero, in time, as a function of the density model half-life. Application of force model random errors throughout the orbit are controlled by the AddProcessNoise parameter. Deviations are made only if the density parameter estimate flag is enabled.
DeviateBCoeff If set to true, the initial ballistic coefficient, B, correction is deviated by taking a gaussian random draw against the B initial sigma. This will affect the resultant truth ephemeris of each satellite. If set to false, no initial B correction is applied. Note that this setting only applies to the deviating of the initial correction and that this correction will decay towards zero, in time, as a function of the B model half-life. Application of force model random errors throughout the orbit are controlled by the AddProcessNoise parameter. Deviations are made only if the ballistic coefficient estimate flag is enabled.
DeviateEmpiricalForces If set to true, initial estimate for each estimated model parameter (A0, A1, A2) is deviated by taking a Gaussian draw against that parameter’s initial sigma. This will affect the resultant truth ephemeris. If set to false, no initial corrections are applied. Note that this setting only applies to deviating the initial correction and that correction will decay toward zero, in time, as a function of the parameter half-life. As with drag and solar pressure, application of random errors throughout the orbit are controlled by AddProcessNoise parameter.
DeviateSolarP If set to true, the initial solar pressure coefficient correction is set to a gaussian random draw against the Cp sigma. This will affect the resultant truth ephemeris of each satellite. If set to false, no initial solar pressure deviation is applied. Note that this setting only applies to deviating the initial correction and that this correction will decay towards zero, in time, as a function of the solar pressure half-life. Application of force model random errors throughout the orbit are controlled by the AddProcessNoise parameter. Deviations are made only if the solar pressure estimate flag is enabled.
DeviateTranspDelay

If set to true, the initial transponder delay correction is set to a gaussian random draw against the transponder delay sigma. This effect shows up in modeling the measurements. If set to false, no initial transponder delay deviation is applied.

Note that this setting only applies to the deviating of the initial correction and that this correction will decay towards zero, in time, as a function of the transponder delay model half-life. Application of transponder model random errors forward in time in the simulation are controlled by the AddProcessNoise parameter.

Deviations are made only if the transponder delay estimate flag is enabled.

DeviateRetroDelay

If set to true, the initial retroreflector delay correction is set to a gaussian random draw against the retroreflector delay sigma. This effects the modeling of measurements. If set to false, no initial retroreflector delay deviation is applied.

Note that this setting only applies to deviating the initial correction and that this correction will decay towards zero, in time, as a function of the retroreflector delay model half-life. Application of retroreflector model random errors forward in time in the simulation are controlled by the AddProcessNoise parameter.

Deviations are made only if the retroreflector delay estimate flag is enabled. In practice, retroreflector delay is usually well known and therefore rarely estimated.

DeviateMeasBiases If set to true, each facility's initial measurement bias is deviated by a gaussian random draw against the corresponding bias sigma. This effect shows up in modeling the measurements. If set to false, no measurement bias deviation is applied. Note that this setting only applies to the deviating of the initial correction and that this correction will decay towards zero, in time, as a function of the measurement bias model half-life. Application of measurement bias model random errors forward in time in the simulation are controlled by the AddProcessNoise parameter. Deviations are made only if the measurement bias estimate flag is enabled.
DeviateTropoBiases If set to true, and if a facility's troposphere bias estimate flag is set to true, a deviation is added to the troposphere model value based on random deviations using the facility's troposphere sigma. This effect shows up in modeling the measurements. If set to false, no measurement bias deviation is applied. Note that this setting only applies to the deviating of the initial correction and that this correction will decay towards zero, in time, as a function of the troposphere bias model half-life. Application of measurement bias model random errors forward in time in the simulation are controlled by the AddProcessNoise parameter.
DeviateManeuvers If set to true, the initial components of each estimated maneuver are deviated by gaussian random draws based on the type of uncertainty. This will affect the truth ephemeris of a given satellite. If set to false, no maneuver deviation is applied. Note that this setting only applies to deviating the initial correction. Application of force model random errors throughout the orbit are controlled by the AddManeuverProcessNoise parameter.
AddProcessNoise

If set to true, process noise deviations across the simulation time span are added to the state estimates for force model parameters (ballistic coefficient, density correction, solar pressure), and measurement model parameters (transponder delay, measurement biases, accelerometer scale factor, and troposphere bias). If set to false, no process noise is added.

Note that, if set, process noise will be added independent of whether the initial condition of that parameter was deviated (e.g. if AddProcessNoise = true, and DeviateBCoeff = false, process noise deviations will be added to the B coefficient correction).

This parameter does not control process noise for either Maneuver or Clock states. Maneuver state process noise is controlled by the AddManeuverProcessNoise parameter. Clock process noise is controlled by the DeviateClocks parameter.

AddManeuverProcessNoise If set to true, process noise is added to the state estimates for finite maneuver biases. These biases are present in the state only if the Estimate flag is set to true in the definition of the finite maneuver. If set to false, no process noise is added.
AddMeasWhiteNoise If set to true, a random gaussian draw is applied to each measurement based on the corresponding white noise sigma in the measurement statistics. If set to false, no white noise correction is applied.
DeviateStationLocations If set to true, the simulator will randomly deviate the facility locations for those stations in which the facility locations are to be estimated.
DeviateAntennaLocations If set to true, the location of the antenna phase center is deviated by gaussian random draws against the corresponding sigma values.
DeviateClocks If set to true a random Gaussian draw is added to the initial state of each clock parameter (phase, frequency, and aging) based on the clock parameter sigma error. In addition, deviations are added in time using the clock stochastic error model.
DeviateMeasTimeBias If set to true, the measurement time tag for this tracker is biased consistent with the MeasTimeBias stochastic model for that tracker.
DeviateAccelerometers If set to true, the initial values of biases and scale factors of accelerometer sensors are deviated by Gaussian random draws against the corresponding sigma values.
DeviateGlobalDensity If set to true, initial deviations of estimated global atmospheric density model parameters are generated by taking a random gaussian draw for each estimated parameter. If set to false, no global atmospheric density model parameter deviations are applied.
AddGlobalDensityProcessNoise If set to true, process noise is added to the state estimates for global atmospheric density model parameters. These parameters are present in the state only if the ProcessControl.GlobalAtmosphericDensityEstimation Mode is set to Estimate. If set to false, no process noise is added.
RandomSeed The integer used as a seed for simulating random distributions.

Error Scaling

In addition to opting whether or not to deviate a value, you can apply a scale factor to the deviation. The default ErrorScaling value is 1, or 1.00000. This is a sigma multiplier. When a value is deviated (see above), the sigmas normally used to create the initial deviation are multiplied by the error scaling factor.

As an illustration, suppose you want to put a lot of noise into the simulated tracking data to see how the filter will respond given "optimistic" measurement biases. For example, suppose you want to increase all measurement biases by 50%. To do this, simply change the ErrorScaling factor in the simulator to 1.5, and all measurement biases used by the simulator will be increased 50%. After you run the simulator, the Sim Tracker Initial State report will show the sigma values actually used in the simulation.

NOTE: The satellite's drag model attributes include DensityCorrSigmaScale. This scale is applied when using the simulator as well.

Force Sequence Positive

The user has the option to steer the simulated stochastic sequences for some state parameters so as to keep the "total estimate" for that parameter positive. This includes the satellite density, the satellite ballistic coefficient, the satellite solar pressure (Cp and K1), the transponder bias, and laser retroreflector delay parameters. The "total estimate" means the addition of the "constant" value with the current error estimate. Steering the sequence to be positive makes sense physically, but steering also results in a sequence that may be non-random and possibly violates the statistical specifications of the sequence itself, complicating one's ability to interpret the results based on the simulation.

Prior to this option being added to ODTK, these parameters were always steered to be positive. With the addition of this option the default for new scenarios is to not steer these parameters. Scenarios built prior to this option will still default to enable the bounds checking. Note that the steering algorithm assumes that the initial total estimate is positive. If it is not positive odd sequences may be simulated.

ODTK 6.5