CDS.headStuff2
FORTRAN Generation
Conversion of standardized ReadMe file for
catalog into FORTRAN code for reading data files line by line.
Note that special values are assigned to unknown or unspecified
numbers (also called NULL numbers);
when necessary, the coordinate components making up the right ascension
and declination are converted into floating-point numbers
representing these angles in degrees.
program load_ReadMe C============================================================================= C F77-compliant program generated by readme2f_1.81 (2015-09-23), on 2024-May-02 C============================================================================= * This code was generated from the ReadMe file documenting a catalogue * according to the "Standard for Documentation of Astronomical Catalogues" * currently in use by the Astronomical Data Centers (CDS, ADC, A&A) * (see full documentation at URL http://vizier.u-strasbg.fr/doc/catstd.htx) * Please report problems or questions to C============================================================================= implicit none * Unspecified or NULL values, generally corresponding to blank columns, * are assigned one of the following special values: * rNULL__ for unknown or NULL floating-point values * iNULL__ for unknown or NULL integer values real*4 rNULL__ integer*4 iNULL__ parameter (rNULL__=--2147483648.) ! NULL real number parameter (iNULL__=(-2147483647-1)) ! NULL int number integer idig ! testing NULL number C============================================================================= Cat. J/ApJS/122/355 Properties of low z QSO absorption systems (Vanden Berk+, 1999) *================================================================================ *Clustering Properties of Low-Redshift QSO Absorption Systems Toward *the Galactic Poles * Vanden Berk D. E., Lauroesch J. T., Stoughton C., Szalay A. S., * Koo D. C., Crotts A. P. S., Blades J. C., Melott A. L., * Boyle B. J., Broadhurst T. J., York D. G. * <Astrophys. J. Suppl. Ser. 122, 355 (1999)> * =1999ApJS..122..355V C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table16.dat' ! Line identifications for CT 336 integer*4 nr__ parameter (nr__=21) ! Number of records character*124 ar__ ! Full-size record integer*4 Num ! Line number real*8 Wave ! (0.1nm) Observed wavelength of line (in vacuum) real*4 e_Wave ! (0.1nm) Uncertainty of the wavelength position real*4 EW ! (0.1nm) Equivalent width of the line real*4 e_EW ! (0.1nm) Uncertainty of EW real*4 FWHM ! (0.1nm) ? Full width half Maximum of the line real*4 e_FWHM ! (0.1nm) ? Uncertainty of FWHM character*1 l_SL ! Limit on the SL real*4 SL ! Significance level (1) character*1 f_SL ! [a] A SL < 4.5 line. Not in the complete * sample character*10 ID ! Primary line identification integer*4 wave_1 ! (0.1nm) ? Primary line wavelength identification character*1 f_ID ! [b] Identification highly uncertain real*8 z ! ? Redshift from primary line character*20 ID2 ! Secondary line identification integer*4 wave2 ! (0.1nm) ? Secondary line wavelength identification real*8 z2 ! ? Redshift from secondary line *Note (1): The significance level is defined as the magnitude of the * estimated equivalent width divided by the interpolated uncertainty * in the equivalent width. C============================================================================= C Loading file 'table16.dat' ! Line identifications for CT 336 C Format for file interpretation 1 format( + I2,4X,F7.2,5X,F4.2,1X,F5.2,4X,F4.2,1X,F4.2,2X,F4.2,1X,A1,F5.1, + 2X,A1,5X,A10,2X,I4,1X,A1,1X,F7.4,3X,A20,1X,I4,1X,F7.4) C Effective file loading open(unit=1,status='old',file= +'J/ApJS/122/355/table16.dat') write(6,*) '....Loading file: table16.dat' do i__=1,21 read(1,'(A124)')ar__ read(ar__,1) + Num,Wave,e_Wave,EW,e_EW,FWHM,e_FWHM,l_SL,SL,f_SL,ID,wave_1, + f_ID,z,ID2,wave2,z2 if(ar__(38:41) .EQ. '') FWHM = rNULL__ if(ar__(44:47) .EQ. '') e_FWHM = rNULL__ if(ar__(75:78) .EQ. '') wave_1 = iNULL__ if(ar__(82:88) .EQ. '') z = rNULL__ if(ar__(113:116) .EQ. '') wave2 = iNULL__ if(ar__(118:124) .EQ. '') z2 = rNULL__ c ..............Just test output........... write(6,1) + Num,Wave,e_Wave,EW,e_EW,FWHM,e_FWHM,l_SL,SL,f_SL,ID,wave_1, + f_ID,z,ID2,wave2,z2 c .......End.of.Just test output........... end do close(1) C============================================================================= stop end