FITSIN reads FITS files stored on tape. For efficiency, you should select the `no-rewind' device for the particular tape drive, for example /dev/nrmt0h on OSF/1 and /dev/rmt/1n on Solaris.
We ask for the second file on the tape, and the headers are displayed so we can decide whether this is the file we want. It is so we supply a name of an NDF to receive the FITS file. If it wasn't we would enter ! to the OUT prompt. The FMTCNV parameter asks whether the data are to be converted to _REAL, using the FITS keywords BSCALE and BZERO, if present. If you are wondering why there is (1) after the file number, that's present because FITS files can have sub-files, stored as FITS extensions.
% fitsin
MT - Tape deck /@/dev/nrmt0h/ >
The tape is currently positioned at file 1.
FILES - Give a list of the numbers of the files to be processed > 2
File # 2(1) Descriptors follow:
SIMPLE = T
BITPIX = 16
NAXIS = 2
NAXIS1 = 400
NAXIS2 = 590
DATE = '03/07/88' /Date tape file created
ORIGIN = 'ING ' /Tape writing institution
OBSERVER= 'CL ' /Name of the Observer
TELESCOP= 'JKT ' /Name of the Telescope
INSTRUME= 'AGBX ' /Instrument configuration
OBJECT = 'SYS:ARCCL.002' /Name of the Object
BSCALE = 1.0 /Multiplier for pixel values
BZERO = 0.0 /Offset for pixel values
BUNIT = 'ADU ' /Physical units of data array
BLANK = 0 /Value indicating undefined pixel
: : :
: : :
: : :
END
FMTCNV - Convert data? /NO/ >
OUT - Output image > ff1
Completed processing of tape file 2 to ff1.
MORE - Any more files? /NO/ >
We can trace the structure to reveal the 2-byte integer CCD image. Notice that the FITS headers are stored verbatim in a component .MORE.FITS. This is the FITS extension. The extension contents can be listed with FITSLIST. There is more on this NDF extension and its purpose in the FITS Airlock.
% hdstrace ff1
FF1 <NDF>
DATA_ARRAY(400,590) <_WORD> 216,204,220,221,202,222,220,206,218,221,
... 216,218,218,204,221,218,219,222,221,218
TITLE <_CHAR*13> 'SYS:ARCCL.002'
UNITS <_CHAR*3> 'ADU'
MORE <EXT> {structure}
FITS(84) <_CHAR*80> 'SIMPLE = T','BI...'
... ' ...',' ING PACKEND','END'
End of Trace.
If you have many FITS files to read there is a quick method for extracting all files or a selection. In automatic mode the output files are generated without manual intervention and the headers aren't reported for efficiency. Should you want to see the headers, write them to a text file via the LOGFILE parameter. The cost of automation is a restriction on the names of the output files, but if you have over a hundred files on a tape are you really going to name them individually?
The following example extracts the fourth to sixth, and eighth files. Note that the [ ] are needed because the value for Parameter FILES is a character array.
% fitsin auto
MT - Tape deck /@/dev/nrmt0h/ >
FMTCNV - Convert data? /NO/ > y
PREFIX - Prefix for the NDF file names? /'FITS'/ > JKT
FILES - Give a list of the numbers of the files to be processed > [4-6,8]
Completed processing of tape file 4 to JKT4.
Completed processing of tape file 5 to JKT5.
Completed processing of tape file 6 to JKT6.
Completed processing of tape file 8 to JKT8.
MORE - Any more files? /NO/ >
You can list selected FITS headers from a FITS tape without attempting to read in the data into NDFs by using FITSHEAD. You can redirect its output to a file to browse at your leisure, and identify the files you want to convert. So for instance,
% fitshead /dev/nrmt1h > headers.lis
lists all the FITS headers from a FITS tape on device /dev/nrmt1h to file headers.lis.
After running FITSIN you may notice a file USRDEVDATASET.sdf in the current directory. This HDS file records the current position of the tape, so you can use FITSIN to read a few files, and then run it again a little later, and FITSIN can carry on from where you left off. In other words FITSIN does not have to rewind to the beginning of the tape to count files. When you're finished you should delete this file.
KAPPA --- Kernel Application Package