Definitions
Channels, phase centres, overlap, and the vocabulary the rest of these pages assume.
Short glossary for terminology used throughout the TDBP pipeline. Numbers
below use the modified MUSCLE geometry from
simulator/scenes/library/9obj_split_zonemap.yaml as a concrete example.
Physical array
- Total channels (
n_channels): the number of physical RX elements on the hydrophone array. Example:n_channels = 36. - Channel spacing (
channel_spacing): along-track distance between adjacent RX element centers. Example: 30 mm (elements are butt-coupled, so spacing = element size). - Array span (physical): extent of the RX elements:
(n_channels − 1) · channel_spacing. Example: 35 × 30 mm = 1050 mm (or 1080 mm if you count element width).
Phase centers (PCs)
- Phase center: the effective radiation/reception point for a
(TX, RX) pair, located at the midpoint of the TX and RX positions. For
a co-located TX with RXs along the array,
PC_i = (TX + RX_i) / 2. - Phase center spacing (
d_pc): distance between adjacent PCs. With the monostatic-approximation TX at one end,d_pc = channel_spacing / 2. Example:d_pc = 15 mm. - PC span: extent of the PC positions within one ping:
(n_channels − 1) · d_pc. Example: 35 × 15 mm = 525 mm. This is the single-ping synthetic aperture. - Number of PCs per ping =
n_channels(one PC per (TX, RX) pair).
Platform motion between pings
- Ping advance: along-track distance the platform moves between
consecutive pings:
SPEED / PING_RATE. Example: 1.583 m/s / 3.298 Hz = 480 mm per ping = 32 · d_pc exactly (chosen so PC advance is an integer to avoid lattice-defect grating lobes).
Overlap
- Overlap (in PCs): number of PC positions shared between the
apertures of two consecutive pings. With the geometry above:
overlap = PC span − ping advance = 525 − 480 = 45 mm = 3 d_pc, orn_channels − (advance / d_pc) = 36 − 32 = 4 PCs, depending on whether you count endpoints. The code uses the latter. Example: overlap = 4 PCs. - Why overlap exists: it keeps the along-track PC sampling contiguous (no gaps) and provides redundancy for micronavigation delay estimation between ping pairs.
Active channels
- Active channels per ping: in the current image-formation
framework, every channel of every ping contributes to the SLC, but
channels that overlap with a neighboring ping get weight 0.5
(full overlap) or a linearly-scaled partial weight (see
compute_channel_weightsinbeamformer.py:861). Net contribution across the ping pair sums to 1.0 per PC. - Effective PCs per ping =
(n_channels − overlap) + overlap · 0.5. Example:32 + 4 · 0.5 = 34effective PC contributions. - Older codebases sometimes use active channels = non-overlapping
channels only: i.e.,
n_channels − overlap = 32: and discard overlapped PCs entirely. We do not do that: we keep all 36 but weight them so the coherent sum is unbiased. first_channel_per_ping: the first channel index that is not shared with the previous ping; overlap handling uses this only to avoid double-counting when building image-level weight maps. Kernel still integrates fromfirst_channel_per_ping[ping]ton_channels − 1.
Along-track synthetic aperture at a pixel
- Beam-limited aperture (
L_beam): only pings whose beam center falls within± half_beam_radof a pixel contribute to that pixel. At range R, this is roughlyL_beam ≈ 2 R · tan(half_beam). Example: R = 33.5 m, half_beam = 6.35° →L_beam ≈ 7.5 m. - Number of pings per pixel ≈
L_beam / ping_advance. Example: 7.5 / 0.480 ≈ 16 pings per pixel. - Total PC contributions per pixel ≈
(pings per pixel) · n_channels. Example: 16 · 36 ≈ 580 coherent samples per pixel.
Apodization / channel tapering
- Channel tapering for PSF-sidelobe / PC-grating suppression should
be applied as a Taylor / Hamming weight indexed by the physical
channel position (0..
n_channels−1), on top of the overlap weights. Do not re-index by the "active channel" subset, which would create a discontinuity at the overlap boundary. - Current pipeline: no channel-position tapering (weights are uniform
across channels; only the Hann beam-angle window is applied). That
leaves a visible PC-grating ripple at period =
d_pcin off-peak regions of bright targets.