hanningsmooth

hanningsmooth(vis, outputvis='', keepmms=True, field='', spw='', scan='', antenna='', correlation='', timerange='', intent='', array='', uvrange='', observation='', feed='', datacolumn='all')[source]

Hanning smooth frequency channel data to remove Gibbs ringing

[Description] [Examples] [Development] [Details]

Parameters
  • vis (path) - Name of input visibility file

  • outputvis (string=’’) - Name of output visibility file

  • keepmms (bool=True) - Create a Multi-MS as the output if the input is a Multi-MS.

  • field (string=’’) - Select field using field id(s) or field name(s)

  • spw (string=’’) - Select spectral window/channels

  • scan (string=’’) - Scan number range

  • antenna (string=’’) - Select data based on antenna/baseline

  • correlation (string=’’) - Select data based on correlation

  • timerange (string=’’) - Select data based on time range

  • intent (string=’’) - Select observing intent

  • array (string=’’) - Select (sub)array(s) by array ID number.

  • uvrange (string=’’) - Select data by baseline length.

  • observation (string=’’) - Select by observation ID(s)

  • feed (string=’’) - Multi-feed numbers: Not yet implemented.

  • datacolumn (string=’all’) - Which data column(s) to use for processing

Description

This is the new implementation of hanningsmooth.

Note

Task hanningsmooth2 has been renamed to hanningsmooth. Please, update your scripts to call hanningsmooth instead.

The new hanningsmooth task uses the MSTransform framework underneath but keeps roughly the same interface as previous version of hanningsmooth.

This function Hanning smooths the frequency channels with a weighted running average. The weights are 0.5 for the central channel and 0.25 for each of the two adjacent channels. The first and last channels are flagged. Inclusion of a flagged value in an average causes that data value to be flagged.

If the CORRECTED data column is requested for an MS that does not contain this column, it will use DATA to calculate the smoothing and save it to DATA in the output MS.

Warning

WARNING: by default, all visibility columns will be smoothed.

Parameter Descriptions

Input and output MeasurementSets

The input visibility file (MS or MMS) given by the vis parameters will be Hanning smoothed and saved in an output given by the outputvis parameter.

For example, vis = [‘ngc5921.ms’] , output vis = ‘out_ngc5921.mms’.

Output MS or Multi-MS: keepmms parameter

If keepmms = True, a Multi-MS will be created as the output if the input is a Multi-MS(MMS), which is the default behaviour. The output Multi-MS will have the same partition axis of the input MMS. See the Parallel Processing chapter for more information on the MMS format.

Data Column parameter

The parameter datacolumn chooses which column to use for the processing (case-insensitive). The default is set to all columns that exist in the input MS.

Data Selection parameters

For more details on how to perform data selection within the MS (i.e., selecting by field, SPW, antenna, etc.), see the Visibility Data Selection chapter.

Examples

Apply Hanning smoothing on the CORRECTED column. The output will be saved into the DATA column.

hanningsmooth(vis='example.ms', outputvis='test.ms',
              datacolumn='corrected')

Apply Hanning smoothing on all visibility columns of the Multi-MS. In this case, if CASA is started with mpicasa, the processing will happen in parallel.

hanningsmooth(vis='example.mms', outputvis='test.mms') --> default

hanningsmooth(vis='example.mms', outputvis='test.mms',
              datacolumn='all', keepmms=True) --> set the parameters explicitly
Development

The following information was in the inline help for hanningsmooth but is now being maintained in one place in the Visibility Data Selection chapter, so a link has been added to those pages. It has been deleted from the Description tab for now and included below for reference in case it’s needed, once a comprehensive plan has been established for all task pages with this issue.

— Data selection parameters —

field – Select field using field id(s) or field name(s).

[run listobs to obtain the list iof d’s or names]

default: ‘’=all fields If field string is a non-negative

integer, it is assumed to be a field index otherwise, it is assumed to be a field name field=’0~2’; field ids 0,1,2 field=’0,4,5~7’; field ids 0,4,5,6,7 field=’3C286,3C295’; fields named 3C286 and 3C295 field = ‘3,4C*’; field id 3, all names starting with 4C

spw – Select spectral window/channels
default: ‘’=all spectral windows and channels

spw=’0~2,4’; spectral windows 0,1,2,4 (all channels) spw=’<2’; spectral windows less than 2 (i.e. 0,1) spw=’0:5~61’; spw 0, channels 5 to 61 spw=’0,10,3:3~45’; spw 0,10 all channels, spw 3 - chans 3 to 45. spw=’0~2:2~6’; spw 0,1,2 with channels 2 through 6 in each. spw = ‘*:3~64’ channels 3 through 64 for all sp id’s

spw = ‘ :3~64’ will NOT work.

NOTE: mstransform does not support multiple channel ranges per

spectral window (‘;’).

scan – Scan number range

default: ‘’=all

antenna – Select data based on antenna/baseline
default: ‘’ (all)

Non-negative integers are assumed to be antenna indices, and anything else is taken as an antenna name.

examples:

antenna=’5&6’: baseline between antenna index 5 and index 6. antenna=’VA05&VA06’: baseline between VLA antenna 5 and 6. antenna=’5&6;7&8’: baselines 5-6 and 7-8 antenna=’5’: all baselines with antenna 5 antenna=’5,6,10’: all baselines including antennas 5, 6, or 10 antenna=’5,6,10&’: all baselines with *only* antennas 5, 6, or

10. (cross-correlations only. Use && to include autocorrelations, and &&& to get only autocorrelations.)

antenna=’!ea03,ea12,ea17’: all baselines except those that

include EVLA antennas ea03, ea12, or ea17.

correlation – Correlation types or expression.

default: ‘’ (all correlations) example: correlation=’XX,YY’

timerange – Select data based on time range:
default: ‘’ (all); examples,

timerange = ‘YYYY/MM/DD/hh:mm:ss~YYYY/MM/DD/hh:mm:ss’ Note: if YYYY/MM/DD is missing date, timerange defaults to the first day in the dataset timerange=’09:14:0~09:54:0’ picks 40 min on first day timerange=’25:00:00~27:30:00’ picks 1 hr to 3 hr 30min on next day timerange=’09:44:00’ data within one integration of time timerange=’>10:24:00’ data after this time

array – (Sub)array number range

default: ‘’=all

uvrange – Select data within uvrange (default units meters)
default: ‘’=all; example:

uvrange=’0~1000klambda’; uvrange from 0-1000 kilo-lambda uvrange=’>4klambda’;uvranges greater than 4 kilo-lambda uvrange=’0~1000km’; uvrange in kilometers

observation – Select by observation ID(s)

default: ‘’=all

feed – Selection based on the feed - NOT IMPLEMENTED YET

default: ‘’=all

datacolumn – Which data column to use for processing (case-insensitive).

default: ‘all’; whichever of the visibility data columns that are present. options: ‘data’, ‘model’, ‘corrected’, ‘all’,’float_data’, ‘lag_data’.

example1: datacolumn=’data’; it will smooth the input DATA column and save the

smoothed data in DATA of the output MS.

example2: datacolumn=’corrected’; it will smooth the input CORRECTED_DATA column

and save the smoothed data in DATA of the output MS.

example3: datacolumn=’all’, where the input MS has DATA,CORRECTED_DATA,MODEL_DATA.

It will smooth all three columns and save the smoothed data in DATA, CORRECTED_DATA and MODEL_DATA of the output MS.

Parameter Details

Detailed descriptions of each function parameter

vis (path) - Name of input visibility file
Default: none
Example: vis=’ngc5921.ms’
outputvis (string='') - Name of output visibility file
Default: ‘’ (same as vis)
Example: outputvis=’ngc5921_out.ms’
keepmms (bool=True) - Create a Multi-MS as the output if the input is a
Multi-MS.
Default: True
Options: True|False
By default it will create a Multi-MS when the
input is a Multi-MS. The output Multi-MS will
have the same partition axis of the input
MMS. See CASA Docs for more information on
the MMS format.
field (string='') - Select field using field id(s) or field name(s)
Default: ‘’ (all fields)

Use ‘go listobs’ to obtain the list id’s or
names. If field string is a non-negative integer,
it is assumed a field index, otherwise, it is
assumed a field name.
Examples:
field=’0~2’; field ids 0,1,2
field=’0,4,5~7’; field ids 0,4,5,6,7
field=’3C286,3C295’; field named 3C286 and
3C295
field = ‘3,4C*’; field id 3, all names
starting with 4C
spw (string='') - Select spectral window/channels
Default: ‘’=all spectral windows and channels

Examples:
spw=’0~2,4’; spectral windows 0,1,2,4 (all channels)
spw=’<2’; spectral windows less than 2 (i.e. 0,1)
spw=’0:5~61’; spw 0, channels 5 to 61
spw=’0,10,3:3~45’; spw 0,10 all channels, spw
3 - chans 3 to 45.
spw=’0~2:2~6’; spw 0,1,2 with channels 2
through 6 in each.
spw = ‘*:3~64’ channels 3 through 64 for all sp id’s
spw = ‘ :3~64’ will NOT work.
NOTE: mstransform does not support multiple
channel ranges per spectral window (‘;’).
scan (string='') - Scan number range
Subparameter of selectdata=True
Default: ‘’ = all
antenna (string='') - Select data based on antenna/baseline
Subparameter of selectdata=True
Default: ‘’ (all)
If antenna string is a non-negative integer, it
is assumed an antenna index, otherwise, it is
assumed as an antenna name

Examples:
antenna=’5&6’; baseline between antenna
index 5 and index 6.
antenna=’VA05&VA06’; baseline between VLA
antenna 5 and 6.
antenna=’5&6;7&8’; baselines with
indices 5-6 and 7-8
antenna=’5’; all baselines with antenna index
5
antenna=’05’; all baselines with antenna
number 05 (VLA old name)
antenna=’5,6,10’; all baselines with antennas
5,6,10 index numbers
antenna=’!ea03,ea12,ea17’: all baselines
except those that include EVLA antennas
ea03, ea12, or ea17.
correlation (string='') - Select data based on correlation
Default: ‘’ ==> all
Example: correlation=”XX,YY”.
timerange (string='') - Select data based on time range
Subparameter of selectdata=True
Default = ‘’ (all)
Examples:
timerange =
‘YYYY/MM/DD/hh:mm:ss~YYYY/MM/DD/hh:mm:ss’
(Note: if YYYY/MM/DD is missing date defaults
to first day in data set.)
timerange=’09:14:0~09:54:0’ picks 40 min on
first day
timerange= ‘25:00:00~27:30:00’ picks 1 hr to 3
hr 30min on NEXT day
timerange=’09:44:00’ pick data within one
integration of time
timerange=’>10:24:00’ data after this time
intent (string='') - Select observing intent
Default: ‘’ (no selection by intent)
Example: intent=’BANDPASS’ (selects data
labelled with BANDPASS intent)
array (string='') - (Sub)array number range
Default: ‘’ (all)
uvrange (string='') - Select data by baseline length.
Default = ‘’ (all)
Examples:
uvrange=’0~1000klambda’; uvrange from 0-1000 kilo-lambda
uvrange=’>4klambda’;uvranges greater than 4 kilo-lambda
uvrange=’0~1000km’; uvrange in kilometers
observation (string='') - Select by observation ID(s)
Subparameter of selectdata=True
Default: ‘’ = all
Example: observation=’0~2,4’
feed (string='') - Selection based on the feed
NOT IMPLEMENTED YET!
Default: ‘’ = all
datacolumn (string='all') - Which data column(s) to use for processing
(case-insensitive).
Default: ‘all’ (= whichever of the options that
are present)
Options: ‘data’, ‘model’, ‘corrected’,
‘all’,’float_data’, ‘lag_data’,
‘float_data,data’, ‘lag_data,data’
Example: datacolumn=’data’