1 + | <casaxml xsi:schemaLocation="http://casa.nrao.edu/schema/casa.xsd file:///opt/casa/code/xmlcasa/xml/casa.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://casa.nrao.edu/schema/psetTypes.html"> |
2 + | |
3 + | <task visibility="experimental" category="calibration" name="accor" type="function"> |
4 + | <shortdescription>Normalize visibilities based on auto-correlations</shortdescription> |
5 + | <description> |
6 + | Determines the amplitude corrections neede due to errors in sampler |
7 + | thresholds using measurements of auto-correlation spectra. This |
8 + | correction is typically requiered for data correlated with the DiFX |
9 + | correlator (such as VLBA data). Other correlators (such as the SFXC |
10 + | correlator used to correlate EVN data at JIVE) already apply this |
11 + | correction at the correlator. In this case, running this task is not |
12 + | necessary. |
13 + | </description> |
14 + | <input> |
15 + | <param mustexist="true" name="vis" type="path"> |
16 + | <shortdescription>Name of input visibility file</shortdescription> |
17 + | <description>Name of input visibility file |
18 + | default: none |
19 + | |
20 + | example: vis='ngc5921.ms' |
21 + | </description> |
22 + | <value/> |
23 + | </param> |
24 + | |
25 + | <param name="caltable" type="string"> |
26 + | <shortdescription>Name of output gain calibration table</shortdescription> |
27 + | <description>Name of output gain calibration table |
28 + | default: none |
29 + | |
30 + | example: caltable='ngc5921.gcal' |
31 + | </description> |
32 + | <value/> |
33 + | </param> |
34 + | |
35 + | <param name="field" type="string"> |
36 + | <shortdescription>Select field using field id(s) or field name(s)</shortdescription> |
37 + | <description>Select field using field id(s) or field name(s) |
38 + | default: '' --> all fields |
39 + | |
40 + | Use 'go listobs' to obtain the list id's or |
41 + | names. If field string is a non-negative integer, |
42 + | it is assumed a field index, otherwise, it is |
43 + | assumed a field name. |
44 + | |
45 + | Examples: |
46 + | field='0~2'; field ids 0,1,2 |
47 + | field='0,4,5~7'; field ids 0,4,5,6,7 |
48 + | field='3C286,3C295'; field named 3C286 and |
49 + | 3C295 |
50 + | field = '3,4C*'; field id 3, all names |
51 + | starting with 4C |
52 + | |
53 + | Note: do not forget to include the flux density |
54 + | calibrator if you have one! |
55 + | </description> |
56 + | <value/> |
57 + | </param> |
58 + | |
59 + | <param name="spw" type="string"> |
60 + | <shortdescription>Select spectral window/channels</shortdescription> |
61 + | <description>Select spectral window/channels |
62 + | |
63 + | Examples: |
64 + | spw='0~2,4'; spectral windows 0,1,2,4 (all |
65 + | channels) |
66 + | spw='<2'; spectral windows less than 2 |
67 + | (i.e. 0,1) |
68 + | spw='0:5~61'; spw 0, channels 5 to 61, |
69 + | INCLUSIVE |
70 + | spw='*:5~61'; all spw with channels 5 to 61 |
71 + | spw='0,10,3:3~45'; spw 0,10 all channels, spw |
72 + | 3, channels 3 to 45. |
73 + | spw='0~2:2~6'; spw 0,1,2 with channels 2 |
74 + | through 6 in each. |
75 + | spw='0:0~10;15~60'; spectral window 0 with |
76 + | channels 0-10,15-60. (NOTE ';' to separate |
77 + | channel selections) |
78 + | spw='0:0~10^2,1:20~30^5'; spw 0, channels |
79 + | 0,2,4,6,8,10, spw 1, channels 20,25,30 |
80 + | type 'help par.selection' for more examples. |
81 + | </description> |
82 + | <value/> |
83 + | </param> |
84 + | |
85 + | <param name="intent" type="string"> |
86 + | <shortdescription>Select observing intent</shortdescription> |
87 + | <description>Select observing intent |
88 + | default: '' (no selection by intent) |
89 + | |
90 + | Example: intent='*BANDPASS*' (selects data |
91 + | labelled with BANDPASS intent) |
92 + | </description> |
93 + | <value/> |
94 + | </param> |
95 + | |
96 + | <param name="selectdata" type="bool"> |
97 + | <shortdescription>Other data selection parameters</shortdescription> |
98 + | <description>Other data selection parameters |
99 + | default: True (Must set selectdata=True to select |
100 + | other selection parameters.) |
101 + | </description> |
102 + | <value>True</value> |
103 + | </param> |
104 + | |
105 + | <param subparam="true" name="timerange" type="string"> |
106 + | <shortdescription>Select data based on time range</shortdescription> |
107 + | <description>Select data based on time range |
108 + | Subparameter of selectdata=True |
109 + | default = '' (all) |
110 + | |
111 + | Examples: |
112 + | timerange = |
113 + | 'YYYY/MM/DD/hh:mm:ss~YYYY/MM/DD/hh:mm:ss' |
114 + | (Note: if YYYY/MM/DD is missing date defaults |
115 + | to first day in data set.) |
116 + | timerange='09:14:0~09:54:0' picks 40 min on |
117 + | first day |
118 + | timerange= '25:00:00~27:30:00' picks 1 hr to 3 |
119 + | hr 30min on NEXT day |
120 + | timerange='09:44:00' pick data within one |
121 + | integration of time |
122 + | timerange='>10:24:00' data after this time |
123 + | </description> |
124 + | <value/> |
125 + | </param> |
126 + | |
127 + | <param subparam="true" name="antenna" type="string"> |
128 + | <shortdescription>Select data based on antenna/baseline</shortdescription> |
129 + | <description>Select data based on antenna/baseline |
130 + | Subparameter of selectdata=True |
131 + | default: '' (all) |
132 + | |
133 + | Examples: |
134 + | antenna='5&6'; baseline between antenna |
135 + | index 5 and index 6. |
136 + | antenna='VA05&VA06'; baseline between VLA |
137 + | antenna 5 and 6. |
138 + | antenna='5&6;7&8'; baselines with |
139 + | indices 5-6 and 7-8 |
140 + | antenna='5'; all baselines with antenna index |
141 + | 5 |
142 + | antenna='05'; all baselines with antenna |
143 + | number 05 (VLA old name) |
144 + | antenna='5,6,10'; all baselines with antennas |
145 + | 5,6,10 index numbers |
146 + | |
147 + | Note: just for antenna selection, an integer (or |
148 + | integer list) is converted to a string and |
149 + | matched against the antenna 'name' first. Only if |
150 + | that fails, the integer is matched with the |
151 + | antenna ID. The latter is the case for most |
152 + | observatories, where the antenna name is not |
153 + | strictly an integer. |
154 + | </description> |
155 + | <value/> |
156 + | </param> |
157 + | |
158 + | <param subparam="true" name="scan" type="string"> |
159 + | <shortdescription>Scan number range</shortdescription> |
160 + | <description>Scan number range |
161 + | Subparameter of selectdata=True |
162 + | default: '' = all |
163 + | |
164 + | Check 'go listobs' to insure the scan numbers are |
165 + | in order. |
166 + | </description> |
167 + | <value/> |
168 + | </param> |
169 + | |
170 + | <param subparam="true" name="observation" type="any"> |
171 + | <shortdescription>Select by observation ID(s)</shortdescription> |
172 + | <description>Select by observation ID(s) |
173 + | Subparameter of selectdata=True |
174 + | default: '' = all |
175 + | |
176 + | Example: observation='0~2,4' |
177 + | </description> |
178 + | <type>string</type><type>int</type> |
179 + | <value type="string"/> |
180 + | </param> |
181 + | |
182 + | <param subparam="true" name="msselect" type="string"> |
183 + | <shortdescription>Optional complex data selection (ignore for now)</shortdescription> |
184 + | <description>Optional complex data selection (ignore for now) |
185 + | </description> |
186 + | <value/> |
187 + | </param> |
188 + | |
189 + | <param name="solint" type="any"> |
190 + | <shortdescription>Solution interval: egs. \'inf\', \'60s\' (see help)</shortdescription> |
191 + | <description>Solution interval (units optional) |
192 + | default: 'inf' (~infinite, up to boundaries |
193 + | controlled by combine) |
194 + | Options: 'inf' (~infinite), 'int' (per |
195 + | integration), any float or integer value with or |
196 + | without units |
197 + | |
198 + | Examples: solint='1min'; solint='60s'; |
199 + | solint=60 --> 1 minute |
200 + | solint='0s'; solint=0; solint='int' --> per |
201 + | integration |
202 + | solint-'-1s'; solint='inf' --> ~infinite, up |
203 + | to boundaries -interacts with combine |
204 + | </description> |
205 + | <any type="variant"/> |
206 + | <value type="string">inf</value> |
207 + | </param> |
208 + | |
209 + | <param name="combine" type="string"> |
210 + | <shortdescription>Data axes which to combine for solve (obs, scan, spw, and/or field)</shortdescription> |
211 + | <description>Data axes which to combine for solve |
212 + | default: '' (solutions will break at obs, scan, |
213 + | field, and spw) |
214 + | Options: '','obs','scan','spw',field', or any |
215 + | comma-separated combination in a single string |
216 + | |
217 + | For gaintype='K', if combine includes 'spw', |
218 + | multi-band delays will be determined; otherwise, |
219 + | (per-spw) single-band delays will be determined. |
220 + | |
221 + | Example: combine='scan,spw' (extend solutions |
222 + | over scan boundaries) |
223 + | </description> |
224 + | <value/> |
225 + | </param> |
226 + | |
227 + | <param name="corrdepflags" type="bool"> |
228 + | <shortdescription>Respect correlation-dependent flags</shortdescription> |
229 + | <description> If False (default), if any correlation is flagged, treat all correlations in |
230 + | the visibility vector as flagged when solving (per channel, per baseline). |
231 + | If True, use unflagged correlations in a visibility vector, even if one or more |
232 + | other correlations are flagged. |
233 + | |
234 + | Default: False (treat correlation vectors with one or more correlations flagged as entirely flagged) |
235 + | |
236 + | Traditionally, CASA has observed a strict interpretation of |
237 + | correlation-dependent flags: if one or more correlations |
238 + | (for any baseline and channel) is flagged, then all available |
239 + | correlations for the same baseline and channel are |
240 + | treated as flagged. However, it is desirable in some |
241 + | circumstances to relax this stricture, e.g., to preserve use |
242 + | of data from antennas with only one good polarization (e.g., one polarization |
243 + | is bad or entirely absent). Solutions for the bad or missing polarization |
244 + | will be rendered as flagged. |
245 + | |
246 + | </description> |
247 + | <value>False</value> |
248 + | </param> |
249 + | |
250 + | <param name="append" type="bool"> |
251 + | <shortdescription>Append solutions to the (existing) table</shortdescription> |
252 + | <description>Append solutions to the (existing) table |
253 + | default: False (overwrite existing table or make |
254 + | new table) |
255 + | |
256 + | Appended solutions must be derived from the same |
257 + | MS as the existing caltable, and solution spws |
258 + | must have the same meta-info (according to spw |
259 + | selection and solint) or be non-overlapping. |
260 + | </description> |
261 + | <value>False</value> |
262 + | </param> |
263 + | |
264 + | <param name="docallib" type="bool"> |
265 + | <shortdescription>Use callib or traditional cal apply parameters</shortdescription> |
266 + | <description>Control means of specifying the caltables |
267 + | default: False --> Use gaintable, gainfield, |
268 + | interp, spwmap, calwt. |
269 + | |
270 + | If True, specify a file containing cal library in |
271 + | callib |
272 + | </description> |
273 + | <value>False</value> |
274 + | </param> |
275 + | |
276 + | <param subparam="true" name="callib" type="string"> |
277 + | <shortdescription>Cal Library filename</shortdescription> |
278 + | <description>Cal Library filename |
279 + | Subparameter of callib=True |
280 + | |
281 + | If docallib=True, specify a file containing cal |
282 + | library directives |
283 + | </description> |
284 + | <value type="string"/> |
285 + | </param> |
286 + | |
287 + | <param subparam="true" name="gaintable" type="stringVec"> |
288 + | <shortdescription>Gain calibration table(s) to apply on the fly</shortdescription> |
289 + | <description>Gain calibration table(s) to apply on the fly |
290 + | Subparameter of callib=False |
291 + | default: '' (none) |
292 + | |
293 + | Examples: gaintable='ngc5921.gcal' |
294 + | gaintable=['ngc5921.ampcal','ngc5921.phcal'] |
295 + | </description> |
296 + | <value/> |
297 + | </param> |
298 + | |
299 + | <param subparam="true" name="gainfield" type="stringVec"> |
300 + | <shortdescription>Select a subset of calibrators from gaintable(s)</shortdescription> |
301 + | <description>Select a subset of calibrators from gaintable(s) |
302 + | Subparameter of callib=False |
303 + | default:'' --> all sources in table |
304 + | |
305 + | gaintable='nearest' --> nearest (on sky) |
306 + | available field in table. Otherwise, same syntax |
307 + | as field |
308 + | |
309 + | Examples: |
310 + | gainfield='0~2,5' means use fields 0,1,2,5 |
311 + | from gaintable |
312 + | gainfield=['0~3','4~6'] means use field 0 |
313 + | through 3 from first gain file, field 4 |
314 + | through 6 for second. |
315 + | </description> |
316 + | <value/> |
317 + | </param> |
318 + | |
319 + | <param subparam="true" name="interp" type="stringVec"> |
320 + | <shortdescription>Interpolation parameters for each gaintable, as a list</shortdescription> |
321 + | <description>Interpolation parmameters (in time[,freq]) for each gaintable, as a list of strings. |
322 + | Default: '' --> 'linear,linear' for all gaintable(s) |
323 + | Options: Time: 'nearest', 'linear' |
324 + | Freq: 'nearest', 'linear', 'cubic', |
325 + | 'spline' |
326 + | Specify a list of strings, aligned with the list of caltable specified |
327 + | in gaintable, that contain the required interpolation parameters |
328 + | for each caltable. |
329 + | * When frequency interpolation is relevant (B, Df, |
330 + | Xf), separate time-dependent and freq-dependent |
331 + | interp types with a comma (freq_after_ the |
332 + | comma). |
333 + | * Specifications for frequency are ignored when the |
334 + | calibration table has no channel-dependence. |
335 + | * Time-dependent interp options ending in 'PD' |
336 + | enable a "phase delay" correction per spw for |
337 + | non-channel-dependent calibration types. |
338 + | * For multi-obsId datasets, 'perobs' can be |
339 + | appended to the time-dependent interpolation |
340 + | specification to enforce obsId boundaries when |
341 + | interpolating in time. |
342 + | * Freq-dependent interp options can have 'flag' appended |
343 + | to enforce channel-dependent flagging, and/or 'rel' |
344 + | appended to invoke relative frequency interpolation |
345 + | |
346 + | Examples: |
347 + | interp='nearest' (in time, freq-dep will be |
348 + | linear, if relevant) |
349 + | interp='linear,cubic' (linear in time, cubic |
350 + | in freq) |
351 + | interp='linearperobs,splineflag' (linear in |
352 + | time per obsId, spline in freq with |
353 + | channelized flagging) |
354 + | interp='nearest,linearflagrel' (nearest in |
355 + | time, linear in freq with with channelized |
356 + | flagging and relative-frequency interpolation) |
357 + | interp=',spline' (spline in freq; linear in |
358 + | time by default) |
359 + | interp=['nearest,spline','linear'] (for |
360 + | multiple gaintables) |
361 + | </description> |
362 + | <value/> |
363 + | </param> |
364 + | |
365 + | <param subparam="true" name="spwmap" type="intVec"> |
366 + | <shortdescription>Spectral windows combinations to form for gaintables(s)</shortdescription> |
367 + | <description>Spectral windows combinations to form for gaintables(s) |
368 + | Subparameter of callib=False |
369 + | default: [] (apply solutions from each spw to |
370 + | that spw only) |
371 + | |
372 + | Examples: |
373 + | spwmap=[0,0,1,1] means apply the caltable |
374 + | solutions from spw = 0 to the spw 0,1 and spw |
375 + | 1 to spw 2,3. |
376 + | spwmap=[[0,0,1,1],[0,1,0,1]] |
377 + | </description> |
378 + | <type>any</type> |
379 + | <value/> |
380 + | </param> |
381 + | |
382 + | <constraints> |
383 + | <when param="selectdata"> |
384 + | <equals value="True" type="bool"> |
385 + | <default param="timerange"><value type="string"/></default> |
386 + | <default param="antenna"><value type="string"/></default> |
387 + | <default param="scan"><value type="string"/></default> |
388 + | <default param="observation"><value type="string"/></default> |
389 + | <default param="msselect"><value type="string"/></default> |
390 + | </equals> |
391 + | <equals value="False" type="bool"/> |
392 + | </when> |
393 + | <when param="docallib"> |
394 + | <equals value="False" type="bool"> |
395 + | <default param="gaintable"><value type="stringVec"/></default> |
396 + | <default param="gainfield"><value type="stringVec"/></default> |
397 + | <default param="interp"><value type="stringVec"/></default> |
398 + | <default param="spwmap"><value type="intVec"/></default> |
399 + | </equals> |
400 + | <equals value="True" type="bool"> |
401 + | <default param="callib"><value type="string"/></default> |
402 + | </equals> |
403 + | </when> |
404 + | </constraints> |
405 + | </input> |
406 + | <example> |
407 + | For more information, see the task pages of accor in CASA Docs: |
408 + | |
409 + | https://casa.nrao.edu/casadocs/ |
410 + | </example> |
411 + | |
412 + | <returns>void</returns></task> |
413 + | </casaxml> |