FORTRAN Generation
(/./ftp/cats/J/ApJS/211/4)

Conversion of standardized ReadMe file for file /./ftp/cats/J/ApJS/211/4 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-Apr-19
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/211/4        Thorium spectrum from 250nm to 5500nm        (Redman+, 2014)
*================================================================================
*The spectrum of thorium from 250 nm to 5500 nm: Ritz wavelengths and optimized
*energy levels.
*    Redman S.L., Nave G., Sansonetti C.J.
*   <Astrophys. J. Suppl. Ser., 211, 4 (2014)>
*   =2014ApJS..211....4R
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table1.dat'	! Our new thorium measurements

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

      real*8        sigma       ! (cm-1) [8530.4/26995.8] Wavenumber {sigma}
      real*8        e_sigma     ! (cm-1) Uncertainty in sigma
      real*8        lambda      ! (nm) [370.4/1172.3] Vacuum wavelength {lambda}
      real*8        e_lambda    ! (nm) Uncertainty in Vsigma
      integer*4     Width       ! (10-3cm-1) [13/154] Line width
      integer*4     SN          ! [2/99] Measure signal-to-noise
      character*5   Ion         ! Species identifier
      integer*4     E1          ! (cm-1) ? Odd level energy
      character*8   J1          ! Odd J level designation
      integer*4     E0          ! (cm-1) ? Even level energy
      character*7   J0          ! Even J level designation
      real*8        Diff        ! (cm-1) ? Difference between this study and Ritz
*                                     wavenumbers {Delta}{sigma}
      character*1   Note        ! Additional note (1)
*Note (1): An "A" in the last column indicates a measured line that matches
*     more than one classification.

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

C  Declarations for 'table4.dat'	! New Thorium energy levels

      integer*4 nr__1
      parameter (nr__1=102)	! Number of records
      character*44 ar__1  	! Full-size record

      character*2   Ion_1       ! [I II] Ion stage (I=neutral)
      character*1   P           ! [eo] Parity, even or odd
      real*8        E           ! (cm-1) Energy level
      real*4        e_E         ! (cm-1) Energy uncertainty
      character*12  J           ! List of possible J values
      integer*4     N           ! Number of lines used to derive the level

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

C  Declarations for 'table5.dat'	! Newly identified neon lines from Palmer &
                               Engleman (1983ats..book.....P)

      integer*4 nr__2
      parameter (nr__2=69)	! Number of records
      character*74 ar__2  	! Full-size record

      real*8        Psigma      ! (cm-1) [7839.3/36265.7] The Palmer & Engleman
*                                     (1983ats..book.....P) wavenumber
      real*8        e_Psigma    ! (cm-1) Uncertainty in Psigma
      real*8        Osigma      ! (cm-1) [7839.3/36265.7] Observed Neon wavenumber
      real*4        e_Osigma    ! (cm-1) Uncertainty in Osigma
      real*8        Rsigma      ! (cm-1) [7902.5/36265.7]? Ritz wavenumber
      real*4        e_Rsigma    ! (cm-1) ? Uncertainty in Rsigma
      character*10  Ref         ! Source(s) (1)
      character*2   Ion_2       ! [I II] Ionization state (I=neutral or II)
      character*1   Note_1      ! [or] Line matches Observed (o) or
*                                  Ritz (r) wavenumber (blank is both)
*Note (1): Literature values for the NeI lines are taken from the compilation
*     of Saloman & Sansonetti (2004JPCRD..33.1113S), while those of NeII are
*     from Kramida & Nave (2006EPJD...39..331K). Source identifications are:
*  MH2 = Meggers & Humphreys (1934, Bur. Stand. J. Res., 13, 293),
*  BAL = Burns et al. (1950JOSA...40..339B),
*  EHR = Ehrhardt J.C. (1970PhDT........32E),
*  P71 = Persson W. (1971PhyS....3..133P),
*  PE83 = Palmer & Engleman (1983ats..book.....P),
*  SBS04 = Sansonetti et al. (2004),
*  KN06 = Kramida & Nave (2006EPJD...39..331K).

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

C  Declarations for 'table6.dat'	! Thorium line list

      integer*4 nr__3
      parameter (nr__3=20104)	! Number of records
      character*115 ar__3  	! Full-size record

      real*8        Rsigma_1    ! (cm-1) [1846/42625] Ritz wavenumber
      real*8        e_Rsigma_1  ! (cm-1) Uncertainty in Rsigma
      real*8        Rlambda     ! (nm) [2346/54147] Ritz vacuum wavelength {lambda}
      real*8        e_Rlambda   ! (nm) Uncertainty in Rlambda
      character*3   Ion_3       ! [I II III] Ion stage (I=neutral)
      integer*4     Int         ! [0/53000] Relative intensity
      character*12  ID1         ! Lower energy level tag; energy, J, parity
      character*12  ID2         ! Upper energy level tag; energy, J, parity
      real*8        sigma_1     ! (cm-1) [1846/42625] Measured wavenumber {sigma}
      real*8        e_sigma_1   ! (cm-1) [0/0.015] Uncertainty in sigma
      character*6   Ref_1       ! Source (1)
      character*2   Note_2      ! Additional note (2)
*Note (1): Source as follows:
*    GBCZ74 = Giacchetti et al. (1974, JRNBS, 78A, 247);
*      ZC74 = Zalubas & Corliss (1974, JRNBS, 78A, 163 );
*       Z76 = Zalubas R. (1976, JRNBS, 80A, 221);
*      PE83 = Palmer & Engleman (1983ats..book.....P);
*     EHW03 = Engleman et al. (2003JQSRT..78....1E);
*      LP07 = Lovis & Pepe (2007, Cat. J/A+A/468/1115);
*     KNS08 = Kerber et al. (2008ApJS..178..374K);
*     RNS13 = This publication.
*Note (2): The note in the last column means:
*   A = a measured line that matches more than one classification.
*  B? = a line that deviates from the Ritz wavenumber by 5 or more times
*       its measured uncertainty, and therefore was not included in the
*       level optimization.

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

C  Declarations for 'table7.dat'	! Optimized thorium energy levels

      integer*4 nr__4
      parameter (nr__4=1368)	! Number of records
      character*63 ar__4  	! Full-size record

      character*3   Ion_4       ! [I II III] Ion stage (I=neutral)
      character*1   P_1         ! [eo] Parity, even or odd
      character*12  ID          ! Energy level tag; energy_J_parity
      real*8        E_1         ! (cm-1) [0/66427.2] Energy
      real*8        e_E_1       ! (cm-1) [0/0.018] Uncertainty in E
      character*12  J_1         ! Possible J level(s)
      integer*4     N_1         ! [1/198] Number of lines used

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

C  Loading file 'table1.dat'	! Our new thorium measurements

C  Format for file interpretation

    1 format(
     +  F11.5,1X,F7.5,1X,F11.6,1X,F8.6,1X,I3,1X,I2,1X,A5,2X,I5,1X,A8,
     +  1X,I5,1X,A7,1X,F8.5,1X,A1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table1.dat')
      write(6,*) '....Loading file: table1.dat'
      do i__=1,3800
        read(1,'(A94)')ar__
        read(ar__,1)
     +  sigma,e_sigma,lambda,e_lambda,Width,SN,Ion,E1,J1,E0,J0,Diff,
     +  Note
        if(ar__(56:60) .EQ. '') E1 = iNULL__
        if(ar__(71:75) .EQ. '') E0 = iNULL__
        if(ar__(85:92) .EQ. '') Diff = rNULL__
c    ..............Just test output...........
        write(6,1)
     +  sigma,e_sigma,lambda,e_lambda,Width,SN,Ion,E1,J1,E0,J0,Diff,
     +  Note
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table4.dat'	! New Thorium energy levels

C  Format for file interpretation

    2 format(3X,A2,1X,A1,2X,F10.4,2X,F6.4,2X,A12,1X,I2)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table4.dat')
      write(6,*) '....Loading file: table4.dat'
      do i__=1,102
        read(1,'(A44)')ar__1
        read(ar__1,2)Ion_1,P,E,e_E,J,N
c    ..............Just test output...........
        write(6,2)Ion_1,P,E,e_E,J,N
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table5.dat'	! Newly identified neon lines from Palmer &
*                               Engleman (1983ats..book.....P)

C  Format for file interpretation

    3 format(
     +  F11.5,1X,F7.5,1X,F10.4,1X,F6.4,1X,F10.4,1X,F6.4,1X,A10,4X,A2,
     +  1X,A1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table5.dat')
      write(6,*) '....Loading file: table5.dat'
      do i__=1,69
        read(1,'(A74)')ar__2
        read(ar__2,3)
     +  Psigma,e_Psigma,Osigma,e_Osigma,Rsigma,e_Rsigma,Ref,Ion_2,
     +  Note_1
        if(ar__2(39:48) .EQ. '') Rsigma = rNULL__
        if(ar__2(50:55) .EQ. '') e_Rsigma = rNULL__
c    ..............Just test output...........
        write(6,3)
     +  Psigma,e_Psigma,Osigma,e_Osigma,Rsigma,e_Rsigma,Ref,Ion_2,
     +  Note_1
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table6.dat'	! Thorium line list

C  Format for file interpretation

    4 format(
     +  F12.6,1X,F8.6,1X,F12.6,1X,F8.6,4X,A3,1X,I5,1X,A12,1X,A12,1X,
     +  F11.5,2X,F7.5,2X,A6,2X,A2)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table6.dat')
      write(6,*) '....Loading file: table6.dat'
      do i__=1,20104
        read(1,'(A115)')ar__3
        read(ar__3,4)
     +  Rsigma_1,e_Rsigma_1,Rlambda,e_Rlambda,Ion_3,Int,ID1,ID2,
     +  sigma_1,e_sigma_1,Ref_1,Note_2
c    ..............Just test output...........
        write(6,4)
     +  Rsigma_1,e_Rsigma_1,Rlambda,e_Rlambda,Ion_3,Int,ID1,ID2,
     +  sigma_1,e_sigma_1,Ref_1,Note_2
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table7.dat'	! Optimized thorium energy levels

C  Format for file interpretation

    5 format(3X,A3,1X,A1,4X,A12,1X,F12.6,1X,F8.6,1X,A12,1X,I3)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table7.dat')
      write(6,*) '....Loading file: table7.dat'
      do i__=1,1368
        read(1,'(A63)')ar__4
        read(ar__4,5)Ion_4,P_1,ID,E_1,e_E_1,J_1,N_1
c    ..............Just test output...........
        write(6,5)Ion_4,P_1,ID,E_1,e_E_1,J_1,N_1
c    .......End.of.Just test output...........
      end do
      close(1)

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