Struct acq_shape_t¶
What the engine knows about the SHAPE of the repeated preamble, beyond its samples (doppler#1470). More...
#include <acq_core.h>
Public Attributes¶
| Type | Name |
|---|---|
| double | delay_loss |
| double | delay_loss_mean |
| double | dsl |
| double | off_peak |
| double | off_peak_amp |
| double | psl |
| size_t | zone |
Detailed Description¶
The engine's framing, slow-time transform and wideband tiling hold for any periodic reference; only two things read the waveform's correlation shape, and they read it from here rather than from the chip count:
- the width of the correlation mainlobe, which sets the peak list's exclusion zone and the twin rule's reach (zone);
- the amplitude a peak keeps when the true delay falls between two samples, which the Pd model averages over a uniform half-sample prior (delay_loss, delay_loss_mean).
The constructor that owns the waveform fills it once. A PN code of spc samples per chip has a triangular autocorrelation one chip wide, so its descriptor is analytic: zone = spc, and a peak delta samples off the grid keeps 1 - delta/spc.
Public Attributes Documentation¶
variable delay_loss¶
Amplitude kept at the midpoint nodes (k + 1/2)/nodes of that half-sample range, k = 0 … nodes-1.
variable delay_loss_mean¶
Mean amplitude kept over a uniform delay straddle of 0 to 1/2 sample.
variable dsl¶
Doppler-offset sidelobe: the largest |chi(m, nu)| over the same lags as psl, relative to the emitter's own peak, over every residual and tile offset the grid can put between an emitter and a tile (design acq-surface.md §8). psl is its zero-offset case, so dsl >= psl. A strong emitter lists peaks this far below it, more than a mainlobe from its own lag. dp_acq_dsl_db() is the read-back, and computes it on the first call: read it through that, never directly. Defined on the construction grid; a grid pinned later keeps it.
variable off_peak¶
Correlation energy OFF the peak, relative to it: sum over m != 0 of |R(m)|^2 / R(0)^2 for the periodic autocorrelation R. It lands in the cells the CFAR reference averages, so the Pd model charges it (doppler#1501): ~0 for a perfect sequence. Filled by the constructor from the replica, whatever built the rest.
variable off_peak_amp¶
The same lags' AMPLITUDE: sum over m != 0 of |R(m)| / R(0). With off_peak it says how concentrated that energy is, which sets how much mean it adds to the reference.
variable psl¶
Peak sidelobe: the largest |R(m)| / R(0) OUTSIDE the mainlobe, zone <= m <= n - zone the lags the peak list's exclusion does not cover. 0 for a perfect sequence (below 1e-6, rounding). dp_acq_psl_db() is the read-back (doppler#1470).
variable zone¶
Correlation mainlobe half-width, samples: peaks closer than this in delay are one emitter.
The documentation for this class was generated from the following file native/inc/doppler/acq/acq_core.h