FORTRAN Generation
(/./ftp/cats/J/A_A/441/831)

Conversion of standardized ReadMe file for file /./ftp/cats/J/A_A/441/831 into FORTRAN code for loading all data files into arrays.

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-Jun-08
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/A+A/441/831       Electron impact excitation of Ar XVII    (Aggarwal+, 2005)
*================================================================================
*Electron impact excitation of Ar XVII.
*    Aggarwal K.M., Keenan F.P.
*   <Astron. Astrophys. 441, 831 (2005)>
*   =2005A&A...441..831A
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table1.dat'	! Target levels of Ar XVII and their threshold energies

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

      integer*4     Index      (nr__) ! Index number
      character*5   Conf       (nr__) ! Configuration
      character*10  Level      (nr__) ! Level
      real*8        Expt       (nr__) ! (Ry) ? Theoretical threshold energy (1)
      real*8        CHIANTI    (nr__) ! (Ry) CHIANTI threshold energy (2)
      real*8        GRASP1     (nr__) ! (Ry) GRASP threshold energy, present results from
*                                   from GRASP without Breit and QED effects.
      real*8        GRASP2     (nr__) ! (Ry) GRASP threshold energy, present results from
*                                   GRASP with Breit and QED effects
*Note (1): NIST (http://www.physics.nist/gov/PhysRefData)
*Note (2): Energy levels of Sampson et al. (1983, At. Data Nucl. Data Tables,
*     29, 467) from chianti database (http://wwwsolar.nrl.navy.mil/chianti.html)

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

C  Declarations for 'table2.dat'	! Transition energies, radiative rates, oscillator
                           strengths and line strengths for electric dipole
                           (E1) and quadrupole (E2) transitions in Ar XVII

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

      integer*4     i          (nr__1) ! i level
      integer*4     j          (nr__1) ! j level
      real*4        DEij       (nr__1) ! (0.1nm) Transition energy
      real*4        AjiE1      (nr__1) ! (s-1) Radiative rates for electric dipole
*                                   (E1) transition
      real*4        fijE1      (nr__1) ! Oscillator strength for electric dipole
*                                   (E1) transition
      real*4        SE1        (nr__1) ! Line strength (in atomic units) for
*                                   electric dipole (E1) transition
      real*4        AjiE2      (nr__1) ! (s-1) Radiative rates for electric quadrupole
*                                   (E2) transition
      real*4        fijE2      (nr__1) ! Oscillator strength for electric quadrupole
*                                   (E2) transition
      real*4        SE2        (nr__1) ! Line strength (in atomic units) for
*                                   electric quadrupole (E2) transition

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

C  Declarations for 'table3.dat'	! Transition energies, radiative rates, oscillator
                           strengths and line strengths for magnetic dipole
                           (M1) and quadrupole (M2) transitions in Ar XVII

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

      integer*4     i_1        (nr__2) ! i level
      integer*4     j_1        (nr__2) ! j level
      real*4        DEij_1     (nr__2) ! (0.1nm) Transition energy
      real*4        AjiM1      (nr__2) ! (s-1) Radiative rates for magnetic dipole
*                                   (M1) transition
      real*4        fijM1      (nr__2) ! Oscillator strength for magnetic dipole
*                                   (M1) transition
      real*4        SM1        (nr__2) ! Line strength (in atomic units) for
*                                   magnetic dipole (M1) transition
      real*4        AjiM2      (nr__2) ! (s-1) Radiative rates for magnetic quadrupole
*                                   (M2) transition
      real*4        fijM2      (nr__2) ! Oscillator strength for magnetic quadrupole
*                                   (M2) transition
      real*4        SM2        (nr__2) ! Line strength (in atomic units) for
*                                   magnetic quadrupole (M2) transition

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

C  Declarations for 'table4.dat'	! Comparison of oscillator strengths for some
                           transitions of Ar XVII

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

      integer*4     i_2        (nr__3) ! i level
      integer*4     j_2        (nr__3) ! j level
      real*4        Chianti_1  (nr__3) ! Chianti oscillator strength
      real*4        Present    (nr__3) ! Present oscillator strength
      real*4        fL_fV      (nr__3) ! Ratio of our f-values in the length and
*                                   velocity forms

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

C  Declarations for 'table5.dat'	! Collision strengths for transitions in Ar XVII

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

      integer*4     i_3        (nr__4) ! i level
      integer*4     j_3        (nr__4) ! j level
      real*4        CS300      (nr__4) ! Collision strengths for E=300Ryd
      real*4        CS320      (nr__4) ! Collision strengths for E=320Ryd
      real*4        CS340      (nr__4) ! Collision strengths for E=340Ryd
      real*4        CS360      (nr__4) ! Collision strengths for E=360Ryd
      real*4        CS380      (nr__4) ! Collision strengths for E=380Ryd
      real*4        CS400      (nr__4) ! Collision strengths for E=400Ryd
      real*4        CS450      (nr__4) ! Collision strengths for E=450Ryd
      real*4        CS500      (nr__4) ! Collision strengths for E=500Ryd
      real*4        CS550      (nr__4) ! Collision strengths for E=550Ryd

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

C  Declarations for 'table6.dat'	! Effective collision strengths for transitions in
                           Ar XVII

      integer*4 nr__5
      parameter (nr__5=1176)	! Number of records
      character*104 ar__5  	! Full-size record

      integer*4     i_4        (nr__5) ! i level
      integer*4     j_4        (nr__5) ! j level
      real*4        ECS5_2     (nr__5) ! Effective collision strengths for logTe=5.20K
      real*4        ECS5_4     (nr__5) ! Effective collision strengths for logTe=5.40K
      real*4        ECS5_6     (nr__5) ! Effective collision strengths for logTe=5.60K
      real*4        ECS5_8     (nr__5) ! Effective collision strengths for logTe=5.80K
      real*4        ECS6_0     (nr__5) ! Effective collision strengths for logTe=6.00K
      real*4        ECS6_2     (nr__5) ! Effective collision strengths for logTe=6.20K
      real*4        ECS6_4     (nr__5) ! Effective collision strengths for logTe=6.40K
      real*4        ECS6_6     (nr__5) ! Effective collision strengths for logTe=6.60K
      real*4        ECS6_8     (nr__5) ! Effective collision strengths for logTe=6.80K
      real*4        ECS7_0     (nr__5) ! Effective collision strengths for logTe=7.00K
      real*4        ECS7_2     (nr__5) ! Effective collision strengths for logTe=7.20K

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

C  Declarations for 'table7.dat'	! Comparison of effective collision strengths for
                           transitions among the lowest 7 levels of Ar XVII

      integer*4 nr__6
      parameter (nr__6=42)	! Number of records
      character*21 ar__6  	! Full-size record

      integer*4     i_5        (nr__6) ! i level
      integer*4     j_5        (nr__6) ! j level
      real*4        ECSZS      (nr__6) ! Zhang & Sampson (1987ApJS...63..487Z)
*                                   effective collision strengths (T=2.33E+6K)
      real*4        ECS        (nr__6) ! Present results Effective collision strengths
*                                   (T=1.17E+7K)

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

C  Declarations for 'table8.dat'	! Comparison of effective collision strengths for some
                           transitions of Ar XVII

      integer*4 nr__7
      parameter (nr__7=16)	! Number of records
      character*59 ar__7  	! Full-size record

      integer*4     i_6        (nr__7) ! i level
      integer*4     j_6        (nr__7) ! j level
      real*4        ECS6_8_1   (nr__7) ! Present results Effective collision strengths
*                                   for logT=6.8K
      real*4        ECS7_0_1   (nr__7) ! Present results Effective collision strengths
*                                   for logT=7.0K
      real*4        ECS7_2_1   (nr__7) ! Present results Effective collision strengths
*                                   for logT=7.2K
      real*4        ECSK6_8    (nr__7) ! ? Keenan et al. (1987, Phys. Scr., 35, 432)
*                                     effective collision strengths for logT=6.8K
      real*4        ECSK7_0    (nr__7) ! ? Keenan et al. (1987, Phys. Scr., 35, 432)
*                                     effective collision strengths for logT=7.0K
      real*4        ECSK7_2    (nr__7) ! ? Keenan et al. (1987, Phys. Scr., 35, 432)
*                                     effective collision strengths for logT=7.2K

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

C  Loading file 'table1.dat'	! Target levels of Ar XVII and their threshold energies

C  Format for file interpretation

    1 format(I2,1X,A5,1X,A10,3X,F9.5,1X,F10.6,1X,F10.6,F10.6)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table1.dat')
      write(6,*) '....Loading file: table1.dat'
      do i__=1,49
        read(1,'(A63)')ar__
        read(ar__,1)
     +  Index(i__),Conf(i__),Level(i__),Expt(i__),CHIANTI(i__),
     +  GRASP1(i__),GRASP2(i__)
        if(ar__(23:31) .EQ. '') Expt(i__) = rNULL__
c    ..............Just test output...........
        write(6,1)
     +  Index(i__),Conf(i__),Level(i__),Expt(i__),CHIANTI(i__),
     +  GRASP1(i__),GRASP2(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table2.dat'	! Transition energies, radiative rates, oscillator
*                           strengths and line strengths for electric dipole
*                           (E1) and quadrupole (E2) transitions in Ar XVII

C  Format for file interpretation

    2 format(
     +  I2,1X,I2,1X,E9.4,1X,E9.4,1X,E9.4,1X,E9.4,1X,E9.4,1X,E9.4,1X,
     +  E9.4)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table2.dat')
      write(6,*) '....Loading file: table2.dat'
      do i__=1,720
        read(1,'(A75)')ar__1
        read(ar__1,2)
     +  i(i__),j(i__),DEij(i__),AjiE1(i__),fijE1(i__),SE1(i__),
     +  AjiE2(i__),fijE2(i__),SE2(i__)
c    ..............Just test output...........
        write(6,2)
     +  i(i__),j(i__),DEij(i__),AjiE1(i__),fijE1(i__),SE1(i__),
     +  AjiE2(i__),fijE2(i__),SE2(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table3.dat'	! Transition energies, radiative rates, oscillator
*                           strengths and line strengths for magnetic dipole
*                           (M1) and quadrupole (M2) transitions in Ar XVII

C  Format for file interpretation

    3 format(
     +  I2,1X,I2,1X,E9.4,1X,E9.4,1X,E9.4,1X,E9.4,1X,E9.4,1X,E9.4,1X,
     +  E9.4)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table3.dat')
      write(6,*) '....Loading file: table3.dat'
      do i__=1,720
        read(1,'(A75)')ar__2
        read(ar__2,3)
     +  i_1(i__),j_1(i__),DEij_1(i__),AjiM1(i__),fijM1(i__),SM1(i__),
     +  AjiM2(i__),fijM2(i__),SM2(i__)
c    ..............Just test output...........
        write(6,3)
     +  i_1(i__),j_1(i__),DEij_1(i__),AjiM1(i__),fijM1(i__),SM1(i__),
     +  AjiM2(i__),fijM2(i__),SM2(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table4.dat'	! Comparison of oscillator strengths for some
*                           transitions of Ar XVII

C  Format for file interpretation

    4 format(I2,1X,I2,1X,E8.4,1X,E8.4,1X,F3.1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table4.dat')
      write(6,*) '....Loading file: table4.dat'
      do i__=1,82
        read(1,'(A27)')ar__3
        read(ar__3,4)
     +  i_2(i__),j_2(i__),Chianti_1(i__),Present(i__),fL_fV(i__)
c    ..............Just test output...........
        write(6,4)
     +  i_2(i__),j_2(i__),Chianti_1(i__),Present(i__),fL_fV(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table5.dat'	! Collision strengths for transitions in Ar XVII

C  Format for file interpretation

    5 format(
     +  I2,1X,I2,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,
     +  E8.4,1X,E8.4,1X,E8.4)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table5.dat')
      write(6,*) '....Loading file: table5.dat'
      do i__=1,1176
        read(1,'(A86)')ar__4
        read(ar__4,5)
     +  i_3(i__),j_3(i__),CS300(i__),CS320(i__),CS340(i__),CS360(i__),
     +  CS380(i__),CS400(i__),CS450(i__),CS500(i__),CS550(i__)
c    ..............Just test output...........
        write(6,5)
     +  i_3(i__),j_3(i__),CS300(i__),CS320(i__),CS340(i__),CS360(i__),
     +  CS380(i__),CS400(i__),CS450(i__),CS500(i__),CS550(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table6.dat'	! Effective collision strengths for transitions in
*                           Ar XVII

C  Format for file interpretation

    6 format(
     +  I2,1X,I2,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,
     +  E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table6.dat')
      write(6,*) '....Loading file: table6.dat'
      do i__=1,1176
        read(1,'(A104)')ar__5
        read(ar__5,6)
     +  i_4(i__),j_4(i__),ECS5_2(i__),ECS5_4(i__),ECS5_6(i__),
     +  ECS5_8(i__),ECS6_0(i__),ECS6_2(i__),ECS6_4(i__),ECS6_6(i__),
     +  ECS6_8(i__),ECS7_0(i__),ECS7_2(i__)
c    ..............Just test output...........
        write(6,6)
     +  i_4(i__),j_4(i__),ECS5_2(i__),ECS5_4(i__),ECS5_6(i__),
     +  ECS5_8(i__),ECS6_0(i__),ECS6_2(i__),ECS6_4(i__),ECS6_6(i__),
     +  ECS6_8(i__),ECS7_0(i__),ECS7_2(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table7.dat'	! Comparison of effective collision strengths for
*                           transitions among the lowest 7 levels of Ar XVII

C  Format for file interpretation

    7 format(I2,1X,I2,1X,E7.3,1X,E7.3)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table7.dat')
      write(6,*) '....Loading file: table7.dat'
      do i__=1,42
        read(1,'(A21)')ar__6
        read(ar__6,7)i_5(i__),j_5(i__),ECSZS(i__),ECS(i__)
c    ..............Just test output...........
        write(6,7)i_5(i__),j_5(i__),ECSZS(i__),ECS(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table8.dat'	! Comparison of effective collision strengths for some
*                           transitions of Ar XVII

C  Format for file interpretation

    8 format(I2,1X,I2,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4,1X,E8.4)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table8.dat')
      write(6,*) '....Loading file: table8.dat'
      do i__=1,16
        read(1,'(A59)')ar__7
        read(ar__7,8)
     +  i_6(i__),j_6(i__),ECS6_8_1(i__),ECS7_0_1(i__),ECS7_2_1(i__),
     +  ECSK6_8(i__),ECSK7_0(i__),ECSK7_2(i__)
        if(ar__7(34:41) .EQ. '') ECSK6_8(i__) = rNULL__
        if(ar__7(43:50) .EQ. '') ECSK7_0(i__) = rNULL__
        if(ar__7(52:59) .EQ. '') ECSK7_2(i__) = rNULL__
c    ..............Just test output...........
        write(6,8)
     +  i_6(i__),j_6(i__),ECS6_8_1(i__),ECS7_0_1(i__),ECS7_2_1(i__),
     +  ECSK6_8(i__),ECSK7_0(i__),ECSK7_2(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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