FORTRAN Generation
(/./ftp/cats/J/MNRAS/357/1357)

Conversion of standardized ReadMe file for file /./ftp/cats/J/MNRAS/357/1357 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-Sep-06
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/MNRAS/357/1357   Large-scale clumpy structure in Lynx region   (Nakata+, 2005)
*================================================================================
*Discovery of a large-scale clumpy structure around the Lynx supercluster
*at z~1.27.
*    Nakata F., Kodama T., Shimasaku K., Doi M., Furusawa H., Hamabe M.,
*    Kimura M., Komiyama Y., Miyazaki S., Okamura S., Ouchi M., Sekiguchi M.,
*    Ueda Y., Yagi M., Yasuda N.
*   <Mon. Not. R. Astron. Soc., 357, 1357-1362 (2005)>
*   =2005MNRAS.357.1357N
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table2.dat'	! Properties of the clusters and the cluster/group 
                             candidates.

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

C  J2000.0 position composed of: RAh RAm RAs DE- DEd DEm DEs
      real*8        RAdeg       ! (deg) Right Ascension J2000.0
      real*8        DEdeg       ! (deg)     Declination J2000.0
C  ---------------------------------- ! (position vector(s) in degrees)

      character*3   v_NKS2005_  ! Cluster/group identification (clN or grN)
      character*1   f__NKS2005_ ! [c] contamination flag (1)
      integer*4     RAh         ! (h) Right ascension (J2000.0)
      integer*4     RAm         ! (min) Right ascension (J2000.0)
      real*4        RAs         ! (s) Right ascension (J2000.0)
      character*1   DE_         ! Declination sign (J2000.0)
      integer*4     DEd         ! (deg) Declination (J2000.0)
      integer*4     DEm         ! (arcmin) Declination (J2000.0)
      real*4        DEs         ! (arcsec) Declination (J2000.0)
      real*4        Sigma       ! (Mpc-2) Local surface density (2)
      real*4        e_Sigma     ! (Mpc-2) rms uncertainty on Sigma
      character*1   n_Sigma     ! [)] Uncertainty flag on Sigma
      real*4        SigmaR      ! (Mpc-2) Red local surface density (2)
      real*4        e_SigmaR    ! (Mpc-2) rms uncertainty on Sigmared
      character*1   n_SigmaR    ! [)] Uncertainty flag on Sigmared
      real*4        N0_5        ! Number of galaxies within a 0.5-Mpc radius
*                                   from the cluster centre and within the
*                                   magnitude range between m1 and m1+3
*                                   measured in the R band at z~0.5
      real*4        e_N0_5      ! rms uncertainty on N0.5
      character*1   n_N0_5      ! [)] Uncertainty flag on N0.5
      character*3   R           ! Richness class
      character*1   n_R         ! [)] Uncertainty flag on R
      real*4        FX          ! (aW/m2) ?=- X-ray flux density in 0.5-2.0keV band (3)
      real*4        e_FX        ! (aW/m2) ?=- rms uncertainty on FX
      character*1   n_FX        ! [bd] Note on FX (4)
      character*1   l_LX        ! Limit flag on LX (3{sigma} upper limit)
      real*4        LX          ! (10+37W) ?=- X-ray luminosity in 0.5-2.0keV band (3)
      real*4        e_LX        ! (10+37W) ?=- rms uncertainty on LX
*Note (1): The 'c' flag indicates that the tabulated numbers for gr1
*    may be significantly affected by the contamination of the blue
*    galaxies in the X<~4.5 (arcmin) region, and hence unreliable
*Note (2): The local surface densities given in the table indicate
*    those after the remaining field contaminations have been subtracted
*    (see Section 3 for detail). In the table, H_0_=69km/s/Mpc,
*    {Omega}_0_=0.3 and {Lambda}_0-=0.7 are assumed.
*Note (3): r=35-arcsec aperture; flux in 10^-15^erg/cm^2^/s,
*          luminosity in 10^+44^erg/s
*Note (4): Notes on FX as follows:
*      b = Quoted from Stanford et al. (2001ApJ...552..504S)
*      d = The flux (corrected for the Galactic absorption) and luminosity 
*          are given in the rest-frame 0.5-2keV band. They are converted 
*          from the 0.5-2keV count rate in the observed frame by assuming 
*          an optically thin thermal plasma model at z=1.27 with a 
*          temperature of 6keV and elemental abundances of 0.3 solar.

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

C  Loading file 'table2.dat'	! Properties of the clusters and the cluster/group 
*                             candidates.

C  Format for file interpretation

    1 format(
     +  A3,A1,1X,I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,F4.1,1X,F4.1,1X,
     +  F3.1,A1,1X,F4.1,1X,F3.1,A1,1X,F4.1,1X,F3.1,A1,1X,A3,A1,1X,
     +  F4.1,1X,F3.1,A1,1X,A1,F4.2,1X,F4.2)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table2.dat')
      write(6,*) '....Loading file: table2.dat'
      do i__=1,9
        read(1,'(A83)')ar__
        read(ar__,1)
     +  v_NKS2005_,f__NKS2005_,RAh,RAm,RAs,DE_,DEd,DEm,DEs,Sigma,
     +  e_Sigma,n_Sigma,SigmaR,e_SigmaR,n_SigmaR,N0_5,e_N0_5,n_N0_5,R,
     +  n_R,FX,e_FX,n_FX,l_LX,LX,e_LX
        if (idig(ar__(64:67)).EQ.0) FX =  rNULL__
        if (idig(ar__(69:71)).EQ.0) e_FX =  rNULL__
        if (idig(ar__(75:78)).EQ.0) LX =  rNULL__
        if (idig(ar__(80:83)).EQ.0) e_LX =  rNULL__
        RAdeg = rNULL__
        DEdeg = rNULL__
c  Derive coordinates RAdeg and DEdeg from input data
c  (RAdeg and DEdeg are set to rNULL__ when unknown)
        if(RAh .GT. -180) RAdeg=RAh*15.
        if(RAm .GT. -180) RAdeg=RAdeg+RAm/4.
        if(RAs .GT. -180) RAdeg=RAdeg+RAs/240.
        if(DEd .GE. 0) DEdeg=DEd
        if(DEm .GE. 0) DEdeg=DEdeg+DEm/60.
        if(DEs .GE. 0) DEdeg=DEdeg+DEs/3600.
        if(DE_.EQ.'-'.AND.DEdeg.GE.0) DEdeg=-DEdeg
c    ..............Just test output...........
        write(6,1)
     +  v_NKS2005_,f__NKS2005_,RAh,RAm,RAs,DE_,DEd,DEm,DEs,Sigma,
     +  e_Sigma,n_Sigma,SigmaR,e_SigmaR,n_SigmaR,N0_5,e_N0_5,n_N0_5,R,
     +  n_R,FX,e_FX,n_FX,l_LX,LX,e_LX
        write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg
c    .......End.of.Just test output...........
      end do
      close(1)

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

C Locate position of first digit in string; or return 0
      integer function idig(c)
      character*(*) c
      character*1 c1
      integer lc,i
      lc=len(c)
      idig=0
      do i=1,lc
         if(c(i:i).ne.' ') go to 1
      end do
    1 if(i.gt.lc) return
      c1=c(i:i)
      if(c1.eq.'.'.or.c1.eq.'-'.or.c1.eq.'+') i=i+1
      if(i.gt.lc) return
      c1=c(i:i)
      if(c1.ge.'0'.and.c1.le.'9') idig=i
      return
      end