tlpipe.timestream.ns_cal.NsCal

class tlpipe.timestream.ns_cal.NsCal(parameter_file_or_dict=None, feedback=2)[source]

Relative phase calibration using the noise source signal.

The noise source can be viewed as a near-field source, its visibility can be expressed as

\[V_{ij}^{\text{ns}} = C \cdot e^{i k (r_{i} - r_{j})}\]

where \(C\) is a real constant.

\[\begin{split}V_{ij}^{\text{on}} &= G_{ij} (V_{ij}^{\text{sky}} + V_{ij}^{\text{ns}} + n_{ij}) \\ V_{ij}^{\text{off}} &= G_{ij} (V_{ij}^{\text{sky}} + n_{ij})\end{split}\]

where \(G_{ij}\) is the gain of baseline \(i,j\).

\[\begin{split}V_{ij}^{\text{on}} - V_{ij}^{\text{off}} &= G_{ij} V_{ij}^{\text{ns}} \\ &=|G_{ij}| e^{i k \Delta L} C \cdot e^{i k (r_{i} - r_{j})} \\ & = C |G_{ij}| e^{i k (\Delta L + (r_{i} - r_{j}))}\end{split}\]

where \(\Delta L\) is the equivalent cable length.

\[\text{Arg}(V_{ij}^{\text{on}} - V_{ij}^{\text{off}}) = k (\Delta L + (r_{i} - r_{j})) = k \Delta L + const.\]

To compensate for the relative phase change (due to \(\Delta L\)) of the visibility, we can do

\[V_{ij}^{\text{rel-cal}} = e^{-i \; \text{Arg}(V_{ij}^{\text{on}} - V_{ij}^{\text{off}})} \, V_{ij}\]

Note

Note there is still an unknown (constant) phase factor to be determined in \(V_{ij}^{\text{rel-cal}}\), which may be done by absolute calibration.

Attributes

cacheable Override to return True if caching results is implemented.
embarrassingly_parallelizable Override to return True if next() is trivially parallelizeable.
history History that will be added to the output file.
iteration Current iteration when iterable is True, None else.
params_init
prefix
__init__(parameter_file_or_dict=None, feedback=2)[source]

Methods

cal(vis, vis_mask, li, gi, fbl, rt, \*\*kwargs) Function that does the actual cal.
cast_input(input) Override to support accepting pipeline inputs of various types.
copy_input(tod) Return a copy of tod, so the original tod would not be changed.
data_select(tod) Data select.
finish() Final analysis stage of pipeline task.
next([input]) Should not need to override.
process(rt)
read_input() Method for reading time ordered data input.
read_output(filenames) Override to implement reading outputs from disk.
read_process_write(tod) Reads input, executes any processing and writes output.
restart_iteration() Re-start the iteration.
setup([requires]) First analysis stage of pipeline task.
show_params() Show all parameters that can be set and their default values of this task.
stop_iteration([force_stop]) Determine whether to stop the iteration.
subset_select(tod) Data subset select.
write_output(output) Method for writing time ordered data output.