The Variable Lag Smoother (VLS)

The VLS object is represented in the Browser and in the ODTK toolbar by the icon. The VLS is a computational object which attaches to a Filter computational object in the object browser. More than one VLS may be attached to a Filter object.

The execution of VLS objects occurs in conjunction with execution of the Filter. The execution of VLS objects is controlled by two settings: an attribute of the Filter (ProcessControl.EnableVLS) which controls if any attached VLS objects are executed in conjunction with the Filter and the VLS attribute (ProcessControl.Generate) which controls the execution of a particular VLS.

The following VLS process control settings can be viewed and/or edited in the Object Properties window:

VLS ProcessControl Properties
Property Description
Generate If true and the parent filter setting ProcessControl.EnableVLS is also true, the VLS will be executed in conjunction with the Filter execution.
Formulation The VLS is constructed as an array of fixed epoch smoothers with epochs placed on selected filter nodes. Select the fixed epoch formulation to be used within the VLS:
  • Frazer - maps observation residuals from the current filter epoch back to the fixed epoch associated with the smoothed estimate. This form is very computationally efficient since it does not require any matrix inversion operations.
  • Carlton-Rauch - maps filter state corrections from the current filter epoch back to the fixed epoch associated with the smoothed estimate. This form does require matrix inversions but may be more numerically stable than the Frazer form under certain conditions.
UseMaximumLag Use a maximum lag completion criterion for the fixed epoch smoother estimates. The lag is defined as the time between the epoch of the fixed epoch smoother and the current filter epoch. It is recommended to always use the maximum lag completion criterion to avoid the possibility of the fixed epoch smoother estimate never reaching completion.
MaximumLag Fixed epoch smoother estimates are considered to be complete when this amount of time has elapsed between the epoch of the fixed epoch smoother and the current filter epoch when the fixed epoch smoother estimate and UseMaximumLag is set to true.
UseCovarianceReduction Use a covariance reduction completion criterion for the fixed epoch smoother estimates. The covariance reduction of the fixed epoch smoother estimate is measured as largest relative change in a diagonal element of the smoothed state error covariance matrix.
MinimumCovarianceReduction Fixed epoch smoother estimates are considered to be complete when the covariance reduction associated with N consecutive accepted measurements are all below this threshold. Covariance reduction is measured as largest relative change in a diagonal element of the smoothed state error covariance matrix. A covariance reduction of 0.001 would therefore mean that the largest relative change in a diagonal element would be 0.1%. The value of N is set via the attribute NumMeasForCovarianceReduction.
NumMeasForCovarianceReduction The number of consecutive accepted measurements for which the MinimumCovarianceReduction threshold must be satisfied in order for a fixed epoch smoother estimate to be considered complete.
MinimumOutputSpacing Specify the minimum desired time between smoothed states for output. The VLS can produce output on any node where filter output is available, but is not required to produce output on all nodes. Specify a value of zero to produce output on all filter nodes. If a value greater than zero is specified, then filter nodes are skipped to produce the desired minimum spacing. Additional nodes are not introduced to achieve the exact spacing specified. Maneuver times (instant maneuver centroid times and finite maneuver start and stop times) will always be included even if they violate the specified minimum output spacing.
OutputFullHistory

If false: the VLS output will consist of the results from fixed epoch smoothers which have met at least one of the specified convergence criteria. The output will terminate at the first node which does not meet any of the convergence criteria.

If true: the VLS output will consist of the results from all fixed epoch smoothers regardless of if they have met any of the specified convergence criteria. The output will terminate at the end time of the filter.

OrbitTypeDivergenceCheck Enables a divergence monitoring check which warns the operator if the smoother and filter orbit states represent different types of orbits (one elliptical orbit and one hyperbolic orbit). By default, this check is enabled. Certain situations, such as a transition between a closed orbit and an escape trajectory, will benefit by the disabling of this check for smoothing operations. Note that smoothing operations are not suspended under this check as they are for the fixed interval smoother. This is due to the fact that smoothed ephemeris points in the VLS are generated independently of one another allowing the VLS to recover from locally divergent conditions.

The output attributes for the VLS are the same as the output attributes for the smoother object.