We subtract the model visibilities for the bright sources from the data given the calibration solutions. This happens on a resolution different from cadenced calibration.
How:
Cadenced calibration will produce solutions every validity_interval.
DFTPredict is used to predict the bright sources for each baseline on the maximal time and frequency resolution.
Sharding still happens by freq,time, therefore the calibration gains are broadcast to all every validity interval.
These are stored until they are replaced. This implies a kernel of solve -> apply solutions for a period.
def single_validity_interval_loop():
data = accumulate(solution_interval)
solutions = calibrate(data)
for i in validity_interval:
data = accumulate(solution_interval)
data = subtract(solutions, data)
store_data(data)
move_forward()
We subtract the model visibilities for the bright sources from the data given the calibration solutions. This happens on a resolution different from cadenced calibration.
How: