hera_sim.utils.gen_delay_filter

hera_sim.utils.gen_delay_filter(freqs: ndarray, bl_len_ns: float | ndarray | Sequence, standoff: float = 0.0, delay_filter_type: str | None = 'gauss', min_delay: float | None = None, max_delay: float | None = None, normalize: float | None = None) ndarray[source]

Generate a delay filter in delay space.

Parameters:
  • freqs – Frequency array [GHz]

  • bl_len_ns – The baseline length in nanosec (i.e. 1e9 * metres / c). If scalar, interpreted as E-W length, if len(2), interpreted as EW and NS length, otherwise the full [EW, NS, Z] length. Unspecified dimensions are assumed to be zero.

  • standoff – Supra-horizon buffer [nanosec]

  • delay_filter_type – Options are ['gauss', 'trunc_gauss', 'tophat', 'none']. This sets the filter profile. gauss has a 1-sigma as horizon (+ standoff) divided by four, trunc_gauss is same but truncated above 1-sigma. 'none' means filter is identically one.

  • min_delay – Minimum absolute delay of filter

  • max_delay – Maximum absolute delay of filter

  • normalize – If set, will normalize the filter such that the power of the output matches the power of the input times the normalization factor. If not set, the filter merely has a maximum of unity.

Returns:

delay_filter – Delay filter in delay space (1D)