FORTRAN Generation
(/./ftp/cats/J/ApJ/613/129)

Conversion of standardized ReadMe file for file /./ftp/cats/J/ApJ/613/129 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 2026-Oct-07
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/ApJ/613/129          Equivalent widths of QSOs                   (Wise+, 2004)
*================================================================================
*Variability of narrow, associated absorption lines in moderate- and low-redshift
*quasars.
*    Wise J.H., Eracleous M., Charlton J.C., Ganguly R.
*   <Astrophys. J., 613, 129-150 (2004)>
*   =2004ApJ...613..129W
C=============================================================================

C  Internal variables

      integer*4 i__

c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 

C  Declarations for 'table2.dat'	! Line Identifications and Equivalent Width
                             Measurements

      integer*4 nr__
      parameter (nr__=337)	! Number of records
      character*137 ar__   	! Full-size record

      character*14  Name        ! Quasar name
      real*8        z           ! Redshift
      real*8        l_STIS      ! (0.1nm) ? STIS observed wavelength in Angstroms
      character*1   l_EW_STIS   ! Limit flag on EW(STIS)
      real*4        EW_STIS     ! (0.1nm) ? STIS equivalent width in Angstroms
      real*4        e_EW_STIS_p ! (0.1nm) ? STIS Poisson noise uncertainty in Angstroms
*                                   (1)
      real*4        e_EW_STIS_c ! (0.1nm) ? STIS continuum fit uncertainty in Angstroms
*                                   (1)
      character*1   f_l_STIS    ! STIS blend flag (2)
      real*8        l_FOS       ! (0.1nm) ? FOS observed wavelength in Angstroms
      character*1   l_EW_FOS    ! Limit flag on EW(FOS)
      real*4        EW_FOS      ! (0.1nm) ? FOS equivalent width in Angstroms
      real*4        e_EW_FOS_p  ! (0.1nm) ? FOS Poisson noise uncertainty in Angstroms
*                                   (1)
      real*4        e_EW_FOS_c  ! (0.1nm) ? FOS continuum fit uncertainty in Angstroms
*                                   (1)
      character*1   f_l_FOS     ! [o] Indicates FOS values out of range
      character*1   l_DEW       ! Limit flag on DEW
      real*4        DEW         ! (0.1nm) ? Difference between FOS and STIS equivalent
*                                   widths in Angstroms
      character*1   l_DEW_sig   ! Limit flag on DEW/sig
      real*4        DEW_sig     ! ? Deviation normalized to error (3)
      character*1   f_DEW_sig   ! [u] Indicates a variable absorption line
      character*5   Line        ! Line identification
      character*2   f_Line      ! Flag on Line (4)
      real*8        Wave        ! (0.1nm) ? Adopted rest wavelength in Angstroms
      character*1   f_Wave      ! [ae] Flag on Wave (5)
      real*4        Dlambda     ! (0.1nm) ? Difference between observed and expected
*                                   wavelength in Angstroms
      real*8        zAbs        ! ? Redshift of the absorption-line system
      integer*4     DVel        ! (km/s) ? Velocity offset of an absorption line (6)
      character*1   f_DVel      ! [u] Indicates variable absorption for DVel
*Note (1): The uncertainty is broken up into two parts, which should be added
*          in quadrature to give the final error bar on the equivalent width.
*Note (2): A S indicates that the line listed in the STIS column is a
*    known blend and the EW given is the total EW of the blend. In the 
*    same row, under the FOS column, we give the sum of the EWs of the
*    individual lines making up the blend, as measured in the FOS spectrum.
*    The rows below the total EW row in the FOS column give the EWs of the
*    individual lines. These lines are identified with increasing index
*    numbers in column 5. The corresponding rows in the STIS column are
*    left blank.
*Note (3): The error bar was computed by adding all the relevant error bars
*          in quadrature.
*    (sig)^2^ = (e_EW(STIS)p)^2^+(e_EW(STIS)c)^2^+(e_EW(FOS)p)^2^+(e_EW(FOS)c)^2^
*    See text for more details.
*Note (4): Flag on Line is defined as follows:
*    b = The Si IV (1393) line at zAbs=1.009 in the spectrum of EX 0302-223
*        is contaminated by Galactic Mg II (2803).
*    c = The Ly{alpha} line at zAbs=1.125 in the spectrum of QSO 0957+561A
*        is contaminated by Galactic Fe II (2586).
*    d = In the case of PG 1241+176, the Galactic Fe II (2344) line and
*        the O VI (1032) line at zAbs=1.2735 are blended in both the STIS
*        and FOS spectra.
*    f = The C IV doublet at zAbs=0.2014 in the spectrum of PKS 2135-14 is
*        slightly contaminated by the Galactic Al II (1863) line.
*    g = The observed lines at 2376 and 2384 in the spectrum of MRC 2251-178
*        are unidentified. However, they are contaminated by the Galactic
*        Fe II (2344 and 2374), respectively.
*    u = variable absorption line.
*Note (5): Flag on Wave has the following meaning:
*    a = Mean wavelength of doublet; adopted when the doublet is unresolved
*        in both the FOS and STIS spectra.
*    e = In the case of PG 1718+481, the O VI (1037) and Fe II (2344) lines
*        appear to be blended with neighboring unidentified lines in both the
*        STIS and FOS spectra.
*Note (6): A positive velocity offset indicates a redshift of the absorption
*          line relative to the quasar. These velocities are based on
*          wavelengths measured from the FOS spectra whenever possible.

C=============================================================================

C  Loading file 'table2.dat'	! Line Identifications and Equivalent Width
*                             Measurements

C  Format for file interpretation

    1 format(
     +  A14,1X,F7.5,1X,F7.2,1X,A1,F5.2,1X,F5.2,1X,F4.2,1X,A1,1X,F7.2,
     +  1X,A1,F6.2,1X,F4.2,1X,F4.2,1X,A1,1X,A1,F5.2,1X,A1,F5.2,1X,A1,
     +  1X,A5,A2,1X,F7.2,1X,A1,1X,F5.2,1X,F7.5,1X,I6,1X,A1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table2.dat')
      write(6,*) '....Loading file: table2.dat'
      do i__=1,337
        read(1,'(A137)')ar__
        read(ar__,1)
     +  Name,z,l_STIS,l_EW_STIS,EW_STIS,e_EW_STIS_p,e_EW_STIS_c,
     +  f_l_STIS,l_FOS,l_EW_FOS,EW_FOS,e_EW_FOS_p,e_EW_FOS_c,f_l_FOS,
     +  l_DEW,DEW,l_DEW_sig,DEW_sig,f_DEW_sig,Line,f_Line,Wave,f_Wave,
     +  Dlambda,zAbs,DVel,f_DVel
        if(ar__(24:30) .EQ. '') l_STIS = rNULL__
        if(ar__(33:37) .EQ. '') EW_STIS = rNULL__
        if(ar__(39:43) .EQ. '') e_EW_STIS_p = rNULL__
        if(ar__(45:48) .EQ. '') e_EW_STIS_c = rNULL__
        if(ar__(52:58) .EQ. '') l_FOS = rNULL__
        if(ar__(61:66) .EQ. '') EW_FOS = rNULL__
        if(ar__(68:71) .EQ. '') e_EW_FOS_p = rNULL__
        if(ar__(73:76) .EQ. '') e_EW_FOS_c = rNULL__
        if(ar__(81:85) .EQ. '') DEW = rNULL__
        if(ar__(88:92) .EQ. '') DEW_sig = rNULL__
        if(ar__(104:110) .EQ. '') Wave = rNULL__
        if(ar__(114:118) .EQ. '') Dlambda = rNULL__
        if(ar__(120:126) .EQ. '') zAbs = rNULL__
        if(ar__(128:133) .EQ. '') DVel = iNULL__
c    ..............Just test output...........
        write(6,1)
     +  Name,z,l_STIS,l_EW_STIS,EW_STIS,e_EW_STIS_p,e_EW_STIS_c,
     +  f_l_STIS,l_FOS,l_EW_FOS,EW_FOS,e_EW_FOS_p,e_EW_FOS_c,f_l_FOS,
     +  l_DEW,DEW,l_DEW_sig,DEW_sig,f_DEW_sig,Line,f_Line,Wave,f_Wave,
     +  Dlambda,zAbs,DVel,f_DVel
c    .......End.of.Just test output...........
      end do
      close(1)

C=============================================================================
      stop
      end