Setting up a Square Root Information Filter

Top  Previous  Next

The Square Root Information Filter is a different formulation of the standard EKF, where the square root of the information matrix (the inverse of the covariance) is propagated instead of the covariance. This formulation of the filter improves the stability and robustness of the filter in cases of poor observability or poor conditioning of the covariance.

 

To begin configuring a Square Root Information Filter estimator in FreeFlyer, add a SquareRootInformationFilterOD object to your Mission Plan using the Object Browser. After double-clicking on the new object, you will see the "Estimation Model" page of its object editor. From this page, you can set initial options such as the maximum allowable residual sigma, the step size for propagating the filter, and whether or not to maintain a history of measurements that have been processed.

 

Estimation Model Page of the SquareRootInformationFilterOD Object Editor

Estimation Model Page of the SquareRootInformationFilterOD Object Editor

 

From this page you can also control the initial epoch for the filter, either by explicitly setting the epoch or using the epoch of a Spacecraft object. If the epoch is defined explicitly, the Epoch Details editor will be available. See Parsing Dates and Times for more information on working with the Epoch Details editor.

 

Epoch Details Editor for the SquareRootInformationFilterOD Object Editor

Epoch Details Editor for the SquareRootInformationFilterOD Object Editor

 

From this page you can also choose whether or not to enable the square root information smoother to perform smoothing on the filtered states. For information on configuring a Square Root Information Filter with a Smoother, see Setting up a Smoother.

 

You can also create and configure a SquareRootInformationFilterOD object through FreeFlyer script. The syntax example below shows how to create the object and set its initial options.

 

// Create and set up the Square Root Information Filter:

SquareRootInformationFilterOD SquareRootInformationFilterOD1;

SquareRootInformationFilterOD1.MaxAllowableSigma = 6;

SquareRootInformationFilterOD1.StepSize = TIMESPAN(60 seconds);

 

// Set initial filter epoch:

 

// Specify epoch from Spacecraft

SquareRootInformationFilterOD1.InitialFilterEpochDefitionType = 0;  

SquareRootInformationFilterOD1.SetInitialFilterEpochFromSpacecraft(Spacecraft1);

 

// ... or ...

 

// Define the epoch explicitly

SquareRootInformationFilterOD1.InitialFilterEpochDefitionType = 1;  

SquareRootInformationFilterOD1.InitialFilterEpoch = TIMESPAN(25364.5 days);

 

Note: As of FreeFlyer 7.3, the default timing precision mode is nanosecond precision mode. For older Mission Plans that have not yet been converted from millisecond precision mode, the syntax for working with epochs and calendar date/time strings is different. See the timing precision mode page for more information.

 

Once this initial setup is complete, continue configuring your OD system by:

 

Defining the A Priori States

Defining the Measurement Model

Defining Thrust Events

Defining the Properties to Estimate

Including Tracking Data

 

 

See Also


SquareRootInformationFilterOD Properties and Methods