Home' RTCA Documents for Review : ACAS X MOPS DRAFT Vol. 2 Contents DRAFT
Algorithm 29 ReinitializeRangeTracker
1 function ReinitializeRangeTracker(trk::Union(ModeCTrackFile(p. E -7), ModeSTrackFile(p. E -8)), r_slant::R, z_rel::R,
z_baro::R, q_int::Uint32, toa::R, measurement_invalid::Bool)
const outlier_thresh::R = params().surveillance.horizontal.rangefilter.outlier_threshold
initialize_on_current_measurement::Bool = true
if (trk.odc_rng == 0) && (!trk.last_update_rng.measurement_invalid) && (!measurement_invalid)
InitializeRangeTracker(p. 30)(trk, trk.last_update_rng.r
dt = toa - trk.last_update_rng.toa
(mu_s,Sigma_s) = PredictRangeTracker(p. 34)(trk.mu
measurement_outlier::Bool = IsOutlier(p. 27)(GroundRange(p. 30)(r_slant,z_rel),mu_s,Sigma_s[1,1],
alt_avail_mismatch::Bool = trk.alt_not_avail != isnan(z_baro)
if (!measurement_outlier) && (!alt_avail_mismatch)
rng,trk.Sigma_rng) = UpdateRangeTracker(p. 36)(r_slant,z_rel,mu_s,Sigma_s,q_int)
trk.updates_rng += 1
trk.valid_rng = true
trk.is_rng_coast = false
initialize_on_current_measurement = false
InitializeRangeTracker(p. 30)(trk, r_slant, z_rel, z_baro)
trk.toa_rng = toa
Referenced In: AdvanceRangeTrack(p. 32)
The prediction step for the Range Tracker departs from the standard KF paradigm in PREDIC-
TRANGETRACKER (Algorithm 30). To handle the nonlinearity that occurs when a target at close
range transitions from converging (negative range rate) to diverging (positive range rate), this algo-
rithm uses a range squared motion model. Range squared tracking exploits the fact that the square
of the ground range between two non-accelerating aircraft is always parabolic as a function of time,
regardless of the closest point of approach. As a result, a second order motion model more accu-
rately captures the dynamics near the closest point of approach without adding additional process
The prediction is not performed if the difference between the TOA and the time of the last track
update is less than a defined threshold (min_extrap_toa_step). Otherwise, this process is performed
by the following steps:
1. The range state vector and covariance are augmented by the process noise Q.
2. The augmented distribution is sampled using sigma point sampling.
3. Negative accelerations in range cannot occur between two non-accelerating aircraft, and their
presence can cause the range squared motion model to become unstable. To prevent this from
occurring, all samples are set to a minimum range acceleration of zero. Any previous negative
range accelerations are saved in acc_remainder for application after the predict step.
4. The state vector of each sample is transformed into range squared coordinates.
5. The range squared position, velocity, and acceleration dimensions of each sample are predicted
forward in time by dt.
6. The position dimension of each sample is transformed into range coordinates by taking the
square root of the absolute value of the predicted range squared position (sqrt_r2). Additional
prediction is applied to this sample in range coordinates given the acceleration term of the
process noise and the acc_remainder stored above.
ACAS Xa/Xo MOPS, Vol. II
© 2018 RTCA, Inc.
Links Archive ACAS X MOPS DRAFT Vol.1 Navigation Previous Page Next Page