----------------------------------------------------------------------- ; Copyright (C) 1995 ; 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 ----------------------------------------------------------------------- This file must be used to record any changes made to the the master version of AIPS kept in Charlottesville. An entry is: line 1: Date Program name Your name line 2: What was done line 3: Where has this change been moved (e.g. 15OCT90) line 4: Blank The details of line 1 are important since programs are used to find specified strings and do conversions on them. It MUST be typed as follows: 1 blank, 4 digits, a period, two blanks, then the Month, day, comma, year, some space, a title, some more space, your name. Changes to 15OCT92 *********************************************************************** Changes while 15OCT92 was TST: *********************************************************************** *********************************************************************** 6934. April 10, 1992 MX.FOR Glen Well the first bug of Oct92 was one I inserted last week. MX had a little logic error for creating images sizes 2048 and 4096. I will move the fix to New/Old shortly. 6935. April 14, 1992 APLPGM:UVPOL Bill C. New task to modify a set of uv data to allow making a set of complex images and beams when some data has only one cross polarized correlation. UVPOL has two options; 'WEIG' to set all invalid weights to the average of the valid weights. 'DATA' also replaces data with (1,0) to allow making a complex beam. Moved nowhere. 6936. April 14, 1992 RUNSYS:CXPOLN.001 Bill C. New procedure. A run file to define this procedure and a HELP file are provided. This procedure uses UVPOL and MX to create sets of complex dirty and beam images. Moved nowhere. 6937. April 14, 1992 CATDIR Eric Changed CATDIR operations SRCH and SRCN to return the status string. This will let calling programs test it right off without an INFO call. Few do as yet. Also changed FILDES to remove an unnecessary equivalence to STAT which could now be naughty. Moved to 15APR92 earlier. 6938. April 14, 1992 TVFLG Eric (1) Corrected GRIDTB to handle the ANTENNAS and BASELINE arrays in a more normal fashion. If ANTENNAS = list and BASELINE = 0, all data were rejected before. (2) Changed SPFLG and TVFLG to avoid extreme rounding and offsets for small basic integration times on the VLA especially, but get reasonably correct times when the input has a long integration time. (3) Changed SPFLG and TVFLG to check the input file status and to die if it is not REST. This prevents frustrating semi-failures much later in the process. (4) Changed both and their help files to allow NORR and NOLL to mean 0111 and 1011 respectively and to display a little more information and the prompt for the Stokes flag pattern. (5) Corrected TVFOAD to sort the scan average data by length in the difference modes. (6) Changed TVFLG and SPFLG menus around and reworded some of the choices. Made them explicit about the alternative sort order and Stokes. (7) Changed TVFLG and SPFLG help files to correct the references to which sources get flagged in the FG table. That is now under user control (and has been for a while). (8) Fixed data selection errors in GRIDTB when gridding cross-hand data from compressed data sets. (9) Fixed explain parts of help files for new command order and names. Moved to 15APR92 April 20. 6939. April 9, 1992 ZMOUNR Eric Changed ZMOUNR to get the remote tape drive number from the tape drive logical name for dismounts. Otherwise the user had to set REMTAPE for DISMOUNT as well as MOUNT. Moved to 15APR92 April 20. 6940. April 15, 1992 ZCRLOG Eric Kerry apparently decided that colons were not acceptable ("damn VMSisms") in environment variable values and wrote some code intended to remove them. Fortunately it failed miserably. If it had worked, none of the remote tape things would have worked! Changed $APLUNIX (really BELL) and $APLBERK versions to allow any characters in the environment variable value including imbedded blanks. The string is terminated at the last non-blank, a null, or its stated length. Moved to 15APR92 April 20. 6941. April 15, 1992 CVEL Phil A minor fix from Henrietta that enabled bandpass corrections to work properly for uncompressed data. They were fine for compressed data. A major fix from me, the autocorrelation data were being shifted the wrong way again. I say again because I KNOW I fixed this bleeding fault aeons ago, but somewhere along the line the wrong version must have been slipped back in again. I think we also need VLBI DDT's more and more these days. Moved nowhere, but should go into 15APR92. 6942. April 16, 1992 CXPOLN.001 Bill C. It wasn't resetting the shift to 0 before making the beam. Moved nowhere. 6943. April 16, 1992 CVEL Phil Henrietta's fix was close but did not quite fix all cases. The correct fix was at a subroutine one level up. Will now work correctly for compressed and uncompressed data when applying bandpasses. Moved nowhere, but should go into 15APR92. 6944. April 16, 1992 TVDEVS.SH Mark/Eric Corrected $SYSUNIX/TVDEVS.SH. It was not assigning the TK device correctly. It was working, so it must have been okay once in the plain-text version, but not putbck properly. Moved to 15APR92 April 20. 6945. April 18, 1992 TEKSERVER Eric Changed $APLBERK/ZTKOP2.C to omit the initialize string on opens. It is needed the first time, but interferes with position reads thereafter. Changed $AIPNOT/TEKSERVER.C to do the initialize string on its first time and corrected the test for GIN mode. It was depending on the switch to GIN characters being the first (and only) bytes sent by the host, while it should have checked for them being the last 2 bytes sent. Often hosts buffer multiple writes, but these will be the last 2 bytes before a 5-byte read. It seems to do cursor reads now. Moved to 15APR92 April 20. 6946. April 21, 1992 LISTR Phil Finally fixed the problem with the matrix average of phases close to 180 degrees. The correct value and sigma are now printed out. Also made a few minor cosmetic changes to the printouts. Moved to 15APR92 today. 6947. April 21, 1992 UVGLU Eric Corrected logic error setting LREC2 and LRECO - usually were equal to NRPARM! Also fixed lower case comment characters and a bad common alignment of the header blocks. Moved from AOC today. 6948. April 23, 1992 SPLIT + $APLNOT/SOUNDX Glen Fixed SPLIT creating duplicate copies of data when uvdata contain observations of a source at more than one FREQID. SPLIT uses a subroutine SOUFIL to make a list of requested source id numbers. This list contains an entry for each FREQID. The new subroutine SOUNDX removes id numbers not corresponding to the requested FREQID. SOUNDX also does the correct thing when a list of excluded sources is input to SPLIT. The TELTYP.EQ.'ATCA' hack remains in SPLIT, but the problem fixed by this hack should (?) be fixed by this change. Moved nowhere. 6949. April 23, 1992 TVFLG, SPFLG Eric Changed: (1) GRIDTB to remove diagnostic messages inadvertantly left in. (2) TVFOAD and SPFOAD moved from $APLNOT to $YSUB where they belong. (3) TVFLG and SPFLG to correct a notation of when the graphics planes neede zeroing. (4) TVFLG and SPFLG to prevent the TVTRANSF plot from being seen unless it is actually requested via a button push. Moved ideas from AOC this date. 6950. April 23, 1992 Tv routines Eric Changed (1) GRBOXS, GRPOLY, GRLUTS to force the graphics channel to be on whether or not we currently think it is already on. (2) IENHNS to turn off graphics channel 1 before drawing the plot of the LUT. It turns it on when (if) it is actually needed. Moved ideas from AOC this date. 6951. April 23, 1992 ZLASOP Eric Corrected OPEN statement. RECL is allowed in standard Fortran only for DIRECT IO which was not needed here. In fact, no current program uses the operation code for which long lines were required. Moved ideas from AOC this date. 6952. April 24, 1992 HYB.001/HYB.HLP Craig, Phil New procedure to run a simple hybrid mapping loop with CALIB + MX. The twist on this one is that the user can edit the CC file being passed to CALIB before the self-cal. So only CC's from a specified area and above a specified flux level are used. The resultant image is CNTR'd and plotted via LWPLA. Moved nowhere. 6953. April 27, 1992 TVDIC in YPGNOT Chris Replacement task for TVFLM. This one will work on {\it any\/} AIPS TV at the cost of not reproducing zoom and scroll. Dicomed specific code has been isolated in Z-routines so that it should be relatively simple to convert for other hard-copy devices. The following files were added to the system or modified. $YPGNOT:TVDIC.FOR - main program (new) $HLPFIL:TVDIC.HLP - help/explain file (new) $HLPFIL:POPSDAT.HLP - (modified to add FLMCOMM adverb) $HLPFIL:FLMCOMM.HLP - documentation for FLMCOMM adverb (new) $APLGEN:ZDICOP.FOR - open Dicomed file - stub (new) $APLGEN:ZDICIO.FOR - write to Dicomed file - stub (new) $APLGEN:ZDICCL.FOR - close Dicomed file -stub (new) $APLUNIX:ZDICOP.FOR - open Dicomed file (new) $APLUNIX:ZDICO2.C - open Dicomed file (new) $APLUNIX:ZDICIO.C - write to Dicomed file (new) $APLUNIX:ZDICCL.FOR - close Dicomed file (new) $APLUNIX:ZDICC2.C - close Dicomed file (new) $SYSUNIX:ZDICC2 - shell script to support ZDICC2.C (new) The UNIX Z-routines should really be rewritten to use the AIPS I/O system but the current kludgy versions should be good enough until we replace the Dicomeds. Moved nowhere. 6954. April 27, 1992 UVM... Eric Changed OVERRIDING user-supplied method message, mostly to point out when the DFT is chosen because of sort order, in UVMSUB and UVMDIV. Changed UVMTYP to initialize the 2 times to 0. Moved nowhere. 6955. April 28, 1992 $SYSUNIX Eric Changed ZLPCL2 to simply specify lwf rather than the very non-standard /local/bin/lwf. (It is normally in /usr/local/bin/lwf.) Also changed TVDEVS.SH to add 2 computers at the AOC. Moved from the VLA. 6956. April 28, 1992 YGRAFX Eric/Mark Added the capability of reading and writing the graphics and cursor colors. Changed: YGRAFX $YGEN: stub YGRAFX $YSS: new, sends commands to Screen Servers which have supported them for some time. Note: colors are not forced by YINIT, etc. They are set by the Servers from internal colors and the user's .Xdefaults file. YGRAFX $YIIS: new, uses YBUFF(1-8) in TV common, calls YGRAPH YGRAPH $YIIS: add operation INIT, change to use YBUFF values YINIT $YM70: added call to YGRAPH (INIT) YINIT $YM75: added call to YGRAPH (INIT) YGRAFX $YIVAS: new, uses YBUFF(18-22) in TV common, calls YGRAPH YGRAPH $YIVAS: add operation INIT, change to use YBUFF values YINIT $YIVAS: changed to call YGRAPH (INIT) and YGRAPH for each channel and the cursor YDEA.INC $INC: added parameter GRPHCL to point into YBUFF for colors YGRAFX $YDEA: new, uses YBUFF(GRPHCL...) in TV common, calls YGRAPH YGRAPH $YDEA: add operation INIT, change to use YBUFF values, corrected to set cursor colors too YINIT $YDEA: changed to call YGRAPH (INIT) and YGRAPH for the cursor YGRAFX $YVTV: new, passes call on to TVMON YGRAPH $YVTV: added support for INIT, though shouldn't be needed TVMON Added support for INIT in YGRAPH and added YGRAFX support. Moved nowhere. 6957. April 28, 1992 TVDIC Chris Fixed a bug in handling GRCHAN (I forgot that POPS passes all numeric parameters as floating-point numbers) and changed the adverb list so that the number of copies to be produced is specified using COPIES rather than APARM(3). Moved nowhere. 6958. April 29, 1992 TVDIC Chris Now uses YGRAFX to read colours of graphics channels. Moved nowhere. 6959. April 29, 1992 DBCON Eric Changed it to correct u,v,w to make the frequency reference channel = channel 1. This will allow SPLIT multi-channel data, SPLIT 1 channel at a time, to be DBCONed and mapped at the correct location in the u,v plane. Moved nowhere. 6960. April 30, 1992 FNDPOL Neil/Phil A rewrite of the stokes string checking subroutine. Should work in a generally more sensible fashion now. Moved nowhere. 6961. April 30, 1992 VBPLT Phil VBPLT was not dealing correctly with subarrays. When asked to plot subarray 2 against CC ver 2. It would plot subarray 1's data but label it with subarray 2's antennas and put the correct CC file on top. Now does this correctly. Also added the version of the CC file being plotted on the plot header. Also added the BLVER adverb so that BL corrections can be apllied prior to plotting. Changed VBPLT.HLP for BLVER. Moved nowhere. 6962. May 4, 1992 TVDEVS.SH Dave A. Added new workstations to the AOC section of TVDEVS.SH Moved nowhere. 6963. May 5, 1992 UVPLT Phil When plotting a multi-source file with user specified scaling and plotting data from a specific source. The source name was not appearing on the plot. That was because the necessary parameters were set up inside the scaling routine. Fixed. Moved nowhere. 6964. May 5, 1992 time system changes Bill C. The time system associated with AIPS time labels for uv data was formerly assumed to be IAT. The new scheme will allow any system with a fixed offset from UTC. This offset is carried in the AN table as is a character string label for the time system. No systematic attempt has been made to get the labels on plots and listings correct. The following subroutines/tasks have been changed: -ANTINI Deals with change in name change of keyword 'IATUTC' to DATUTC and adding time system label. If 'IATUTC' keyword is present it will be used rather than DATUTC. No longer incudes DANT.INC. The changes involve a change to the call sequence. -ANTDAT New ANTIN call. -AVER New CALL to ANTINI and IATUTC=> DATUTC. -BLFIT New call to ANTINI -BPASS New call to ANTINI -CALIB New call to ANTINI -CLCOR New call to ANTINI -CVEL New call to ANTINI, also no longer tries to determine IAT-UTC if this value is 0. -DANT.INC New/renamed arguments for ANTINI. Also added a common with all the variables to keep compilers from complaining. -DANS.INC Added time system label. -DBCON New call to ANTINI; check that Time systems are the same. -FILLM Fixed call to ANTINI. -FILLR Fixed call to ANTINI. -FITTP New ANTINI call. -FRING New ANTINI call. -GETANT New call sequence for ANTINI. Passes time system label by common. -GETNAN New ANTINI call -IM2UV New ANTINI call -MK3IN New ANTINI call. -PCAL New ANTINI call -PDRGET New ANTINI call -PDRSET New ANTINI call -PRTAN New ANTINI call; new labeling for display of time. -PRTGA New ANTINI call; new labeling for display of time. -SDTUV New ANTINI call. -SETAN New ANTINI call. -TABAN No longer includes DANT.INC, explicit declarations are made. -UVAVG New ANTINI call. -UVCOP New ANTINI call. -UVFIL New ANTINI call. -UVFIX New ANTINI call; zero time-UTC no longer replaced with approximation for IAT-UTC. -UVLOD New ANTINI call -UVSIM New ANTINI call -VBMRG New ANTINI call -VLBIN Fixed call to ANTINI. Changed time to UTC. Now writes dummy AN table entries for any antennas specified but not found. -UPDAT Fixed problems related to change in DANT.INC -FRPLT New ANTINI call -GAPLT New ANTINI call -POSSM New ANTINI call -TVFLG New ANTINI call -VBPLT New ANTINI call Moved nowhere 6965. May 5, 1992 CL and SN table changes Bill C. The CL and SN tables were changed to include a multiband delay column for each polarization. This multiband delay is not a part of the residual calibration but is kept for model accountability. Also the phase for each IF is at the reference channel for that IF rather than at the reference frequency. This means that this phase is no longer a function of the single band delay. The system temperature values were removed from the CL table. The model accountability in the CL table has been changed. The geometric portion of the model delay is given as a time series polynomial (GEODLY) and GEOPHA and GEORAT have been removed. The is a single atmospheric group delay and first time derivative per antenna/time (ATMOS and DATMOS). Each polarization has a separate clock epoch and rate error (CLOCK n, DCLOCK n). Each polarization also has a dispersive term (DISP n and DDISP n) which is the phase delay at a wavelength of 1 m and scaled as wavewlength**2. A Doppler tracking offset for each IF remains. These changes affected the following: -ACFIT Fixed call to TABSN,SNINI. Removed TAB characters. -BLFIT Fixed call to TABSN,SNINI -CALIB Fixed call to TABSN, SNINI -CALINI Modified for MB delay, total delay polynomial, remove Tsys. -CALADJ Fixed call to SNINI, new PSNTAB.INC -CLCAL Fixed call to SNINI, CALINI -CLCOR Modified for new CL tables, new CALINI call. Fixed up how the interferometer model was updated. -CLREFM Modified to look for REVISION keyword, new call to TABCAL. Converts model accountability values and changes the IF phases to IF reference channel. -CLSEL New CALINI call, new TABCAL call. -CLSMO Fixed call to CALINI. -CSLGET Fixed equivalences with CLKOLS to use parameters in DSEL.INC -DATCAL Don't add phase term due to delay for IF offset. -DSEL.INC Added parameters as pointers to columns in the CL/SN table. -FILLM Fixed call to CALINI, TABCAL. -FILLR Fixed call to CALINI, TABCAL. -FRING Writes MB and SB delays in SN table, phases referenced to IF ref. freq.. Fixed call to SNINI. -GAININ Look up column pointers needed for CL/SN table. Coordinated with parameters in DSEL.INC. -GETJY Fixed call to SNINI, new PSNTAB.INC -INDXR Fixed call to CALINI, TABCAL. -LISTR New call sequences for CALINI, SNINI. -MULTI New call sequence to CALINI; Changed hard coded 19 to MAXSUC. New call to TABCAL. -PCLTAB.INC Updated for MB delays, new CL table, general overhaul; added current revision number -PSNTAB.INC Updated for MB delays, general overhaul; added current revision number. -PUVD.INC Increased MAXSNC by 2. MAXCLC dropped to 33. -SNAPP Fixed call to SNINI, new PSNTAB.INC -SNCOR Fixed call to SNINI, new PSNTAB.INC -SN2CL Update multiband delays., new PSNTAB.INC, PCLTAB.INC Fixed call to CALINI. Removed any modification of the interferometer model. -SNINI Modified for MB delay, dropped SNTYPE argument. General overhaul. -SNSEL New SNINI call, new TABSN call. -SNSMO (subroutine) New SNINI call, new PSNTAB.INC -SNSMO (task) Rewrote. Fixed call to SNINI, new PSNTAB.INC -SNSMO.HLP Rewrote -SNREFM Modified to look for REVISION keyword, new call to TABSN,SNINI. Older version didn't write new table; i.e. has never worked! Changed IF phase reference frequency to IN reference channel. -SWPOL Modified SN portion for MB delays. Fixed call to SNINI, CALINI TABCAL. -TABCAL Modified for MB delay, total delay polynomial, Remove Tsys. General overhaul. -TABSN Modified for MB delay, general overhaul. -UNCAL Fixed call to CALINI, TABCAL. -VLBIN Fixed call to CALINI, TABCAL, ANTINI. Changed time to UTC. Now writes dummy AN table entries for any antennas specified but not found. Moved nowhere 6966. May 5, 1992 PUVD.INC Bill C. Changed the maximum number of IFs to 28 for MkIII VLBI. Massive recompiles and links are needed to implement this parameter change. 6967. May 5, 1992 MK3IN Bill C. Change frequency sampling by half a frequency cell to avoid the zero frequency. Added routine ATFSHT for this purpose. This allows recovery of the full observed bandwidth. For double sideband observations the number of frequency channel has now increased by one. Modified to optionally (APARM(7>0) seperate the sidebands into different frequencies. This is limited by the maximum number of IFs in AIPS. Modified IF frequency lists by including all frequencies found for a given scan. The Haystack correlators sometimes do not correlate bad data and the frequency list can be baseline dependent. Remove a number of unused but declared variables. Added a cal to GTTELL to see if the user had requested it to quit. Also cleaned up the shutdown on error logic. Moved nowhere. 6968. May 6, 1992 Tsys tables Bill C. Modified TYINI and TABTY for more general use of Tsys tables. Added PTYTAB.INC for table pointers. Also added parameter MAXTYC in PUVD.INC. Added revision number keyword (initially = 10). Moved nowhere. 6969. May 6, 1992 ANCAL Bill C. Modified to use new TYINI and TABTY. No longer destroys TY table when done. Moved nowhere. 6970. May 7, 1992 VLA Solar Tsys corrections Bill C. Modified FILLM to write TY tables containing the information it used to put in the CL table. SOLCL now reads TY version 1 in parallel with the CL table to obtain the Tsys values that used to be in the CL table. This will work as long as there are exactly corresponding sets of records in the two tables. Moved nowhere. 6971. May 7, 1992 $QYPGNOT/MX.FOR Glen Mike Rupen found that MX is still not converging for some PBand data with the default MINPATCH=51. (MX seems to converge for larger patchs (MINPATCH=121)). My fix does not solve the problem, but cleans up from an ungraceful death. In my humble opinion, to really fix this problem requires more careful examination of the beam side lobes before starting a minor cycle. Moved to 15APR92 at the very last minute. 6972. May 7, 1992 SNPLT Bill C. Modified to read TY (system and antenna temperature table) as well as CL and SN. Added plotting of antenna temperatures, multiband delays, atmospheric delay and geometric delay. Modified labeling to give correct time system label. Also SNPLT.HLP. No longer reformats the CL table. Moved nowhere. 6973. May 8, 1992 VLBIN Phil Fixed a minor bug that crept in during the big changes just made. Some arrays were moved around and the code tidied up a little, this caused an array being used to store data to be written out to also be used as work arrays in the FFT routines. Fixed. Moved nowhere. 6974. May 8, 1992 FITLD Phil Had to increase an array size to be able to read the first VLBA fringes, the array was too small to deal with 4 IF's and 256 channels. Moved nowhere. 6975. May 11, 1992 ANCAL Bill C. Added trap to suppress interpretation of "CONTROL" cards after the first one in the user supplied calibration info table. The default was a "CONTROL" card and thus a blank entry was intrepreted as one and most of the relevant into was blanked. The VLBA was distributing calibration files with "/" card delimiters after comments which were being interpreted as new CONTROL cards. Thereafter ANCAL had no entries in its internal source table. Moved nowhere. 6976. May 12, 1992 Tape Z Eric Changed: ZCRLOG $APLBERK version: to create a large area to hold environment pointers. The Convex was sending in an array only large enough to create one new environment variable. ZMOUNT $APLGEN version: put the task name into the MSG variable as input to ZMOUN2. This is needed by the Convex version. Also changed the dummy name to "DISMOUNTED". ZMOUN2 $APLCVEX version: use the actual task name in the link-file name, not assume AIPS anymore. This avoids lots of confusion. TPMON Changed to use TPMON's POPS number in mounting the tapes, not that of the remote user (usually 1). Moved nowhere. 6977. May 15, 1992 $SYSUNIX/COMRPL/COMLNK/FC Glen Incorperating use of new OPTIMIZE.LIS file, which specifies Optimization of all AIPS FORTRAN code. Minor change to COMRPL and COMLNK to export $AREA, which is the original module directory (not $PREP) needed for optimization of a whole directory. Major changes to FC, now using two new bourne shell scripts, $SYSUNIX/FDEFAULT.SH and FCLEVEL.SH FCOPTS.SH is no longer used. Moved nowhere. 6978. May 15, 1992 $SYSUNIX/FDEFAULT.SH, FCLEVEL.SH Glen FDEFAULT.SH sets the compiler options for each type of CPU. (uses $ARCH to determine IBM, CONVEX or SUN). FCLEVEL.SH Reads the OPTIMIZE.LIS file and matches a file name, directory name or a keyword DEFAULT. Comments (#s) are ignored in OPTIMIZE.LIS. Had a terrible time with Bourne shells because variables may not be passed out of the right side of a pipe. the right hand side of a pipe is run as a sub process. Brian fixed FCLEVEL.SH by showing how to return a parameter with echo (ie x=`(echo y=junk)` ; eval $x ; echo $y ) Moved nowhere. 6979. May 20, 1992 $APLSUB/RSORT, RSWAP Glen Two general utility routines. RSWAP takes to real arguments and returns the values swapped. RSORT takes an array of real values and returns them sorted into decending order. Moved nowhere. 6980. May 20, 1992 Removed $APLNOT/ FILL1 FILL2 EMPTY1 EMPTY2 Glen Obsolete subroutines were lying unused for decades in $APLNOT. Removed them nowhere else. 6981. May 21, 1992 AIPS Object Oriented Fortran Bill C. Added the AIPS object oriented Fortran package to the system. Subroutines go in $APLOOP and $OOP and tasks into $APGOOP and $QPGOOP. The main class libraries go into $APLOOP and class utilities that use "Q" routines go into $QOOP. This system allows simplified access to AIPS images and tables. Class libraries are in a single file per class. Added the following tasks: CXCLN Complex deconvolution. CCGAU converts a CC file with point components to gaussians. TBSUB copies a selected subset of one table to another with possible renaming of the table and columns. Added the following INCLUDE files CLASSIO.INC Class I/O buffers etc. OBJPARM.INC Parameter include for system routines. PAOOF.INC Applications parameter include. Added the following Class library/utility modules in $APLOOF: ARRAY Array class library ARRAYDESC Array descriptor class ARRAYPNT Array pointer class ARRAYSTAT Array statistics class BEAM Restoring beam class CXIMAGE Complex image class FILENAME File name class FILESTATUS File status class GENERIC Generic interface routines HISTORY History utility routines IMAGE Image class IMAGEDESC Image descriptor class INPUT Inputs (POPS adverbs) class OBJECTMNGR Object manager module POSITION Observing position class QCGAUS Q routine to make complex Gaussian QCVSMA Q routine for Complex vector scalar multiply and vector add TABLE Table class VECTOR Vector utility module VELOCITY Velocity class Added the following Class library/utility modules in $QOOF: QARRAY Array class routines using "Q" routines. QIMAGE Image class routines using "Q" routines. Moved nowhere. 6982. May 22, 1992 LISTR Phil With Bill's help found and fixed a bug that caused the wrong columns to be printed when examining tables. Also fixed it to read the TY table when listing Tsys values. Moved nowhere. 6983. May 22, 1992 $APGNOT/MWFLT.FOR Glen Went Crazy and modified the Median window filter task to work for some optical images I am playing with. Now does either a high or low pass filter, so is of some general use. Fixed HLP Moved nowhere 6984. May 24, 1992 TVFLG, SPFLG Eric We broke out the 2 gridding subroutines from each of these tasks in order to have them more highly optimised than the rest of the program. This has caused several problems: (1) the large local arrays in the broken out subroutines have added about 4 Megabytes to every task dynamically linked with them, (2) subroutines within the task referenced by them caused unresolved reference messages on many (dynamic) link edits, and (3) two of the routines should have been in YSUB rather than APLNOT in any case. So: changed TVFLG and SPFLG to provide the large data arrays needed for their subroutines and changed GRIDTB, GRIDTC, SPFOAD, and TVFOAD to receive them as call-sequence arguments. Also pulled SPFWED and TVFWED from their tasks and moved them to YSUB, pulled SPFBLT from SPFLG and moved it to APLSUB, and moved SPFOAD and TVFOAD to YSUB from APLNOT. In testing this, I also fixed a data-selection error. In the calibration package, one may use INCS, INCF, et al. to describe the data received from DATGET after the INIT call. This is easier than guessing what that package will do based on the input uv file. Sigh... Moved nowhere. 6985. May 24, 1992 Other link-edit messages Eric Changed ZIVSOP to call ZIVSO2 and put a stubbed ZIVSO2 in APLGEN and a real one in APLCVEX. This will reduce the unresolved reference messages in dynamic link-edits on Suns. Moved nowhere. 6986. May 26, 1992 $APGNOT/UVPRT.FOR Dave, Tim Added CALL H2CHR to fix output file errors. Moved nowhere. 6987. May 26, 1992 SPLIT, HORUS Bill C. Added "TY" to the list of table types not to copy. Moved nowhere. 6988. May 26, 1992 DSEL.INC Phil This is going to be fun. Found an error in DSEL.INC. An array was declared as real instead of double precision. This caused the bandpass routines to screw up if there were more than 50 time entries in the table. Fixed the decleration and also increased the max. number of time entries to 100. Relinked the calibration package. Moved nowhere. 6989. May 26, 1992 UVIMG Eric Changed call sequence to GRIDTB to match previous changes. Also corrected the setting of the Stokes value. Moved nowhere. 6990. May 26, 1992 BAKLD, BAKTP Eric Changed BAKLD Changed error handling logic to be more forgiving. Dropped internal subroutines as below. BAKTP Added code to reopen the tape, write 2 EOFs, and back over them. Unix "dd" was writing only 1 EOF, making it hard to find EOI. BAKLDS New subroutine made by pulling BAKLDA, BAKLDB, and BKLDIR out of BAKLD and rearranging a little. ZBKTP1 $APLSUN: deleted. It was using a special ZTAPE entry 'EOM ' but that led there to be double EOFs prior to EOI on BAKTP tapes. ZBKTP1 $APLUNIX: changed logical name of tape and added error reporting on name translation. Made the very large TAPBUF small since that causes no error. ZBKLD1 $APLUNIX: changed logical name of tape and added error reporting on name translation. ZBKLD2 $APLSUN: changed to call new BAKLDS routine and to report empty data sets more reasonably. ZBKLD2 $APLIBM: new version changed to call new BAKLDS routine, to report empty data sets more reasonably, and to use IBM's "tctl" rather than the standard "mt". Dropped the "bsf" operation also. ZSHCMD $APLIBM: new version to mask their bug in the "system" subroutine. When system returns -1 with errno = 10, we must treat it as no error. VMS remains to be considered. Moved nowhere. 6991. May 27, 1992 BAKLD continued Eric Changed VMS versions of ZBKTP1, ZBKTP2, ZBKLD1, ZBKLD2 to use the new logical name (AMT0n) and the new subroutine. Changed the $APLUNIX version of ZBKLD2. I forgot that one, doing ones for Sun and IBM. Moved nowhere. 6992. May 27, 1992 APGOOP/TBTSK Bill C. New paraform task. This task is for processing tables in the AIPS object oriented programming system (OOP). This is a suitable starting point for tasks using tables. The example given copies selected rows from one table to another. Moved nowhere. 6993. May 27, 1992 APLOOP/TABLE Bill C. Added routines TABKGT and TABKPT to allow access to a number or all table header keywords. Added checks in a number of routines to be sure that the table was open. Added module APLOOP/TABLEUTIL.FOR for table utilities that don't require class private data. Added routines: COPHED: Copy header info from one table to another and force creation. ANTNO: Find the maximum antenna number in an AN TABLE associated with a table object. SOUNFO: Look up information on a source with a given ID in the SU table associated with a table object. Moved nowhere. 6994. May 28, 1992 BPASET Phil Added a few lines of code to check that the array that was causing previous problems does not overflow now. Moved nowhere. 6995. May 28, 1992 UVPRT Dave, Tim Added the code to allow writing of external ASCII HOLGR input files. Moved NOWHERES. 6996. May 29, 1992 $APLOOP/TABLE Bill C. TABOPN now sets version number and disk number in the table object after the TABINI call. If the default (0) value was passed by the user a new, empty table could be created each time the object was opened. Moved nowhere. 6997. May 29, 1992 VLBI cross polarized delay cal. Bill C. Added a procedure to automate the cross polarized delay calibration. This procedure, CROSSPOL, has a help file to explain it's functioning and uses the new task $APGOOP/POLSN to digest the results of the cross polarized FRING run and produce an SN table appropriate to apply to a CL table. The general method of this procedure is to copy a user selected subset of his data, usually a single baseline observation of a strong calibrator(s). This subset then has a parallel hand fringe fit run to correct the R and L delays and phases. This data then has the R and L data swapped for one of the antennas using SWPOL and FRING is run again on this data to determine cross polarized single and multi band delays (and any IF dependent peculiar R-L phase differences). POLSN munges the output of this last FRING and produces an SN table which is then copied back to the original data where it can be applied using CLCAL. Moved nowhere. 6998. June 1, 1992 Gain normalization Bill C. The gain normalization corrections were being applied in the baseline dependent portion of the calibration. Unfortulately this correction is only being applied to the parallel hand data so the gain normalization corrections were not being made to the cross polarized data. The gain normalization corrections are now being applied to data read from the CL/SN table by CSLGET. Correction in the baseline dependent tables and references thereto were removed from BLSET and CGASET. Moved nowhere. 6999. June 1, 1992 $APLPGM/STFND.FOR Glen Further insanity for my optical images. Created a threshold- area task for finding stars in an optical image. Uses three new subroutines STOPEN, STPUT and STCLOS which manipulate ST tables. Moved nowhere 7000. June 2, 1992 MK3IN Phil There was a minor problem when selecting data based on an AFILE. If the tape number was not recorded in the tape header, or in the AFILE all data was deselected. Fixed. Moved nwohere. 7001. June 2, 1992 BPASS Phil Another LL only problem crawled out of the wordwork. Fixed. Moved nowhere. 7002. June 3, 1992 ANTINI and friends Bill C. ANTINI was not returning the actual version number of a file that it created. This was fixed but could cause trouble if teh version number is hardcoded in calls to ANTINI. These occured and were fixed in $APGNOT/AVER,UVAVG,VBMRG and $QPGNOT/BPASS. Moved nowhere. 7003. June 3, 1992 $APGNOT/SDTUV Bill C. Modified to not subtract the scan average value unless the median window filter was to be applied. Moved nowhere. 7004. June 4, 1992 UVLIN Tim C. The phase shift option was really screwed up: it shifted the correct amount before fitting but then only shifted back by 1/(2 pi) of the correct amount afterwards. Moved nowhere. 7005. June 4, 1992 BPASS Phil My fix of June 2 did not go all the way. I forgot to check that the correct column in the BP table was filled for LL only. Now its fixed. Moved nowhere. 7006. June 5, 1992 $APLNOT/HFINI Bill C. Corrected the units on several columns containins phase like information in degrees. Moved nowhere. 7007. June 7, 1992 $HLPFIL/KNTR.HLP Mark Fixed info regarding the position of the beam plot. 7008. June 8, 1992 LISTR Chris Squeezed an extra digit for the source qualifier into the scan listing. VLA holography experiments were using all five digits available from the on-line system; previously the field width was 4 digits. Moved nowhere. 7009. June 10, 1992 UVCOP Bill C. UVCOP had apparently had an attempt made to have it update the subarray reference frequency in the AN table but this was never tested as it didn't work. NUMKEY was not set before the call to TABKEY and it defaulted to 0 and the common variable FQOFF was never set although the necessary value was read into another variable. Moved nowhere. 7010. June 11, 1992 APLOOP/TABLE Bill C. TABOPN now only tries to update the header information of a table if it is about to create it rather than on any write access. TBLKUP now reads the CATBLK associated with the table and saves it in the object catalog header. TABCOP only now copies selected labeling information (name, class etc.) rather than making a full copy of the input object. The name of this routine was changed to TBCOPY to avoid a name clash with a routine in $APLSUB. Moved nowhere. 7011. June 11 1992 $APLOOP/TABLEUTIL Bill C. Better error messages for SOUNFO, ANTNFO. These routines now make a temporary copy of the input from which to extract the information. Thus the input table object does not have to be table of the correct type but have one associated. Also converted calls to generic functions to table specific ones to avoid possible recursive calls. Added the following interfaces to existing AIPS table specific routines: OANINI: Open/create/init AIPS AN table. (ANTINI) OTABAN: Access AIPS AN table (TABAN) OBLINI: Open/create/init AIPS BL table (BLINI) OTABBL: Access AIPS BL table. (TABBL) OBPINI: Open/create/init AIPS BP table (BPINI) OTABBP: Access AIPS BP table. (TABBP) OCLINI: Open/create/init AIPS CL table. (CALINI) OTABCL: Access AIPS CL table. (TABCAL) OFGINI: Open/create/init AIPS FG table. (FLGINI) OTABFG: Access AIPS FG table. (TABFLG) OFQINI: Open/create/init AIPS FQ table. (TABFQ) OCHNDA: Access AIPS FQ or CH table. (CHNDAT) OHFINI: create/init AIPS HF table. (HFINI) OTABHF: Access HF table (TABHF) ONXINI: Open/create/init AIPS NX table (NDXINI) OTABNX: Access AIPS NX table. (TABNDX) OSNINI: Open/create/init AIPS SN table (SNINI) OTABSN: Access AIPS SN table. (TABSN) OSUINI: Open/create/init AIPS SU table (SOUINI) OTABSU: AIPS SU table. (TABSOU) OTYINI: Open/create/init AIPS TY table (TYINI) OTABTY: Access AIPS TY table. (TABTY) OSUELV: Returns source elevation for a given time and antenna. Moved nowhere. 7012. June 11, 1992 $APLOOP/GENERIC Bill C. Changes the call to TABCOP to TBCOPY Moved nowhere. 7013. June 11, 1992 $APGNOT/UVSRT Bill C. Increased buffer size to 262144 to handle VLBA data. Moved nowhere. 7014. June 11, 1992 MK3IN Bill C. Allow giving the time in UTC byt not specifying a value of TIMEOFF in the INFILE or giving a value of 0.0. Also changed description in MK3IN.HLP. Added option to make only one CL table entry at the processor reference (approx. center) time. Now prints more information about the amount of data read. Moved nowhere. 7015. June 11, 1992 $DOCTXT/APPENDIXC.TEX Bill C. Updated descriptions of AN, CL and SN tables to reflect the current versions of these tables. Moved nowhere. 7016. June 10, 1992 ZACTV9 Chris ZACTV9 has been rewritten. The version of ZACTV9 in APLUNIX will now work for all operating systems that comply with the POSIX.1-1988 or POSIX.1-1990 standard (including, hopefully, HP-UX). The versions of ZACTV9 in APLSUN and APLIBM are now obsolete and have been withdrawn. (AIPS sites running old non-POSIX versions of UNIX should upgrade). Advantages over the previous version are as follows. - SIGCLD signals are now handled by waitpid(); SIGNALS from a task's sibling processes will no longer interfere with debugging. - Tasks are created as grandchildren of the AIPS process rather than as children; this prevents the accumulation of zombie processes. Task PIDs are returned to AIPS via a pipe. - ZACTV9 no longer needs to create a link in the directory holding the executable unless that executable is being debugged. This means that users do not need write access to directories holding AIPS executables unless they are debugging them. This allows us to close a long standing security loophole: LOAD areas can be made read-only at most sites and users with private AIPS tasks no longer have to grant other users write permission to their personal directories. - There should be little need for machine specific variants of ZACTV9 since the version of ZACTV9 uses no interfaces beyond those specified in the ANSI C standard and POSIX.1. The new version of ZACTV9 will either fail to compile on systems that do not comply with POSIX.1 or will compile to a stub that issues a `local development required' message. Moved nowhere. 7017. June 11, 1992 $APGNOT/LWPLA.FOR Mark Now produces %!PS-Adobe-2.0 conforming PostScript suitable for encapsulating. Also cleaned up the PostScript itself a bit. Added new DPARMs to allow control of plot orientation, paper type, font type, and font size, default values for which give the previous setup. Modified the help file to suit. 7018. June 12, 1992 $HLPFIL/POPSDAT.HLP Pat Changed the default for DENSITY to 6250 (was 1600). Moved nowhere. 7019. June 16, 1992 $APGNOT/GSCAT Glen New Task to determine which Guide Star Table contains stars near the user's RA and Dec (J2000). The Guide Star Cataloge contains millions and millions of stars, nearly all stars brighter than 15th magnitude. Every VLA image region contains a few stars from the Guide Star Cataloge. This Task is a hacked version of IMLOD which parses a table (called REGIONS.TBL) which is supplied with the Guide Star cataloge CDROM. The user must move the REGIONS.TBL to some place accessable. The C'ville REGIONS.TBL is kept in $RUNFIL. Moved nowhere. 7020. June 16, 1992 $APLPGM/GSTAR Glen New Task to read a guide Star table (UK) table and produce an AIPS ST table with J2000 coordinates. The ST table can be used for locating optical counterparts and/or transforming image coordinates with the soon to be released new task STRAN. Uses new $APLSUB/GSCRED.FOR Moved nowhere. 7021. June 16, 1992 $YPGNOT/KNTR.FOR Mark Subroutine KONDRW didn't count contour levels properly in those rare cases where the last level is repeated. Didn't affect the appearance of the plot (at least for non-pen plotters) but made the plot file larger than necessary. 7022. June 18, 1992 $APGNOT/VLBIN Phil In May of 1991 the MkII correlator developed a hardware fault and the on-line software was slightly modified. As a result of this I believe that the autocorrelation functions for stations A and B in spectral mode were switched. We know that all was OK prior to May 1991 but as far as I can tell all data after this date is affected. The AIPS software does not cause this switch, nor does the DECODE program. So I have added a default option (VLBINPRM(17), yuk!) to deal with this, the default is too switch the AC's under the assumption that most data read into AIPS is newly correlated, setting VLBINPRM(17) to 1 will cause the data to flow through untouched. Also modified VLBIN.HLP. Moved nowhere. 7023. June 19, 1992 remote tapes Eric Changed ZVTPO2.C and ZVTPO3.C in $APLBERK to pick up the default buffer sizes and maximum segment size of the socket connection. These are usually 4096 for send and receive buffers and 1460 for the maximum data segment on the Ethernet. First changed ZVTPX2.C and ZVTPX3.C in $APLBERK to limit their reads and writes to the maximum segment size, looping to do the full buffer as needed. This seems to bring the real times down to about those of the tape when accessed directly! (We were using 1024-byte blocks before, so I do not understand the big difference.) Then I tried raising the send and/or receive buffers to 29000 bytes when needed and changed the transmissions to read or write all bytes in one call (looping if partial transmissions take place anyway). This seems to take the same real time, but to use less cpu time. Doing the full reads/writes without increasing the buffer sizes produced really bad real times, as did using 512-byte reads and writes. I do not really understand this sensitivity to the parameters, but things do seem to be better. Moved only with the midnight job. 7024. June 19, 1992 VLBIN Phil Minor typo fixed. Caused the reference station for AC's to be wrong. Moved nowhere. 7025. June 19, 1992 CVEL Phil In change #6941 I remarked on my frustration about the sign of the AC shift and how I know this was fixed. Well the reason for the confusion is now clear - the correlator control software was switching the AC arrays (see change #7022) after May 1991. I have now put the original correct shift sign back and set up APARM(9) to control the sign of the shift for those users unfortunate enough to have the screwed up data. Also changed CVEL.HLP Moved nowhere. 7026. June 22, 1992 STARTPMON Pat Overhauled this shell script to account for the following nasty possibilities: (a) the TPMONx hard links in $LOAD can get out of date if TPMON is relinked; (b) there might be more than 9 TPMON daemons; (c) if the TPMONx hard links have to be replaced, the TPMON daemons on the current host (at least) need restarted. Added a "-d" command line option for debugging. There are still circumstances where nasty things can happen but at least the script tries to do the right thing now. Moved nowhere. 7027. June 22, 1992 FILLM Eric/Gareth Changed FILLM to support real-time options used at the VLA on miranda. Mostly these are simply to make smaller files when "ONLINE" is true and to make a new output file on every scan without seeing if some concatanation can occur. The decision on which mode is based on the translation of the tape logical with "ON-LINE" being for real-time use. Changed FILLM and FILLM.HLP to allow SHOW and TELL with the TIMERANG being allowed to change and quit and abort options supported. Also changed: ZMOUN2.C $APLSUN: to not put "offline" if logical translates to ON-LINE ZTAPE2.C $APLSUN: to return with no I/O if "fd" < 0 ZTPOP2.C $APLUNIX: to call olopen when ON-LINE and single buffer the I/O; fd is < 0. ZTPMI2.C $APLUNIX: to call olread when fd < 0 ZTPCL2.C $APLUNIX: to call olclose when fd < 0. ZONLIN.C $APLUNIX: dummy versions of olopen, olclose, olread. Moved nowhere. 7028. June 22, 1992 UVPRT Eric Removed TAB characters, cleaned up typing a little, changed ZTXOPN call to allow concatanating outputs (as we do for OUTPRINT all the time), corrected the placement of a test on IRET to prevent EOFs (IRET = -1) from being seen as errors by DIE. Removed immense buffer that was hardly used, replacing it with three 3-word buffers (old one was 450000 words!). Moved nowhere. 7029. June 23, 1992 IBLED Phil Minor fix for single-source files. If 2nd channel number was < than the first it did not flag any data. Fixed. Moved nowhere. 7030. June 24, 1992 CNTR et al. Pat The TVCORN adverb has two elements but CNTR was for some bizarre reason assuming it had four. Harmless as TVCORN was the last adverb, but could have been devastating if more adverbs were added. This apparently occurs also in PCNTR, PROFL, GREYS, KNTR, and PFPL1. Fixed by redimensioning internal arrays to (2) for TVCORN/XTVCRN. Will update other 5 tasks momentarily. Moved nowhere. 7031. June 25, 1992 SBCOR.HLP Phil Was pointed out to me that the help file for SBCOR described BCHAN and ECHAN as specifying the USB channel range whereas they should have specified the LSB range. Was OK in the code. Moved nowhere. 7032. June 25, 1992 ZACTV9 in SYSUNIX Chris Fixed a silly mistake. The PID of the spawned task was being passed back to the originating task using the assumption that sizeof(pid_t) == sizeof(int). This is an incorrect assumption: Convex OS has sizeof(pid_t) == sizeof(short). Convex PIDs would be multiplied by 2**16 which would confuse TASKWT, causing AIPS to hang if DOWAIT was set to true. Moved nowhere. 7033. June 25, 1992 BASLST Chris New utility routine for interpreting ANTENNAS/BASELINE keywords. BASLST is similar to AN10RS but generates an explicit list of antennae for all input cases. Moved nowhere. 7034. June 25, 1992 ZVTPO2 Eric Corrected the handling of failed "connect" calls. It was dropping through and executing "getsockopt" calls which were panicing SUN systems into rebooting! Added closes to the file descriptors and a branch around the getsockopt calls. Moved to the VLA suns while re-building here in CV. 7035. June 25, 1992 $YPGNOT/SNPLT Glen Hopefully fixed SNPLT bug for option SUMmary. Replaced a broken (and nasty) computed GOTO with IF statements. If the chance arises, remove Computed GOTOs! Moved Nowhere. 7036. June 26, 1992 LISTR Phil Finally cracked and decided to write a routine that would determine the necessary scaling in the GAIN listings by running through the whole table rather than just taking the scaling from the first value. Also aded the ability to list multiband delays. Also changed LISTR.HLP Moved nowhere. 7037. June 30, 1992 SETSP.FOR Pat Removed hard-coded "/AIPS/DA00" and replaced it with code to fetch the $NET0 environment variable instead. Tested fine on all architectures except possibly convex; I ran into bizarre problems there with the csd debugger. It seems to work fine if $NET0 is defined; I'm not so sure about when it's not. Moved nowhere. 7038. June 30, 1992 $APGNOT/GSTAR.FOR Glen Added option to produce star (ST) tables in coordinate systems other than the Guide star catalog J2000 coordiantes. Uses Mark C.'s coordiante transformation routines to create 1900, 1950, 2000, Galactic, old galactic, another old galactic or super- galactic coords. Moved Nowhere. 7039. June 30, 1992 $SYSUNIX/FCLEVEL.SH Glen Simple modification allows use of $ARCH parameter so that GRIDTB can be optimized on Sun's, but is unoptimized on IBMs. Optimization levels are recorded in $SYSUNIX/OPTIMIZE.LIS. If it exists, $SYSLOCAL/OPTIMIZE.LIS overrides the $SYSUNIX version. (Tested on Suns and IBMs) Moved Nowhere. 7040. July 2, 1992 ANCAL Phil An unforseen consequence of the addition of the TY table is that SNPLT was unable to plot Tsys vs elevation because the source information was not filled into the TY table - that is because it is not stored in a predictable manner in the input ASCII file. Added a routine, TYCONS, to run through the CL table in order to determine when a particular source is being observed by a given antenna, this information is then passed to the TY table. Also fixed a bug that caused data from the CIT correlator to have TY tables with 28 If's rather than 1. Moved nowhere. 7041. July 3, 1992 GREAD, GWRITE Eric Corrected AU5.FOR. I had gotten my conventions crossed and was using 8 for cursor color while the YGRAFX routines used 0. Moved nowhere - the chkout system seems broken. 7041. July 7, 1992 TVMOVI Daniel/Eric Corrected the labeling of FELOCITY images to say V= by changing one character in AU5D. Moved nowhere. 7043. July 7, 1992 $APGNOT/STRAN Glen Very Experimental task to automatically identify stars on an optical image and determine the image coordiantes. Still has a number of problems, but works under rare circumstances. The task is intended to provide a mechanism for creating optical overlays for radio images. Moved nowhere 7044. July 7, 1992 $APLSUB/TABAN.FOR Bill C. Internal buffer for reading the AN table records was too small; resized to 200 words. Moved nowhere. 7045. July 9, 1992 MK3IN Bill C. Added more bombproofing. The FQ table is now written when the file is created; the AN table and the number of visibilities are updates each baseline-scan. General cleanup including use of parameters in PUVD.INC in task specific commons. The AN table is being now created with the correct number of polarization calibration constants. This may lead to tasks linked with the old version of TABAN to blow up. Also modified ATSKIP to not close and reopen the tape when skipping the current file. Moved nowhere. 7046. July 9, 1992 SNPLT Phil The TY table is wriiten with the FREQID column set to -1. The logic we originally set out for FQ ID's was that if they were -1 then the should be plooted whatever the FREQID on the input. SNPLT did not do this, fixed it up. Moved nowhere. 7047. July 9, 1992 LISTR Phil In the gain plotting section it was assumed that all times in the relevant tables were double precision. The times in the TY table are not, fixed to use the correct format. Moved nowhere. 7048. July 12, 1992 PRTAB Eric I don't quite understand this limit on the DOHMS option to certain extension types. Changed to allow DOHMS > 1 to mean any extension type. Changed HLP file too. Moved nowhere. 7049. July 13, 1992 $QPGNOT/FRING Bill C. FRING was not correcting IF phases to the reference channel in each IF. This has been corrected. This bug affected double sideband MkIII VLBI data. Corrected logic so that it should run without an NX table. However, the calibration routines return slightly different phases with and without the NX tables. Also corrected logic computing time bin numbers in FRNFIT. Moved nowhere. 7050. July 13, 1992 $APLNOT/SN2CL.FOR Bill C. Modified to use routine GETMBD to calculate the multiband delay corrected for the fringe rate between SN and CL table entry times. Moved nowhere. 7051. July 13, 1992 $APLNOT/GETMBD.FOR Bill C. New routine that computes the multiband delay including effects of fringe rate given an SN table record. Moved nowhere. 7052. July 13, 1992 $UPDUNIX/UPDREMOVE Pat Four changes: (1) if any task that creates hard links to the .EXE file gets removed, the hard links will be checked for and also removed. (2) SYSLOCAL and *PATH variables are ignored when the script tries to get the area name from PRINTENV; this could cause errors. (3) If there is a shared library, it will be rebuilt if necessary. And (4) it will NOT attempt to remove entries from other .UNQ files. Moved to all NRAO "midnight job sites" (cv-convex, aoc-sparc, aoc-ibm, aoc-convex, gb-sparc). 7053. July 14, 1992 $UPDUNIX/UPDCOPY Pat Modified so that midnight job copy failures should now be detectable. Some failures were not previously caught. Moved this date to the above sites (see entry #7049). 7054. July 14, 1992 FRING Chris Code introduced in change #7046 correcly forced a change of scan if the source changed but did not check that the source random parameter was present. This caused FRING to break down if a single source was selected from a multi-source file. Now checks for SOURCE random parameter. Moved nowhere. 7055. July 14, 1992 MK3TX Chris Increased the dimension of the file name index to hold 100 files. Now uses a multicolumn menu to get the file names on one screen. Moved nowhere. 7056. July 15, 1992 $APGNOT/TABED.FOR Bill C. TABED was occasionally getting into trouble when it created a new zero length file. The call to TABINI to create the new file is now given the number of records in the input file as the starting number. Moved nowhere. 7057. July 16, 1992 $APGNOT/MK3IN.FOR Bill C. Converted acceleration term to the 2nd order polynomial expected in the CL table. Also corrected the use of this term in comparison with the model delay on the A tape. This should have no affect on current astronomical data. Also fix bug which was introduced when the writing of the FQ table was moved to the file creation stage. The reference frequency was not being subtracted from the IF frequency offsets. Moved nowhere. 7058. July 16, 1992 $APLOOP/TABLE.FOR Bill C. Added new function TBLSRT to sort tables. Moved nowhere. 7059. July 17,1992 $APLNOT/SN2CL.FOR Bill C. Modified to check for blanked values of the multiband delays in the SN table and if no valid values are found to blank the multiband delay in the CL table entry. Moved nowhere. 7060. July 17, 1992 $APGNOT/MWFLT.FOR Glen Minor bug fix, array was too small, which caused strange behavior for big images. Replaced an erroneous FLOAT with SNGL. Moved nowhere. 7061. July 17, 1992 FRING Chris Found that multiband delay correction was being applied with the wrong sign and corrected it. Why hadn't anybody noticed this before? Moved nowhere. 7062. July 17, 1992 DSEL.INC Eric Reordered the include to have everything in safe orders for alignment. CATUV in particular was not able to be equivalenced with a double precision which it needs to be. Moved nowhere. 7063. July 23, 1992 TABLEUTIL in APLOOP Chris Fixed a bad call to TABDGT in ANTNO. Moved nowhere. 7064. July 24, 1992 MDESTR Eric Corrected to lower case two informative messages. Moved nowhere. 7065. July 27, 1992 IBLED Eric Changed and corrected: (1) Wrote subroutine TSKHLP to provide run-time help from inside tasks and took file HLPIBLED.HLP from IBLED fixing the format to do that for IBLED. Also made the help function be entirely internal to the function-choice routine. (2) Made the menu, curvalue, line, and data areas go to symbolic TV planes and, when possible, assigned them to 4 graphics planes having colors controlled by IBLED. When possible, put the full plot into grey-scale memory separate from the working area plot. (3) Changed it to zoom only on appropriate functions. (4) Changed it to erase lines and character strings rather than zeroing whole graphics planes, which is slow and potentially destructive. Corrected bugs in curvalue-like display so that strings are drawn when, and only when, necessary. (5) Corrected menu display of station IDs to be updated all the time. (6) Corrected handling of TV boxes in flagging - which corner was which was rather confused. (7) Added routine to check the TV windows, reset plot scalings and set flags to indicate that the plots need to be redrawn and/or rescaled. Changed other routines to check these flags and react properly, avoiding excessive redrawing, but doing it when needed. (8) Changed it to create and keep the FC table on the master grid file. (9) Changed the exit function to complain only if the FC table really is going to be lost (DOCAT false). (10) Changed the routine that reads data into memory to fetch only one IF and Stokes and to use the FC table without sorting (which was dropping flags). (11) Changed logic in writing FC table to take advantage of as long a time range as possible. (12) Changed it to determine a best DELTAT when DPARM(5) = 0, rather than quitting over this minor parameter. Fixed help file for this. (13) Corrected the OFFCOLOR function to use floating-point OFMs. (14) Changed to a local version of IMVECT to avoid refilling the buffer with zeros and ones all the time. (15) Corrected the Y positioning of the data and axis labeling. (16) Changed restart to pick up the correct channel and IF. (17) Put in redraw functions to redo the plots whenever the window size is changed. (18) Dropped automatic exit on "last" baseline. It loops instead back to 1. The user should only exit explicitly. (19) Made prettier label string for the top of the plot. We can manipulate strings rather than look at stupid Fortran formats. (20) Fixed windowing so that flags of frames > 1 get stored and used correctly. (21) Fixed to display any of the 4 polarizations as requested. (22) Added 1- versus ALL- source option for output flags. Dropped the unused baseline number column from the FC table to add this one. (23) Reordered and renamed the menu items to be more consistent. (24) Changed bottom status display to be 1-3 lines: a basic line, a line about flag all antennas to displayed ones and about plotting error bars, and one saying explicitly what one gets on the next load. (25) Changed preparation of flag commands so that data flagged by a previous command will be flagged a second time. This allows undo to work correctly without having to have a REDO function (which the current FC structure would not support). (26) Moved all setting of FC parameters to FLGWRT or its one calling routine. Otherwise, reads of the FC file could override the users selected values - especially the Stokes flag pattern. (27) Corrected it to flag only all baselines with antenna 1 and all baselines with antenna 2, not ALL baselines, when both options are invoked. (28) Added 1-hour time ticks on the x axis. (29) Changed it to accept only one subarray rather than partially mixing them all together. Simplified access to the station names and setting of antenna arrays. (30) Replaced all of the data input and averaging code. It was averaging channels and/or IFs to a scratch file, then doing time averages on that file. It saves disk, time, ... to do all the averaging at once. Furthermore, it was doing scalar averaging including scalar averages of raw phases! Now it does bothe vector and scalar averages and stores weight, vector amplitude, vector phase, and ratio of vector to scalar amplitude in that order as the complex axis of the master file. (31) Changed to offer "decorrelation" (ratio of vector- to scalar-averaged amplitudes) displays and editing. (32) Changed to offer display and editing on the ratio of any 2 IFs present in the master file. (33) Changed to save some of the parameters as keywords in the master file header. (34) Added FCTYPE to the FC file. It is incorrect to use the current display type to describe stored clip limits. (35) Changed to make all master files IBLEDR files, but to call the temporary ones scratch files so far as DIE is considered. Also changed it to destroy cataloged master files if their flag commands are applied to the input data. The master file no longer tells the truth after the application. (36) Corrected scaling etc. to avoid aborts when there is no valid data for some IF/polarization/plot-type/baseline. (37) Improved the display of lines in the FC table, showing true time ranges and which source(s) they apply to, and giving the Stokes flag string. (38) Corrected most clipping routines to clip all data in the clip range, not just those data within the current display range. (39) Changed bottom display to remark when a user-specified display pixrange causes data to be omitted. (40) Dropped the "show autocorr" business. There is no reason to treat autocorrelations as different from baseline n-n. Changed FILANT to allow autocorrelations in the baseline list and dropped the list of autocorrelations (which was never used). (41) Changed Stokes handling to provide a reasonable selection of user strings for the Stokes mask, but only a reasonable list. There is no good reason to interpret "IV" for RR/LL/RL/LR data sets. Added XX, YY, XY, YX support. (42) Changed to save only Stokes masks in the FC file, with a translate routine from user strings to masks and a translate routine from masks in the master file to masks in the file being flagged (input). They can be different due to the STOKES adverb. (43) Rewrote the code that adds the flags to the single-source data to sort the FC table and to employ techniques (and the actual variables) of the calibration package. (44) Rewrote the Explain part of the help file and reworded bits of the help and inputs parts. (45) Changed to support BADDISK for master grid too whenever the user doesn't specifiy OUTDISK. Added BADDISK to help file and revised explanations. Moved to the AT for Neil to test. 7066. July 28, 1992 IBLED Eric Fixed bug in setting frame boundaries affecting mostly the interactive setting of frame times. Changed it to test baseline numbers and reverse the "flag all antennas to" status when the antenna number is new. Corrected Fortran errors found by the IBM: (1) Logicals must be compared by .EQV. and .NEQV. not .NE. (2) A branch address erroneously pointed into a DO loop rather than where it was supposed to go. (3) A comma was missing in a FORMAT. Moved nowhere. 7067. July 29, 1992 TVFLG, SPFLG, UVIMG Eric Having learned from IBLED, (1) Changed GRIDTB, GRIDTC to have a new DOCAT call argument and to always make the master grid cataloged, but to record it as either a catloged or as a temporary file in the DFIL commons. (2) Corrected UVIMG to use the new GRIDTB call sequence. (3) Corrected for new GRIDTB/C call sequences, and to simplify all openings of the master grid since it is now always an MA file at DISKOU and CNOOUT. (4) Altered to use MSGTXT = where possible rather than using a FORMAT statement. This makes the code clearer and may even be rather more efficient. (5) Modified to use the new big buffers rather than have many local 64K buffers. (6) Changed to store only 1 and 0 type flags in the FC table and accept only suitable strings for the flag pattern. Changed DOSTOK to be like IBLED. (7) Changed all sets of strings to allow XX-type polarizations even if the regular cal package won't let them through. (8) Corrected SPFOAD, TVFOAD to use the correct pix ranges for floating buffer types of display. (9) Changed DSPF.INC, DTVF.INC to carry around JBUFSZ, increased number of possible Stokes to 4 in one place anyway, and added the user Stokes mask as well as my 1's and 0's one. (10) Created HLPTVFLG.HLP, HLPSPFLG.HLP new and massive on-line help files. (11) Changed to sort the FC file in time order and use the flagging variables from the calibration package. Moved nowhere. 7068. July 30, 1992 ACFIT Phil Added a new option, the user can now specify that the baseline-corrected total power spectra be written to an output file - useful to see what order polynomial should be used for baseline removal. Also changed ACFIT.HLP Moved nowhere. 7069. July 31,1992 ITBSRT Bill C. This routine is one of the fundamental AIPS sorting routines and it was defining sort keys for character strings that caused the sort using the llast rather than the first character first. Apparently nobody sorts by character strings. Moved nowhere. 7070. July 31, 1992 $APLOOP/INPUT.FOR Bill C. Modified AIPS OOP startup routine AV2INP to check for the presence and value of an adverb named DOCRT. If an integer or real adverb whith this name exists and has a value greater than 0 then RQUICK is set to false and POPS is not restarted at task startup. This allows interactive tasks to keep POPS from talking the the user at the same time. Moved nowhere 7071. July 31, 1992 $APLOOP/TABLE.FOR Bill C. Modified the table sorting routine for sorting by character strings. If both sort columns are the same and are a character string then the first sort key is the first four and the second sort key the second four or fewer if the string is shorter. Moved nowhere 7072. July 31, 1992 $APGOOP/TBDIF Bill C. New task to compare values in tables and print the comparision on either the users' terminal of the printer. Also TBDIF.HLP. The comparison is fairly flexible and the second table is searched for a match to an entry in the first table. Summary statistics are also given. Moved nowhere. 7073. August 4, 1992 $APLOOP/TABLE.FOR Bill C. TBLSRT now makes a shallow copy of the input object to allocate a second buffer. This allows sorting larger records. Moved nowhere. 7074. August 4, 1993 $APLNOT/ITBSRT.FOR Bill C. Allow use of fewer buffers to handle large records. Moved nowhere. 7075. August 4, 1992 $YPGNOT/SNPLT Bill C. SNPLT was erroneously requiring two polarizations for OPCODE='IFDF'. It's not clear what the purpose of the tests for ITPLOT.EQ.1 (OPCODE='IFDF') are for in the data type specific sections of SNPOPN are but I left them in case they are not as totally useless as they appear. Moved nowhere. 7076. August 5, 1992 $APLNOT/HFINI.FOR Bill C. Corrected the units for columns DLY2, DLY3 and EPOCH0 (usec, usec, msec). Moved nowhere. 7077. August 5, 1992 CLCOR Bill C. Added option 'PCFX' to correct blanked phases based on any valid ones and and a set of phase relationships given in CLCORPRM. This option is intended to allow using valid VLBI phase cals and estimating missing ones. Also CLCOR.HLP. Moved nowhere. 7078. August 5, 1992 Flagging Eric Changed NXTFLG to handle flag tables that say 0 - AntN as well as ones that say AntN - 0 to mean all with 1 antenna. Fixed AN10RS (used by UVFLG, UVCOP, VBPLT) to handle ANTENNAS = 0, BASELIN = a, b, c, ... which was a case not considered and hence muffed. Fixed IBLED to put out AntN - 0 always since older AIPS systems will expect that and corrected IBLED's application of baseline flagging to its own data. Moved nowhere. 7079. August 6, 1992 $APLOOP/TABLE.FOR Bill C. In the last change to TBLSRT I neglected to delete the temporary table object when it was no longer needed. Moved nowhere. 7080. August 6, 1992 TVFLG, SPFLG Eric Changed $YSUB routines TVFOAD and SPFOAD to have the master grid always be an MA file. I thought I would have caught this but it slipped through somehow. The master grid is always cataloged now to guard against power failures (and, god forbid, program aborts), but is deleted on controlled completion when DOCAT <= 0. Moved nowhere. 7081. August 7, 1992 TABSN, TABCAL Bill C. Corrected logic for handling deselected records. Formerly if a record was deselected the routine would try reading the next record. If the last record was blanked this will always fail. For tasks which attempt to read a specific table entry this could cause multiple reads of the same record. The following tasks and routines called one or both of these routines and have been modified to correctly handle blanked records: $APGNOT/SWPOL $APLNOT/CLREFM $APLNOT/CLSEL $APLNOT/SNREFM $APLNOT/SNSEL $APLOOP/TABLEUTIL Moved nowhere. 7082. August 7, 1992 LISTR Bill C. Fixed numerous small errors which caused LISTR to fail for multiband delays. Moved nowhere. 7083. August 7, 1992 $APGOOP/TBDIF Bill C. Made search algorithm smarter and the search of the second table stops when no further matches are possible given the limited sort. Moved nowhere. 7084. August 10, 1992 $APLOOP/TABLE.FOR Bill C. TABDGT no longer considers deselected records (IERR=-1) to be an error. Moved nowhere. 7085. August 10, 1992 $APGOOP/TBDIF.FOR Bill C. Deselected records are now trapped and ignored. Also fixed bug in comparison of real columns whereby the second column value being blanked caused the first to be given as blanked. Moved nowhere. 7086. August 11, 1992 $DOCTXT/USERNO.LIS Dave A. Finally found out that there IS a routine to update the AIPS usernumbers (thanks to Gareth). Updated the numbers and checked 'em back in. Moved nowhere. 7087. August 11, 1992 $SYSUNIX/TVDEVS.SH Dave A. Added the new AOC machines to the TV list. Moved nowhere. 7088. August 11, 1992 FRING Chris Reversed change 7061. After re-reading the data in which I found the multiband sign reversal the modified version was applying the multiband delay correction with the wrong sign. Is this some kind of quantum bug? Moved nowhere. 7089. August 12, 1992 ANTINI Bill C. Added writing dummy IATUTC keyword for compatibility with old systems. Moved nowhere. 7090. August 12, 1992 SETAN Bill C. Fixed bad call to ANTINI. Moved nowhere. 7091. August 12, 1992 FRING Chris Finally sorted out the sign problems with the multiband delay corrections. The correction occurrs in both FRNDR and FRNMS and I had missed the second instance. Both now apply the multiband delay correction with the same sign as the residual phase. POSSM no longer draws pictures of staircases after applying multiband delay corrections. Moved nowhere. 7092. August 10-13, 1992 XAS Eric Changed: (1) xas.h Output buffer too small; raised 1024 to 2048. (2) init.c Raised "line_data" buffer to full screen size from only 16 rows. Added shared memory option in creating memories. Added shared memory and max grey level options in X resource data base. (3) screen.c Changed it to fill a large buffer and make only one call to XPutImage rather than one call per input line. Added shared memory option with XShmPutImage as well. (4) xas.c Added a debug message for times when buttons are read and have actually been hit. (5) Makefile Added shared memory use flag, more comments. (6) XAS.HLP Added new options to user help file and clarified a comment or two. Moved nowhere. 7093. August 13, 1992 TV stuff Eric Created the concept of allowing a TV display to go asynchronous, defering its screen updates until convenient times. When this is done in lower level routines, they must find the input state of synchronicity and change to asynchronous and back only if that input state was synchronous. Changed: YHOLD $YGEN: no-op routine for generic TVs YHOLD $YSS: send command ONNN or OFFF to XAS et al. XAS.SHR $YSERV: changed to allow this command and changed scrwrt to wait until ordered or until some max number of calls have occurred. Changed IO to loop to fill buffers and to use the maximum packet size. XAS.HLP Explain new .Xdefaults option re max # calls. DTVC.INC Added ISYNCH to keep track of whether it is in asynchronous (false) or normal (true) modes. YTVCLS $YGEN: Added call to YHOLD to turn off asynchronous mode. YTVOPN $YGEN: Initialize ISYNCH to true. TVLOAD Invoke asynchronous display of loading image. AU5C Invoke asynchronous display of loading wedges, etc. AU5D Invoke asynchronous display of labeling. AU6B Invoke asynchronous display of curvalue strings and background. BLTFIL Invoke asynchronous display of area fill. IAXIS1 Invoke asynchronous display of labeling. IMANOT Invoke asynchronous display of labeling and background fill. TVFLG Invoke asynchronous display to speed things up. SPFLG Invoke asynchronous display to speed things up. IBLED Invoke asynchronous display to speed things up. ZSSSO2.C Added new operation to buffered list, added pickup of the maximum packet size. ZSSSX2.C Changed to use the maximum packet size and to loop in all network reads and writes (it is not safe to avoid this complexity). DGPH.INC Added GPHCNT to count the operations to the TV. GINIT Changed to init GPHCNT and to turn on asynchronous mode. GVEC Changed to count IO operations to the TV and to synchronize things occasionally. GRAYPX Changed to count IO operations to the TV and to synchronize things occasionally. GFINIS Changed to turn off asynchronous mode. XVSS.SHR Added the new operation to avoid error messages. It is a no-op for XVSS. SSS.SHR Added the new operation including code to allow it to function as intended. Upgraded the IO to loop properly and to set and use the maximum block size where possible. Moved nowhere. 7094. August 14, 1992 TV servers Eric Corrected a long-standing bug in the routine that actually draws on the screen. It was not limiting the number of columns and rows correctly and must have attempted to draw off the screen a good bit. The full- and shared-memory blit of the new XAS provoked the bug into a fatal error. Corrected XAS.SHR, XVSS.SHR and SSS.SHR. Moved nowhere. 7095. August 14, 1992 APLIBM/ZMOUN2.C Pat Changed to check for AIX version and do "rewind" or "offline" depending on whether it's 3.2 or later (offline) or earlier (rewind). Moved nowhere. 7096. August 19, 1992 VLBIN Phil Added the ability to select data based on switch cycles. User specifies the switch cycle time, number of switch cycles and the cycle to be read. Also changed VLBIN.HLP. Moved nowhere. 7097. August