Skip to content

Export per-satellite RFI visibility predictions to diagnose sky leakage into the RFI model #125

Description

@chrisfinlay

An opt-in decomposition of the fitted RFI visibility into its per-satellite contributions, for diagnosing astronomical signal leaking into the RFI model.

Why

The diagnostic is visual and unambiguous: a genuine satellite RFI is a clean streak in exactly one per-source image. A feature appearing in several is sky flux that the fit has split across satellites — the failure mode #77's elevation mask addressed from one direction, seen directly.

Aggregate metrics do not show this. Reduced chi^2 is blind to it (measured identical to 3 decimal places across elevation cuts that visibly changed the sky model), because moving power between two components of the same total costs nothing in the likelihood.

How

The RFI visibility op sums over the satellite (n_rfi) axis, so each source's contribution is recovered by evaluating the same forward op one satellite at a time on the already-fitted fine-grid rfi_A / rfi_phase. No re-fit, no GP re-evaluation, and the per-source visibilities sum back to vis_rfi exactly — which is the check worth keeping as a test.

Scope

  • data.save_rfi_per_sat (default false) makes a run also store rfi_vis_src (dims sample, src, bl, freq, time) plus a norad_id coord, in the map zarr. It costs ~n_rfi x the rfi_vis storage and n_rfi forward-op evaluations, hence opt-in.
  • write_per_sat_rfi_ms reads rfi_vis_src back from the zarr and writes one MS column per satellite, TAB_RFI_<NORAD> (e.g. TAB_RFI_58126). Standalone and re-runnable from just the zarr plus the MS, so the decomposition does not have to be decided before the fit.
  • A console script wrapping it, so a single satellite's modelled RFI can be imaged directly.

Acceptance

  • Per-source visibilities sum to vis_rfi exactly
  • Off by default; no cost to a run that does not ask for it
  • The writer runs from zarr + MS alone, with no re-fit

Draft

153155e on the unpushed gain-tables branch (CSCS daint).

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions