Online measurement rejection #127
Labels
Kind: New feature
This is a proposed new feature
Priority: high
Status: Final review
Issue at Review phase of the quality assurance process
Topic: Orbit Determination
Milestone
High level description
This feature provides users with the ability to automatically reject orbit determination measurements (range and Doppler measurements) from being processed into the orbit determination Kalman filter based on prefit or postfit residuals that meet certain user-specified criteria. Specifically, users can set criteria based on either a maximum value for one component of the residual vector, or a multiplier of the Z score of each component of the prior residuals. By rejecting measurements that meet these criteria, users can improve the accuracy and reliability of their orbit determination results.
Original issue: https://gitlab.com/nyx-space/nyx/-/issues/167
Requirements
Test plans
Input validation testing
Purpose: To ensure that the system correctly validates user inputs for the rejection criteria, and produces meaningful error messages when inputs are invalid or out of range.
Steps:
1. Attempt to set a maximum residual value that is negative or zero, and ensure that the system produces an error message indicating that the value is invalid.
2. Attempt to set a Z score multiplier that is negative or zero, and ensure that the system produces an error message indicating that the value is invalid.
3. Attempt to set a Z score multiplier that is greater than some reasonable maximum (e.g., 10), and ensure that the system produces an error message indicating that the value is out of range.
Rejection criteria testing
Purpose: To ensure that the system correctly rejects measurements that meet the specified rejection criteria, and does not reject measurements that do not meet the criteria.
Steps:
1. Generate a set of simulated measurements with known residuals, some of which exceed the rejection criteria and some of which do not.
2. Configure the rejection criteria to match the known residuals.
3. Pass the simulated measurements through the system and ensure that the system correctly rejects measurements that meet the criteria and does not reject measurements that do not meet the criteria.
Logging and reporting testing
Purpose: To ensure that the system correctly logs rejected measurements and provides meaningful reporting to the user.
Steps:
1. Generate a set of simulated measurements with known residuals, some of which exceed the rejection criteria and some of which do not.
2. Configure the rejection criteria to match the known residuals.
3. Pass the simulated measurements through the system and ensure that the system logs which measurements were rejected due to the criteria.
4. Provide the logged information to the user in a clear and understandable format, such as a table or plot, and ensure that it is easy to interpret and analyze.
Design
Succinctly explain the idea behind the design.
Algorithm demonstration
N/A
Online measurement techniques are common throughout literature and in various programs.
API definition
Although restrictive, the simplest is likely to specify an enum with the different measurement rejection methods. We also likely want to be able to specify that a certain number of measurements must be processed before we start rejecting other ones.
The text was updated successfully, but these errors were encountered: