; UVHOL ;--------------------------------------------------------------- ;! Prints holography data from a UV data base with calibration ;# TASK UV HARDCOPY CALIBRATION PLOT ;----------------------------------------------------------------------- ;; Copyright (C) 1999-2000, 2003-2007, 2009-2011, 2014-2018, 2020 ;; Associated Universities, Inc. Washington DC, USA. ;; ;; This program is free software; you can redistribute it and/or ;; modify it under the terms of the GNU General Public License as ;; published by the Free Software Foundation; either version 2 of ;; the License, or (at your option) any later version. ;; ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; ;; You should have received a copy of the GNU General Public ;; License along with this program; if not, write to the Free ;; Software Foundation, Inc., 675 Massachusetts Ave, Cambridge, ;; MA 02139, USA. ;; ;; Correspondence concerning AIPS should be addressed as follows: ;; Internet email: aipsmail@nrao.edu. ;; Postal address: AIPS Project Office ;; National Radio Astronomy Observatory ;; 520 Edgemont Road ;; Charlottesville, VA 22903-2475 USA ;----------------------------------------------------------------------- UVHOL LLLLLLLLLLLLUUUUUUUUUUUU CCCCCCCCCCCCCCCCCCCCCCCCCCCCC UVHOL Prints/writes holography data with calibration INNAME Input UV file name (name) INCLASS Input UV file name (class) INSEQ 0.0 9999.0 Input UV file name (seq. #) INDISK Input UV file disk unit # SOURCES Sources to print, ' '=>all. QUAL -10.0 Qualifier -1=>all CALCODE Calibrator code ' '=>all STOKES 'FULL' in HOLG for 4 output files, 'IQUV', 'IV' also SELBAND Bandwidth to select (kHz) SELFREQ Frequency to select (MHz) FREQID Freq. ID to select. TIMERANG Time range to select ANTENNAS Reference antennas BASELINE Moving antennas SUBARRAY 0.0 1000.0 Subarray, 0 => 1 ICHANSEL 0.0 4096.0 Spectral channels to average BIF IF number to print DOCALIB -1.0 101.0 > 0 calibrate data & weights > 99 do NOT calibrate weights GAINUSE CAL (CL or SN) table to apply DOPOL -1.0 10.0 If >0 correct polarization. PDVER PD table to apply (DOPOL>0) BLVER BL table to apply. FLAGVER Flag table version DOBAND -1.0 10.0 If >0 apply bandpass cal. Method used depends on value of DOBAND (see HELP file). BPVER Bandpass table version SMOOTH Smoothing function. See HELP SMOOTH for details. NCOUNT 0.0 30000.0 # of sample. 0 => 1 page. WTUV 0.0 1000.0 Scale UV (actually LM) by WTUV, 0 => 1 in HOLG, else 0 => 1000 OPTYPE Choice of format type: 'HOLG' write holography file 'PLOT' plot holography data new else print holography data NPOINTS 0.0 1000.0 Number of samples to keep at the end of each pointing Used if APARM(1) = 0 0 => 100 APARM (1) 0 => NPOINTS used 1 => APARM(2,3) used (2) number of samples dropped at the beginning of each pointing (3) number of samples dropped at the end of each pointing (4) > 0 write elevation and azimuth at beg/end of scan (5) > 0 => average data over reference antennas (6) > 0 => average each pointing over time (7) > 0 => display real/imag in 'HOLG' and 'PLOT' (8) > 0 => average data over moving antennas (9) > 0 => scalar amplitudes in time & antenna average (10) > 0 -> apply parallactic angle correction on DOPOL BDROP 0.0 1000.0 Minimum number of samples to keep the pointing at all DPARM 1 : <0 => Range of (U,V,W), amplitude and weight is determined automatically; >= 0 => Ranges are fixed minimize the run time. 2 : Maximum weight; 0 => 99.0 3 : Minimum weight; 0 => 0.11 4 : Maximum amplitude; 0=>9.9 5 : Maximum of ABS(U),ABS(V), ABS(W) in klambda; 0 => 10000 6 : > 0 -> PLOT data as power in db (20*log10) > 1.5 if 2 moving ants in db (10*log10) 7 : > 0 plot phase or imag 8 : > 0 solve sidelobes 10 : > 0 scale by flux in SU DOCRT -3.0 132.0 > 0 -> use the terminal, else use the line printer > 72 => terminal width OUTPRINT Printer disk file to save HOLG: area to write outputs PIXRANGE (2) > (1) -> fix plot scale FACTOR -1000.0 1000.0 Scale dots by FACTOR < 0 => connect dots too SYMBOL 0.0 24.0 Plot symbol number: 1 - 24 DO3COLOR -1.0 1.0 > 0 use color to separate polarizations LTYPE -410.0 410.0 Type of labeling: 1 border, 2 no ticks, 3 - 6 standard, 7 - 10 only tick labels <0 -> no date/time DOTV -10.0 10.0 > 0 Do plot on the TV, else make a plot file GRCHAN 0.0 8.0 Graphics channel 0 => 1. XYRATIO 0.0 X/Y ratio 0 -> fit TV or 1 PL BADDISK Disk to avoid for scratch. ---------------------------------------------------------------- UVHOL Type: Task Use: Prints holography data from a u,v data base, optionally making retained text files. UVHOL is similar to UVPRT, but does only the special holography modes which used to be a part of UVPRT. These include printing for display purposes and the ability to write files for input to HOLOG (which replaced HOLGR). It also has the option to plot holography data rather than print. Adverbs: INNAME.....Input UV file name (name) Standard defaults. INCLASS....Input UV file name (class) Standard defaults. INSEQ......Input UV file name (seq. #) 0 => highest. INDISK.....Disk drive # of input UV file. 0 => any. SOURCES....List of sources to be printed. ' '=> all; if any starts with a '-' then all except ANY source named. QUAL.......Qualifier of source to be printed. -1 => all. CALCODE....Calibrator code of sources to print. ' '=> all. STOKES.....The usual Stokes parameter. In HOLG mode, FULL means to write all 4 polarizations to disk files, IQUV means to write all 4 Stokes polarizations, IV means to write the two parallel hand Stokes, otherwise RR and LL only are written. When simply printing, STOKES beginning with I means 'IQUV', otherwise FULL is used. When plotting STOKES values of 'HALF', 'IV', and 'IQUV' are used. If fewer than 4 Stokes are available, the task takes appropriate action in the STOKES adverb. SELBAND....Bandwidth of data to be selected. If more than one IF is present SELBAND is the width of the first IF required. Units = kHz. For data which contain multiple bandwidths/frequencies the task will insist that some form of selection be made by frequency or bandwidth. SELFREQ....Frequency of data to be selected. If more than one IF is present SELFREQ is the frequency of the first IF required. Units = MHz. FREQID.....Frequency identifier to select (you may determine which is applicable from the OPTYPE='SCAN' listing produced by LISTR). If either SELBAND or SELFREQ are set, their values overide that of FREQID. However, setting SELBAND and SELFREQ may result in an ambiguity. In that case, the task will request that you use FREQID. If all SELBAND, SELFREQ and FREQID are not specified (.le. 0) then all FQ ids will be selected. TIMERANG...Time range of the data to be printed. In order: Start day, hour, min. sec, end day, hour, min. sec. Days relative to reference date. ANTENNAS...A list of the reference antennas to print. At least one must be given. The first is used to name the output file in HOLG mode. BASELINE...A list of the moving antennas. At least one must be given. SUBARRAY...Subarray number to print. 0 => 1. ICHANSEL.. Array of start, stop, and increment channel numbers plus an IF used for channel selection in the averaging to compute data displayed. Up to 20 sets of channels/IF may be entered. The first having ICHANSEL(2,i) <= 0 terminates the list. ICHANSEL(4,i) is the IF number, with <= 0 meaning all IFs. If an IF has no ICHANSEL set for it, then the inner 75% of that IF is used. Note that only the values for IF # = BIF are actually used. BIF........IF number to print. 0 => 1 DOCALIB....If true (>0), calibrate the data using information in the specified Cal (CL) table for multi-source or SN table for single-source data. Also calibrate the weights unless DOCALIB > 99 (use this for old non-physical weights). GAINUSE....Version number of the Cal. table to apply to the data if DOCALIB=1. Refers to a CL table for multi-source data or an SN table for single source. 0 => highest. DOPOL......If > 0 then correct data for instrumental polarization as represented in the AN or PD table. This correction is only useful if PCAL has been run or feed polarization parameters have been otherwise obtained. See HELP DOPOL for available correction modes: 1 is normal, 2 and 3 are for VLBI. 1-3 use a PD table if available; 6, 7, 8 are the same but use the AN (continuum solution) even if a PD table is present. PDVER......PD table to apply if PCAL was run with SPECTRAL true and 0 < DOPOL < 6. <= 0 => highest. BLVER......Version number of the baseline based calibration (BL) table to apply. <0 => apply no BL table, 0 => highest. FLAGVER....Specifies the version of the flagging table to be applied. 0 => highest numbered table. <0 => no flagging to be applied. DOBAND.....(multisource) If true (>0) then correct the data for the shape of the antenna bandpasses using the BP table specified by BPVER. The correction has five modes: (a) if DOBAND=1 all entries for an antenna in the table are averaged together before correcting the data. (b) if DOBAND=2 the entry nearest in time (including solution weights) is used to correct the data. (c) if DOBAND=3 the table entries are interpolated in time (using solution weights) and the data are then corrected. (d) if DOBAND=4 the entry nearest in time (ignoring solution weights) is used to correct the data. (e) if DOBAND=5 the table entries are interpolated in time (ignoring solution weights) and the data are then corrected. BPVER......(multi-source) specifies the version of the BP table to be applied. 0 => highest numbered table. SMOOTH.....Specifies the type of spectral smoothing to be applied to a uv database . The default is not to apply any smoothing. The elements of SMOOTH are as follows: SMOOTH(1) = type of smoothing to apply: 0 => no smoothing To smooth before applying bandpass calibration 1 => Hanning, 2 => Gaussian, 3 => Boxcar, 4 => Sinc To smooth after applying bandpass calibration 5 => Hanning, 6 => Gaussian, 7 => Boxcar, 8 => Sinc SMOOTH(2) = the "diameter" of the function, i.e. width between first nulls of Hanning triangle and sinc function, FWHM of Gaussian, width of Boxcar. Defaults (if < 0.1) are 4, 2, 2 and 3 channels for SMOOTH(1) = 1 - 4 and 5 - 8, resp. SMOOTH(3) = the diameter over which the convolving function has value - in channels. Defaults: 1,3,1,4 times SMOOTH(2) used when input SMOOTH(3) < net SMOOTH(2). NCOUNT.....List NCOUNT data points (after all data selection has been applied). 0 => 1 page listed. UVHOL will list up to 30000 visibilities. This limit does not apply to HOLG. Be aware that UVHOL now goes through the data to be printed twice, once to determine the u-v-w, data, and weight ranges and the second time to print things. Using NCOUNT to reduce the time required by the first pass helps when DOCRT is true. WTUV.......Scale the "U" and "V" (actually sin^(-1)(theta) - the offset angle) values. For HOLO, 0 => 1000. For HOLG, < 0.1 and > 10.0 are changed to 1.0. ******************************************************** NOTE: this scaling may be required for HOLG to undo scaling done when selecting an IF in AIPS tasks such as UVCOP. All such tasks must scale u,v,w by the ratio of the old reference frequency to the new reference frequency. This is correct for the calibration scans in the holography data set, but not for the actual holography scans. Use WTUV to undo this scaling. ******************************************************** OPTYPE.....OPeration code to change details of the format: 'HOLG' => write holography data from one or more antenna pairs to 2 or 4 files per pair for use in HOLOG (No normal printing is done.) Each line has 6 numbers: u, v, real, imag, uncertainty in real, and in imag or u, v, amplitude, phase, uncerainty in amp and in phase uncertainties are those in the mean numbers (i.e. divided by sqrt(N-1)) 'PLOT' => make one or more plots of the holography data, APARM(7), DPARM(6), DPARM(7) control what is plotted while adverbs PIXRANGE through XYRATIO convey normal plot controls. otherwise => print only holography data from one or more antenna pairs. NPOINTS....Retain the last NPOINTS samples from each pointing. Note that pointings are indicated by the W term in the U,V,W triplet. For holography, W = 40000+X where X is a counter referring to the pointing or dwell currently selected. The first samples for each dwell are suspect since not all antennas have settled down. This option allows you to select only the last NPOINTS samples. 0 -> 100 (the upper limit). APARM......(1) 0 => option determined by NPOINTS is used 1 => option determined by APARM(2,3) is used (2) number of samples dropped at the beginning of each pointing (3) number of samples dropped at the end of each pointing (4) >0 write elevation and azimuth at begining and end of scans (only for OPTYPE = 'HOLG') (5) > 0 => average each baseline between a moving antenna reference antenna over all reference antennas (6) > 0 => average all retained samples for each pointing (7) > 0 => display real and imaginary, otherwise amplitude and phase (HOLG and PLOT only, amp and phase printed on other OPTYPEs) (8) > 0 => average each baseline with reference antenna(s) of all moving antennas. (9) > 0 => vector average data over spectral channels but then display scalar average amplitudes when averaging over time, reference antennas, and/or moving antennas. (10) For antenna-based display one does not want to apply the parallactic angle correction when applying the polarization D terms. To apply them, set APARM(10)>0 for displays in source coordinates. BDROP......If a pointing has fewer than BDROP samples, then drop it entirely. No default - 0 and 1 mean keep all. Note that this is the total number of samples, not those after application of APARM(2) and APARM(3) (or NPOINTS). DPARM......Range of (U,V,W), amplitude and weight: (1) : < 0 => Range of (U,V,W), amplitude and weight is determined automatically; If the data are large, the time for required additional pass of the data to provide the scaling can be rather large. To eliminate this extra pass use DPARM(1)=0. >= 0 => The ranges are fixed to the following values: (2) : Maximum weight; 0 => 99.0 (3) : Minimum weight; 0 => 0.11 (4) : Maximum amplitude; 0=>9.9 (5) : Maximum of ABS(U),ABS(V),ABS(W) in lambda times WTUV (normally klambda); 0 => 10000 (6) : > 1.5 -> Plot 10 * LOG10 (amp) rather than amplitude This is appropriate when both antennas are moving > 0 but <= 1.5 -> Plot 20 * LOG10 (amp) rather than amplitude only applied to amplitude, not real, imaginary, or phase, appropriate when only one antenna is moving (7) : > 0 -> Plot phase or imaginary, else amplitude or real (8) > 0 => try to find opposite sidelobes and their ratio in db computed based on DPARM(6) with 20*LOG10(amp) when DPARM(6) < 1.5 and 10*LOG10(amp) otherwise. DOCRT......False (<= 0) use the line printer if OUTPRINT = ' ' else write named OUTPRINT file only. When OUTPRINT is not blank, DOCRT=-2 suppresses the page-feed character on page headers and DOCRT=-3 suppresses page headers and most other header information (non-HOLG mode). When OUTPRINT is blank, the line printer will be used. UVHOL now counts the lines to be printed before printing any and asks for permission to continue if the count > 500. True (> 0) use the terminal interactively. The task will use the actual terminal width as a display limit unless 72 < DOCRT < width. In that case, the display limit will be DOCRT characters. 132 width is best. OUTPRINT...Disk file name in which to save the line printer output. ' ' => use scratch and print immediately for interactive jobs - batch jobs use OUTPRINT = 'PRTFIL:BATCHjjj.nnn' (jjj= job #, nnn = user #). When OUTPRINT is not blank, multiple outputs are concatenated, and the file is not actually printed. For HOLG mode only, OUTPRINT may give the name of a logical area plus optional file name to which to write the HOLOG data files (e.g. OUTPR = 'MYAREA' or OUTPR = 'MYAREA:xxx', where xxx can be anything and MYAREA is a logical area defined before starting AIPS in the usual way). If OUTPRINT gives only a logical name, then the name HOLOnn-mmppii is used where nn is the reference antenna (BASELINE(j)), mm is the antenna (or 0 if multiple), pp are 2 letters giving the polarization, and ii is the IF. If xxx is not blank, then the output name is xxx (any number of letters) with ppii concatenated. If OUTPRINT is blank, then the disk area where you were when you started AIPS is used. If OUTPRINT = 'xxx', xxx will be taken to be a disk area environment name. Adverbs for PLOT mode: PIXRANGE...If PIXR(1) < PIXR(2), all plots will be from PIXR(1) to PIXR(2). Otherwise each plot will be self-scaling. FACTOR.....Scale plot symbols by FACTOR 0 -> 1. If FACTOR < 0, draw lines between the points and use abs(FACTOR) to scale the points plotted. SYMBOL.....1: Plus sign (default) 12: Five pointed star 2: Cross (X) 13: Star of David 3: Circle 14: Seven-pointed star 4: Box 15: Eight-pointed star 5: Triangle 16: Nine-pointed star 6: Diamond 17: Ten-pointed star 7: Pentagon 18: 11-pointed star 8: Hexagon 19: 12-pointed star 9: Septagon 20: 13-pointed star 10: Octagon 21: 14-pointed star 11: Nine-gon 22: Plus with gap 23: vertical line 24: Cross with gap DO3COLOR...<= 0 use line type 4 for all points plotted > 0 use up to 4 line types for polarizations with yellow for I, RR, XX, green for Q. LL, YY, pink for U, RL, XY, and cyan for V, LR, YX. The colors will be different if you have changed the standard graphics colors. The Stokes string for each color will appear in the upper left of the plot. NOTE: GRCHAN must be 0 for this to work. LTYPE......Labelling type, see HELP LTYPE for details: 1 = border, 2 = no ticks, 3 or 7 = standard, 4 or 8 = relative to ref. pixel, 5 or 9 = relative to subimage (BLC, TRC) center, 6 or 10 = pixels. 7-10 all labels other than tick numbers and axis type are omitted. Less than 0 is the same except that the plot file version number and create time are omitted. Add n * 100 to alter the metric scaling. DOTV.......> 0 => plot directly on the TV device, otherwise make a plot file for later display on one or more devices (including the TV if desired). Leave 0 if DO3COLOR > 0. GRCHAN.....Graphics channel (1 - 7) to use for line drawing. A value of 0 causes more than one graphics channel to be used. XYRATIO....Scale the X axis longer than the Y by XYRATIO. If DOTV > 0, 0 -> fit to the TV window If DOTV <= 0, 0 -> 1. BADDISK....Disk numbers to avoid for scratch files. Scratch files may be created by the sorting routines if calibration or flagging is applied. ---------------------------------------------------------------- Special notes on holography data HOLG modes FOR THE OLD VLA. EVLA does not use the 40000 offset but forces the source name to HOLORASTER. (1) Any included data that does not have a W > 40000 is assumed to be calibrator data and is ignored. The source qualifier of holography data must be at least 40000, that of calibrators must be less than 40000. (2) The W term is expected to be 40000 + 256*subqualifier + mode, where mode is supposed to be > 0. When mode is 0, the data are assumed to be taken during an antenna turn-around phase and are discarded. (3) When printing in these modes, the 40000 and n*256 parts of W are dropped. ----------------------------------------------------------------