hera_sim.rfi.RfiStation¶
- class hera_sim.rfi.RfiStation(f0: float, duty_cycle: float = 1.0, strength: float = 100.0, std: float = 10.0, timescale: float = 100.0, rng: Generator | None = None)[source]¶
Generate RFI based on a particular “station”.
- Parameters:
f0 (float) – Frequency that the station transmits (any units are fine).
duty_cycle (float, optional) – With
timescale
, controls how long the station is seen as “on”. In particular,duty_cycle
specifies which parts of the station’s cycle are considered “on”. Can be considered roughly a percentage of on time.strength (float, optional) – Mean magnitude of the transmission.
std (float, optional) – Standard deviation of the random RFI magnitude.
timescale (float, optional) – Controls the length of a transmision “cycle”. Low points in the sin-wave cycle are considered “off” and high points are considered “on” (just how high is controlled by
duty_cycle
). This is the wavelength (in seconds) of that cycle.rng (np.random.Generator, optional) – Random number generator.
Notes
This creates RFI with random magnitude in each time bin based on a normal distribution, with custom strength and variability. RFI is assumed to exist in one frequency channel, with some spillage into an adjacent channel, proportional to the distance to that channel from the station’s frequency. It is not assumed to be always on, but turns on for some amount of time at regular intervals.
Methods
__call__
(lsts, freqs)Compute the RFI for this station.