VBM
Velocity bin masking (VBM) electronic attack slow-time modulations.
Provides slow-time phase noise functions that a DRFM jammer can apply to spread energy across Doppler bins, masking the true target velocity. Includes LFM, random-phase, and sinusoidal modulation strategies.
logger = logging.getLogger(__name__)
module-attribute
calc_f_delta(fcar, rdot_delta)
Calculates the Doppler frequency spread from a range-rate spread.
This function converts a spread in target radial velocities (range-rate delta) into a corresponding Doppler frequency bandwidth.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
fcar
|
float
|
The carrier frequency of the radar in Hertz. |
required |
rdot_delta
|
float
|
The spread in range-rates (radial velocities) in meters/second. |
required |
Returns:
| Type | Description |
|---|---|
float
|
The corresponding frequency spread (f_delta) in Hertz. |
Source code in src/rad_lab/vbm.py
129 130 131 132 133 134 135 136 137 138 139 140 141 142 | |
slowtime_noise(N_pulses, fcar, rdot_delta, prf, noise_fun=_lfm_phase)
Generates a slow-time noise sequence for Velocity Band Modulation (VBM).
This function acts as a wrapper to generate various types of complex noise sequences applied across pulses (slow-time). It first calculates the required Doppler frequency spread from the given range-rate spread and then calls the specified noise generation function.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
N_pulses
|
int
|
The total number of pulses in the coherent processing interval. |
required |
fcar
|
float
|
The radar's carrier frequency in Hertz. |
required |
rdot_delta
|
float
|
The desired spread in range-rates (radial velocities) in m/s, which defines the VBM bandwidth. |
required |
prf
|
float
|
The Pulse Repetition Frequency in Hertz. |
required |
noise_fun
|
Callable
|
The function to use for generating the noise sequence.
Defaults to |
_lfm_phase
|
Returns:
| Type | Description |
|---|---|
ndarray
|
A 1D numpy array representing the complex slow-time noise sequence. |
Notes
Available noise_fun choices include:
- _random_phase: Broadband random phase noise.
- _uniform_bandwidth_phase: Noise with a uniform spectral distribution.
- _gaussian_bandwidth_phase: Noise with a Gaussian spectral distribution.
- _gaussian_bandwidth_phase_normalized: Gaussian noise with time-domain normalization.
- _lfm_phase: A deterministic LFM sweep across the Doppler band (cleanest).
Source code in src/rad_lab/vbm.py
145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 | |