FORTRAN Generation
(/./ftp/cats/J/A_A/640/A30)

Conversion of standardized ReadMe file for file /./ftp/cats/J/A_A/640/A30 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-May-15
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/640/A30       Galaxies in the Perseus cluster field     (Meusinger+, 2020)
*================================================================================
*The galaxy population within the virial radius of the Perseus cluster.
*    Meusinger H., Rudolf C., Stecklum B., Hoeft M., Mauersberger R., Apai D.
*    <Astron. Astrophys. 640, A30 (2020)>
*    =2020A&A...640A..30M        (SIMBAD/NED BibCode)
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'catalog.dat'	! Galaxies in Perseus field

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

C  J2000 position composed of: RAdeg DEdeg
      integer*4     Seq        (nr__) ! [1/1294] Running catalogue number
      character*15  Name       (nr__) ! Object designation  (HHMMSS.s+DDMMSS)
      real*8        RAdeg      (nr__) ! (deg) Right ascension (J2000)
      real*8        DEdeg      (nr__) ! (deg) Declination (J2000)
      character*14  OName      (nr__) ! Cross ID
      integer*4     BM99       (nr__) ! ? Catalogue number in Brunzendorf &
*                                      Meusinger (1999A&AS..139..141B,
*                                      Cat. J/A+AS/139/141),
*                                      [BM99] NNN in Simnbad
      real*4        R          (nr__) ! (arcmin) Cluster-centric distance in arcmin
      real*4        z          (nr__) ! ? Spectroscopic redshift
      integer*4     r_z        (nr__) ! [1/5]? Source of spectroscopic redshift (1)
      integer*4     Halpha     (nr__) ! [0/5]? Halpha detection flag (2)
      integer*4     cl1        (nr__) ! [0/9]? Numerical descriptor of
*                                      morphological class (3)
      integer*4     f_cl1      (nr__) ! [0/3]? Reliability flag for cl1 (4)
      character*9   cl2        (nr__) ! ? More detailed morphological description
      integer*4     pec        (nr__) ! [0/9]? Numerical descriptor of the
*                                      peculiarity type (5)
      integer*4     f_pec      (nr__) ! [0/3]? Reliability flag for pec (6)
      real*4        fracDeV    (nr__) ! ? Coefficient of the de Vaucouleurs term
*                                      in the surface brightness profile fit (7)
      integer*4     r_fracDeV  (nr__) ! [1/2]? Source of fracDeV (8)
      real*4        umag       (nr__) ! (mag) ? SDSS model magnitude in the u band (9)
      real*4        gmag       (nr__) ! (mag) ? SDSS model magnitude in the g band (9)
      real*4        rmag       (nr__) ! (mag) ? SDSS model magnitude in the r band (9)
      real*4        imag       (nr__) ! (mag) ? SDSS model magnitude in the i band (9)
      real*4        zmag       (nr__) ! (mag) ? SDSS model magnitude in the z band (9)
      real*4        Jmag       (nr__) ! (mag) ? 2MASS XSC magnitude in the J band (9)
      real*4        Hmag       (nr__) ! (mag) ? 2MASS XSC magnitude in the H band (9)
      real*4        Kmag       (nr__) ! (mag) ? 2MASS XSC magnitude in the K band (9)
      real*4        W1mag      (nr__) ! (mag) ? WISE magnitude in the W1 band (9)
      real*4        W2mag      (nr__) ! (mag) ? WISE magnitude in the W2 band (9)
      real*4        W3mag      (nr__) ! (mag) ? WISE magnitude in the W3 band (9)
      real*4        W4mag      (nr__) ! (mag) ? WISE magnitude in the W4 band (9)
      real*4        E_B_V      (nr__) ! (mag) Galactic foreground reddening E(B-V) (10)
      integer*4     ClMemb     (nr__) ! [0/1]? Spectroscopic cluster membership
*                                      flag (11)
      integer*4     FlagMLSW1  (nr__) ! [0/1]? Membership flag for the
*                                      MLS_W1 sample (11)
      integer*4     FlagMLSur  (nr__) ! [0/1]? Membership flag for the
*                                      MLS_ur sample (11)
      real*4        rMAG_1     (nr__) ! (mag) ? Absolute SDSS r band magnitude
      integer*4     WHAN_type  (nr__) ! [1/4]? Spectral type from the
*                                      WHAN diagram (12)
      real*4        logSFR     (nr__) ! ([Msun/yr]) ? Decadic logarithm of star formation rate
*                                      in solar mass per year (13)
      real*4        logMstar   (nr__) ! ([Msun]) ? Decadic logarithm of stellar mass
*                                      in solar mass (14)
      integer*4     bl_flag    (nr__) ! [1]? Broad emission line flag (15)
      real*4        logXMMflux (nr__) ! ([mW/m+2]) ? Decadic logarithm of mean XMM flux
*                                      in 0.2-12 keV band in mW/m^2^
      real*4        logNVSSflux(nr__) ! ([mJy]) ? Decadic logarithm of integrated 1.4GHz
*                                      flux density in mJy
      real*4        q          (nr__) ! ? FIR-to-radio flux density ratio (16)
*Note (1): Source of spectroscopic redshift as follows:
*    1 = present study (TLS-CA survey)
*    2 = present study (TLS-CA survey)
*    3 = SDSS
*    4 = other sources from NED
*    5 = Sakai et al. (2012ApJS..199...36S, Cat. J/ApJS/199/36)
*Note (2): Halpha detection flag as follows:
*    0 = no, present study (TLS survey)
*    1 = weak, present study (TLS survey)
*    2 = moderate, present study (TLS survey)
*    3 = strong, present study (TLS survey)
*    4 = Sakai et al. (2012ApJS..199...36S, Cat. J/ApJS/199/36)
*Note (3): Morphological class code as follows:
*    0 = unclassified
*    1 = E
*    2 = E/S0
*    3 = S0
*    4 = S/S0
*    5 = Sa
*    6 = Sb/Sc
*    7 = S/Irr
*    8 = Irr
*    9 = merger
*Note (4): Reliability flag for cl1 as follows:
*    0 = unclassified
*    1 = low
*    2 = moderate
*    3 = high
*Note (5): Peculiarity type code as follows:
*    0 = no peculiarity
*    1 = weakly lopsided
*    2 = strongly lopsided
*    3 = minor merger
*    4 = early major merger
*    5 = intermediate major merger
*    6 = late major merger
*    7 = M51 type
*    8 = collisional ring
*    9 = others
*Note (6): Reliability flag for pec as follows:
*    0 = no peculiarity
*    1 = low
*    2 = moderate
*    3 = high
*Note (7): clipped between zero and one.
*Note (8): Source of fracDeV as follows:
*    1 = SDSS
*    2 = present study
*Note (9): not corrected for Galactic foreground extinction
*Note (10): from Schlafly & Finkbeiner (2011ApJ...737..103S)
*Note (11): Membership flag as follows:
*    0 = non-member
*    1 = member
*Note (12): Spectral type code as follows:
*    1 = star-forming (SF) galaxy
*    2 = strong AGN (sAGN)
*    3 = weak AGN (wAGN)
*    4 = retired galaxy
*Note (13): derived from WISE W3 using equation 4 from Cluver et al.
*    (2017ApJ...850...68C)
*Note (14): derived from WISE W1 and W2 using equation 1 from Jarrett et al.
*    (2017ApJ...836..182J)
*Note (15):  Broad emission line flag as follows:
*    1 = broad emission line indicated
*Note (16): from Miller & Owen (2001ApJS..134..355M, Cat. J/ApJS/134/355)

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

C  Declarations for 'list.dat'	! *List of spectra

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

      integer*4     Seq_1      (nr__1) ! [163/1293]? Running catalogue number
      character*15  Name_1     (nr__1) ! Object designation  (HHMMSS.s+DDMMSS)
      character*22  FileName   (nr__1) ! Name of the spectrum file in subdirectory sp

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

C  Declarations for 'sp/*'	! Individual spectra

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

      real*8        lambda     (nr__2) ! (0.1nm) Wavelength
      real*8        Flambda    (nr__2) ! Flux per wavelength interval
*                                  (arbitrarily normalised)

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

C  Loading file 'catalog.dat'	! Galaxies in Perseus field

C  Format for file interpretation

    1 format(
     +  I4,1X,A15,1X,D8.5,1X,D8.5,1X,A14,1X,I3,1X,F5.1,1X,F6.4,1X,I1,
     +  1X,I1,1X,I1,1X,I1,1X,A9,1X,I1,1X,I1,1X,F4.2,1X,I1,1X,F6.3,1X,
     +  F6.3,1X,F6.3,1X,F6.3,1X,F6.3,1X,F6.3,1X,F6.3,1X,F6.3,1X,F6.3,
     +  1X,F6.3,1X,F6.3,1X,F6.3,1X,F5.3,1X,I1,1X,I1,1X,I1,1X,F5.1,1X,
     +  I1,1X,F5.2,1X,F5.2,1X,I1,1X,F5.1,1X,F4.2,1X,F5.2)

C  Effective file loading

      open(unit=1,status='old',file=
     +'catalog.dat')
      write(6,*) '....Loading file: catalog.dat'
      do i__=1,1294
        read(1,'(A234)')ar__
        read(ar__,1)
     +  Seq(i__),Name(i__),RAdeg(i__),DEdeg(i__),OName(i__),BM99(i__),
     +  R(i__),z(i__),r_z(i__),Halpha(i__),cl1(i__),f_cl1(i__),
     +  cl2(i__),pec(i__),f_pec(i__),fracDeV(i__),r_fracDeV(i__),
     +  umag(i__),gmag(i__),rmag(i__),imag(i__),zmag(i__),Jmag(i__),
     +  Hmag(i__),Kmag(i__),W1mag(i__),W2mag(i__),W3mag(i__),
     +  W4mag(i__),E_B_V(i__),ClMemb(i__),FlagMLSW1(i__),
     +  FlagMLSur(i__),rMAG_1(i__),WHAN_type(i__),logSFR(i__),
     +  logMstar(i__),bl_flag(i__),logXMMflux(i__),logNVSSflux(i__),
     +  q(i__)
        if(ar__(55:57) .EQ. '') BM99(i__) = iNULL__
        if(ar__(65:70) .EQ. '') z(i__) = rNULL__
        if(ar__(72:72) .EQ. '') r_z(i__) = iNULL__
        if(ar__(74:74) .EQ. '') Halpha(i__) = iNULL__
        if(ar__(76:76) .EQ. '') cl1(i__) = iNULL__
        if(ar__(78:78) .EQ. '') f_cl1(i__) = iNULL__
        if(ar__(90:90) .EQ. '') pec(i__) = iNULL__
        if(ar__(92:92) .EQ. '') f_pec(i__) = iNULL__
        if(ar__(94:97) .EQ. '') fracDeV(i__) = rNULL__
        if(ar__(99:99) .EQ. '') r_fracDeV(i__) = iNULL__
        if(ar__(101:106) .EQ. '') umag(i__) = rNULL__
        if(ar__(108:113) .EQ. '') gmag(i__) = rNULL__
        if(ar__(115:120) .EQ. '') rmag(i__) = rNULL__
        if(ar__(122:127) .EQ. '') imag(i__) = rNULL__
        if(ar__(129:134) .EQ. '') zmag(i__) = rNULL__
        if(ar__(136:141) .EQ. '') Jmag(i__) = rNULL__
        if(ar__(143:148) .EQ. '') Hmag(i__) = rNULL__
        if(ar__(150:155) .EQ. '') Kmag(i__) = rNULL__
        if(ar__(157:162) .EQ. '') W1mag(i__) = rNULL__
        if(ar__(164:169) .EQ. '') W2mag(i__) = rNULL__
        if(ar__(171:176) .EQ. '') W3mag(i__) = rNULL__
        if(ar__(178:183) .EQ. '') W4mag(i__) = rNULL__
        if(ar__(191:191) .EQ. '') ClMemb(i__) = iNULL__
        if(ar__(193:193) .EQ. '') FlagMLSW1(i__) = iNULL__
        if(ar__(195:195) .EQ. '') FlagMLSur(i__) = iNULL__
        if(ar__(197:201) .EQ. '') rMAG_1(i__) = rNULL__
        if(ar__(203:203) .EQ. '') WHAN_type(i__) = iNULL__
        if(ar__(205:209) .EQ. '') logSFR(i__) = rNULL__
        if(ar__(211:215) .EQ. '') logMstar(i__) = rNULL__
        if(ar__(217:217) .EQ. '') bl_flag(i__) = iNULL__
        if(ar__(219:223) .EQ. '') logXMMflux(i__) = rNULL__
        if(ar__(225:228) .EQ. '') logNVSSflux(i__) = rNULL__
        if(ar__(230:234) .EQ. '') q(i__) = rNULL__
c    ..............Just test output...........
        write(6,1)
     +  Seq(i__),Name(i__),RAdeg(i__),DEdeg(i__),OName(i__),BM99(i__),
     +  R(i__),z(i__),r_z(i__),Halpha(i__),cl1(i__),f_cl1(i__),
     +  cl2(i__),pec(i__),f_pec(i__),fracDeV(i__),r_fracDeV(i__),
     +  umag(i__),gmag(i__),rmag(i__),imag(i__),zmag(i__),Jmag(i__),
     +  Hmag(i__),Kmag(i__),W1mag(i__),W2mag(i__),W3mag(i__),
     +  W4mag(i__),E_B_V(i__),ClMemb(i__),FlagMLSW1(i__),
     +  FlagMLSur(i__),rMAG_1(i__),WHAN_type(i__),logSFR(i__),
     +  logMstar(i__),bl_flag(i__),logXMMflux(i__),logNVSSflux(i__),
     +  q(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'list.dat'	! *List of spectra

C  Format for file interpretation

    2 format(I4,1X,A15,1X,A22)

C  Effective file loading

      open(unit=1,status='old',file=
     +'list.dat')
      write(6,*) '....Loading file: list.dat'
      do i__=1,44
        read(1,'(A43)')ar__1
        read(ar__1,2)Seq_1(i__),Name_1(i__),FileName(i__)
        if(ar__1(1:4) .EQ. '') Seq_1(i__) = iNULL__
c    ..............Just test output...........
        write(6,2)Seq_1(i__),Name_1(i__),FileName(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'sp/*'	! Individual spectra

C  Format for file interpretation

    3 format(F7.2,2X,F7.4)

C  Effective file loading

      open(unit=1,status='old',file=
     +'sp/*')
      write(6,*) '....Loading file: sp/*'
      do i__=1,44
        read(1,'(A16)')ar__2
        read(ar__2,3)lambda(i__),Flambda(i__)
c    ..............Just test output...........
        write(6,3)lambda(i__),Flambda(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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