User Parameters - Mosaicking

Levels of Mosaicking

The default mode of the pipeline is to produce mosaics at several levels for a given scheduling block. Each field in the measurement set will have its own mosaic, combining all requested beams for that field.

There is a choice for how the weighting is done at this step. The method until recently has been to use weighttype=FromPrimaryBeamModel, which simply applies a primary beam correction (given that the weights image is essentially flat for W-projection). The new default, however, is weighttype=Combined, which combines the primary beam weighting with the value from the weights image, better accounting for differences in effective integration time or flagging. The former method will produce mosaic weights images normalised to a peak of 1, while the latter does not apply any normalisation. The choice between the two is made with the LINMOS_SINGLE_FIELD_WEIGHTTYPE config parameter.

When the scheduling block has used the tilesky mode, the fields in the measurement set will be of the form NAME_Tx-yI, where x & y give the offsets in the tiling grid, and I is one of A,B,C,D, indicating the interleaving offset for that tile position. NAME is some identifying text. In this situation, each x-y tile will have its own mosaic, where the mosaics of each interleave position for that tile are combined.

Finally, the mosaics of all fields and/or tiles are combined to form a single mosaic image for the scheduling block. This second stage of mosaicking is not done if there is only a single field in the measurement set (instead the single field mosaic is copied to the top-level directory at the completion of the initial mosaicking job).

Additionally, if there are multiple fields in the measurement set, but they should not be mosaicked together (for instance, if they are quite separate locations on the sky), then you can set DO_MOSAIC_FIELDS=false. Then the individual fields will be mosaicked but nothing more.

The mosaicking is done for all image product types – continuum images, continuum cubes, and spectral-line cubes. For continuum images, the linmos tool is used, while the linmos-mpi tool is used for the cubes, allowing parallelism over the spectral channels.

For the continuum imaging case when self-calibration has been used, a mosaic can be made of each loop of the self-calibration process. This is done for each field (ie. each interleave position of each tile), and can be turned on/off with the parameter MOSAIC_SELFCAL_LOOPS.

Beam locations

The linmos tools require beam offsets to know where to place the primary beam models. For recent ASKAP scheduling blocks, this is generated in a self-consistent manner using the command-line interfaces to the scheduling block and footprint services. This uses the recorded beam footprint information in the scheduling block parset to regenerate the central location of each beam.

The services are hosted at the MRO, and in the event of an interruption to service, the use of these can be bypassed by setting USE_CLI=false. This requires, however, that you have previously-made metadata files available in the metadata directory (in particular the footprint file).

Recent observations rely on the src%d.footprint.rotation parameter in the scheduling block parset to determine the reference angle from which the pol_axis parameter gives a field-based rotation. Some scheduling blocks make use of this parameter yet do not report it in the parset. If this is the case, you can manually specify the reference value via the FOOTPRINT_PA_REFERENCE parameter in the configuration file. The scheduling block parset value always takes precendence.

If you are processing an older SBID, for which the footprint information is not available in the scheduling block, you must specify the footprint information yourself using the parameters given below. It is possible the footprint service does not know about your footprint in this case - we then fall back to using the ACES script footprint.py, which can accept a broader range of footprint names.

For re-processing of BETA data, you will need to set the IS_BETA parameter (so that the pipeline does not try to access the scheduling block service), and provide the beam information using the parameters below.

It may be that you are using a non-standard arrangement that footprint.py doesn’t cover. In this case you need to directly specify the LINMOS_BEAM_OFFSETS variable (this is normally set by the beamArrangements.sh script). Here is an example of how you would do this (this is for the “diamond” footprint, band 1, PA=0):

LINMOS_BEAM_OFFSETS="linmos.feeds.beam0 = [-0.000,  0.000]
linmos.feeds.beam1 = [-0.000,  1.244]
linmos.feeds.beam2 = [-1.077,  0.622]
linmos.feeds.beam3 = [-1.077, -0.622]
linmos.feeds.beam4 = [-0.000, -1.244]
linmos.feeds.beam5 = [ 1.077, -0.622]
linmos.feeds.beam6 = [ 1.077,  0.622]
linmos.feeds.beam7 = [-2.154,  0.000]
linmos.feeds.beam8 = [ 2.154, -0.000]"

Note that LINMOS_BEAM_OFFSETS is only needed when all beams have the same centre position (ie. when IMAGE_AT_BEAM_CENTRES=false). If this is not the case, each beam image has a different centre, and linmos simply uses that, putting a primary beam at the centre of each image.

Variable Default Parset equivalent Description
DO_MOSAIC true none Whether to mosaic the individual beam images, forming a single, primary-beam-corrected image.
DO_MOSAIC_FIELDS true none Whether to mosaic the different fields together (for when there is more than one in the MS). If set to false, only the field-based mosaicking will be done.
JOB_TIME_LINMOS JOB_TIME_DEFAULT (24:00:00) none Time request for mosaicking
NUM_CPUS_CONTCUBE_LINMOS "" none Total number of cores used for each of the spectral-line mosaicking jobs. If blank (the default), the number used is equal to the smaller of the number of cores used for the continuum cube imaging (NUM_CPUS_CONTCUBE_SCI) or the number of continuum channels.
NCHAN_PER_CORE_SPECTRAL_LINMOS 8 none Number of channels to be handled at once by a single process in the spectral-line mosaicking. This should divide evenly into the number of spectral channels. This will determine the number of cores assigned to the spectral-line mosaicking, unless NUM_CPUS_SPECTRAL_LINMOS is provided.
NUM_CPUS_SPECTRAL_LINMOS "" none Total number of cores used for each of the spectral-line mosaicking jobs. If blank, the number used is deterined by the total number of channels and NCHAN_PER_CORE_SPECTRAL_LINMOS.
MOSAIC_SELFCAL_LOOPS false none Whether to make mosaics of each self-calibration loop.
FOOTPRINT_PA_REFERENCE "" none The reference rotation angle for the footprint. This should only be given if the scheduling block parset does not have the common.src.%d.footprint.rotation parameter, or if you want to over-ride that value. If not given, the footprint.rotation value will be used, or (in its absence), zero.
BEAM_FOOTPRINT_NAME diamond none The name of the beam footprint. This needs to be recognised by the ACES tool footprint.py, which generates the offsets required by the linmos application.
BEAM_FOOTPRINT_PA 0 none The position angle of the beam footprint pattern. Passed to footprint.py.
BEAM_PITCH 1.24 none The pitch, or beam spacing, in degrees. Passed to footprint.py.
FREQ_BAND_NUMBER "" none Which frequency band are we in - determines beam arrangement (1,2,3,4). Passed to footprint.py. If not given, the pitch value is used to set the beam separation. The band is overridden by the pitch as well.
NUM_BEAMS_FOOTPRINT 36 none The number of beams in the footprint. In regular operation, this will be determined from the footprint service, but will need to be specified in the case of non-standard or BETA footprints.
LINMOS_BEAM_OFFSETS no default feeds.beam{i} (linmos (Linear Mosaic Applicator)) Parset entries that specify the beam offsets for use by linmos. Needs to have one entry for each beam being mosaicked. See above for an example. Only provide this if running footprint.py is not going to give you what you want (eg. non-standard beam locations).
LINMOS_BEAM_SPACING "1deg" feeds.spacing (linmos (Linear Mosaic Applicator)) Scale factor for beam arrangement, in format like ‘1deg’. This should not be altered if you are using a standard footprint from footprint.py (ie. with BEAM_FOOTPRINT_NAME).
LINMOS_CUTOFF 0.2 linmos.cutoff (linmos (Linear Mosaic Applicator)) The primary beam cutoff, as a fraction of the peak
LINMOS_PSF_REF 0 linmos.psfref (linmos (Linear Mosaic Applicator)) Reference beam for PSF (0-based index of the list of beams, not the beam number) - which beam to take the PSF information from.
LINMOS_SINGLE_FIELD_WEIGHTTYPE Combined linmos.weighttype (linmos (Linear Mosaic Applicator)) How to do the weighting in the first stage of mosaicking (all beams of a single field). Can be either “Combined” or “FromPrimaryBeamModel”.

Table Of Contents

Previous topic

User Parameters - Spectral-line Imaging

Next topic

User Parameters - Continuum Source-finding

This Page