FORTRAN Generation
(/./ftp/cats/J/ApJ/939/84)

Conversion of standardized ReadMe file for file /./ftp/cats/J/ApJ/939/84 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-Oct-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/ApJ/939/84 Complex organic molecules in high-mass SFRs with ALMA (Baek+, 2022)
*================================================================================
*Complex organic molecules detected in 12 high-mass star-forming regions with
*Atacama Large Millimeter/submillimeter Array.
*    Baek G., Lee J.-E., Hirota T., Kim K.-T., Kyoung Kim Mi
*   <Astrophys. J., 939, 84 (2022)>
*   =2022ApJ...939...84B
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table1.dat'	! Summary of observation and target information

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

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

      character*13  Reg        (nr__) ! Target name
      character*1   f_Reg      (nr__) ! [e] E=region observed from offset of the
*                                   phase center
      integer*4     RAh        (nr__) ! (h) Phase center of observation hour of right
*                                   ascension (J2000)
      integer*4     RAm        (nr__) ! (min) Phase center of observation minute of right
*                                   ascension (J2000)
      real*4        RAs        (nr__) ! (s) Phase center of observation second of right
*                                   ascension (J2000)
      character*1   DE_        (nr__) ! Phase center of observation sign of
*                                   declination (J2000) (2)
      integer*4     DEd        (nr__) ! (deg) Phase center of observation degree of
*                                   declination (J2000) (2)
      integer*4     DEm        (nr__) ! (arcmin) Phase center of observation arcminute of
*                                   declination (J2000)
      real*4        DEs        (nr__) ! (arcsec) Phase center of observation arcsecond of
*                                   declination (J2000)
      real*4        RAOff      (nr__) ! (arcsec) [-13.8/5.1] RA position offset from the phase
*                                   center to the strongest continuum peak of the
*                                   target
      real*4        DEOff      (nr__) ! (arcsec) [-4.15/13.6] DEC position offset from the
*                                   phase center to the strongest continuum peak
*                                   of the target
      character*1   f_DEOff    (nr__) ! [d] Flag on DEOff (1)
      real*4        rms        (nr__) ! (Jy/beam) [4.5e-05/0.003] rms values (2)
      real*4        Dist       (nr__) ! (kpc) [1.6/8] Distance
      character*4   r_Dist     (nr__) ! Reference (3)
      character*1   f_r_Dist   (nr__) ! Flag on r_Dist (1)
*Note (1): Flag as follows:
*    c = The distance is assumed to be the same as that of G18.34+1.78.
*    d = G23.43-0.18 is observed toward the G23.43-0.18 C2 for the pointing
*         center, southern from the strongest continuum peak at C1.
*Note (2): rms values of primary beam uncorrected continuum images are presented
*    to estimate the sensitivity of the observation.
*Note (3): Reference as follows:
* B09  = Brunthaler et al. (2009ApJ...693..424B)
* BT12 = Butler & Tan (2012ApJ...754....5B)
* H22  = Hirota et al. (2022PASJ...74.1234H)
* K20  = Kim et al. (2020ApJ...896..127K)
* R14  = Reid et al. (2014, J/ApJ/783/130)
* R16  = Reid et al. (2016ApJ...823...77R)
* S17  = Saral et al. (2017, J/ApJ/839/108)
* T17  = Towner et al. (2017ApJS..230...22T)
* U15  = Urquhart et al. (2015, J/MNRAS/446/3461)
* W15  = Wienen et al. (2015, J/A+A/579/A91)

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

C  Declarations for 'table2.dat'	! Summary of core detection in 1.3mm continuum

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

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

      character*13  Reg_1      (nr__1) ! Region name as in Table 1
      character*3   Core       (nr__1) ! Core identifier within Reg
      integer*4     RAh_1      (nr__1) ! (h) Hour of right ascension (J2000)
      integer*4     RAm_1      (nr__1) ! (min) Minute of right ascension (J2000)
      real*4        RAs_1      (nr__1) ! (s) Second of right ascension (J2000)
      character*1   DE__1      (nr__1) ! Sign of declination (J2000)
      integer*4     DEd_1      (nr__1) ! (deg) Degree of declination (J2000)
      integer*4     DEm_1      (nr__1) ! (arcmin) Arcminute of declination (J2000)
      real*4        DEs_1      (nr__1) ! (arcsec) Arcsecond of declination (J2000)
      integer*4     S_N        (nr__1) ! [5/705] Signal-to-noise ratio (1)
      real*4        Spk        (nr__1) ! (mJy/beam) [1.7/600.5] Peak intensity
      real*4        e_Spk      (nr__1) ! (mJy/beam) [0.1/4] Spk uncertainty
      real*4        Tb         (nr__1) ! (K) [0.58/144] Brightness temperature
      real*4        NH2        (nr__1) ! (cm-2) [1.6e+22/2.7e+25] Hydrogen column density,
*                                 N_H2_ (2)
      real*4        e_NH2      (nr__1) ! (cm-2) [5e+22/10e+25] Lower uncertainty on NH2
      real*4        E_NH2_1    (nr__1) ! (cm-2) [5e+22/10e+25] Upper uncertainty on NH2
      real*4        Size1      (nr__1) ! (arcsec) [0.3/0.8] Convolved source size
      real*4        Size2      (nr__1) ! (arcsec) [0.2/0.7] Convolved source size
      real*4        PA         (nr__1) ! (deg) [0.4/174.9] Position angle convolved source size
      integer*4     Fden       (nr__1) ! (mJy) [2/2118] Flux density
      real*4        e_Fden     (nr__1) ! (mJy) [0.2/11.5] Fden uncertainty
      real*4        Mtot1      (nr__1) ! (Msun) [0.1/173.5] Total mass lower range (3)
      real*4        Mtot2      (nr__1) ! (Msun) [0.7/2553.2] Total mass upper range (3)
*Note (1): The S/N is measured in primary-beam-uncorrected images.
*Note (2): For N(H_2_), we adopt T_ex_(CH_3_OH), which is derived from the
*    rotation diagram of CH_3_OH for complex organic molecules (COMs)
*    -detected cores. Note that T_ex_(CH_3_OH) is derived at the CH_3_OH
*    emission peak located off from the continuum peak where the high dust
*    optical depth affects the line intensity. The actual T_ex_(CH_3_OH)
*    would be higher than the adopted temperature. The Tdust and Tgas are
*    assumed to be the same. For COM-undetected continuum peaks, a range of
*    Tdust temperature of 20-100K is adopted for prestellar to protostellar
*    cores, assuming that the cores without COM emission are cooler than
*    those with COM emission.
*Note (3): The lower and upper limits are derived. For all components, the
*    lowest average temperature is assumed to be 20K to provide the upper
*    limit of the total mass. For COM-detected cores (Table 4),
*    T_ex_(CH_3_OH) is adopted (Table 5). The actual average temperature of
*    each core would be lower than the derived T_ex_(CH_3_OH), which is
*    measured at the CH_3_OH peak position; thus the derived mass is the
*    lower limit. For COM-undetected continuum components, the highest
*    temperature of 100K is assumed for the lower mass limit.

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

C  Declarations for 'table3.dat'	! Summary of information at the peak of 216.946GHz
                               CH_3_OH emission

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

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

      character*13  Reg_2      (nr__2) ! Region name as in Table 1
      character*3   Core_1     (nr__2) ! Core identifier within Reg
      integer*4     RAh_2      (nr__2) ! (h) Hour of right ascension (J2000)
      integer*4     RAm_2      (nr__2) ! (min) Minute of right ascension (J2000)
      real*4        RAs_2      (nr__2) ! (s) Second of right ascension (J2000)
      character*1   DE__2      (nr__2) ! Sign of declination (J2000)
      integer*4     DEd_2      (nr__2) ! (deg) Degree of declination (J2000)
      integer*4     DEm_2      (nr__2) ! (arcmin) Arcminute of declination (J2000)
      real*4        DEs_2      (nr__2) ! (arcsec) Arcsecond of declination (J2000)
      real*4        NH2_1      (nr__2) ! (cm-2) [3.9e+23/1.3e+25] Hydrogen column density,
*                                     N(H_2_) (1)
      real*4        e_NH2_2    (nr__2) ! (cm-2) [4.2e+22/3.5e+23] Lower uncertainty on NH2
      real*4        E_NH2_3    (nr__2) ! (cm-2) [4.5e+22/4.5e+23] Upper uncertainty on NH2
      real*4        nuPk       (nr__2) ! (km/s) [9.8/113] Peak intensity, {nu}_peak_
      real*4        DelVoff    (nr__2) ! (km/s) [-6/4.1] Peak intensity,
*                                     {Delta}{nu}_offset_
      real*4        Ipk        (nr__2) ! (mJy/beam) [10/603] Peak intensity, I_peak_
      real*4        Tb_1       (nr__2) ! (K) [3.3/142.3] Peak intensity, T_b_
*Note (1): N(H_2_) is obtained by the 1.3mm dust continuum image at which
*          the spectrum is extracted.

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

C  Declarations for 'table4.dat'	! Methanol maser emission and hot core associations

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

      character*13  Reg_3      (nr__3) ! Region name as in Table 1
      character*3   Core_2     (nr__3) ! Core identifier within Reg
      character*5   em         (nr__3) ! 216.946GHz CH_3_OH emission (1)
      character*1   mas        (nr__3) ! 6.7GHz class II CH_3_OH maser (2)
      integer*4     Ncom       (nr__3) ! [1/19]? Number of detected complex organic
*                                molecules (COMs) (3)
*Note (1): Abreviations as follows:
*  TH = Thermal emission
*  M? = 216.946GHz methanol maser candidate; maser detection was not firmly
*        confirmed despite evident spot emission features.
*  N  = no CH_3_OH emission detected.
*Note (2): Green+ (2010, VIII/96), Breen+ (2015MNRAS.450.4109B), and
*          Hu+ (2016, J/ApJ/833/18).
*Note (3): The number of COMs identified using XCLASS. There are detected
*    but unidentified lines; thus the number is a lower limit.

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

C  Loading file 'table1.dat'	! Summary of observation and target information

C  Format for file interpretation

    1 format(
     +  A13,1X,A1,1X,I2,1X,I2,1X,F5.2,1X,A1,I2,1X,I2,1X,F4.1,1X,F6.2,
     +  1X,F6.2,1X,A1,1X,E7.2,1X,F3.1,1X,A4,1X,A1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table1.dat')
      write(6,*) '....Loading file: table1.dat'
      do i__=1,12
        read(1,'(A74)')ar__
        read(ar__,1)
     +  Reg(i__),f_Reg(i__),RAh(i__),RAm(i__),RAs(i__),DE_(i__),
     +  DEd(i__),DEm(i__),DEs(i__),RAOff(i__),DEOff(i__),f_DEOff(i__),
     +  rms(i__),Dist(i__),r_Dist(i__),f_r_Dist(i__)
        RAdeg(i__) = rNULL__
        DEdeg(i__) = rNULL__
c  Derive coordinates RAdeg and DEdeg from input data
c  (RAdeg and DEdeg are set to rNULL__ when unknown)
        if(RAh(i__) .GT. -180) RAdeg(i__)=RAh(i__)*15.
        if(RAm(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAm(i__)/4.
        if(RAs(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAs(i__)/240.
        if(DEd(i__) .GE. 0) DEdeg(i__)=DEd(i__)
        if(DEm(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEm(i__)/60.
        if(DEs(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEs(i__)/3600.
        if(DE_(i__).EQ.'-'.AND.DEdeg(i__).GE.0) DEdeg(i__)=-DEdeg(i__)
c    ..............Just test output...........
        write(6,1)
     +  Reg(i__),f_Reg(i__),RAh(i__),RAm(i__),RAs(i__),DE_(i__),
     +  DEd(i__),DEm(i__),DEs(i__),RAOff(i__),DEOff(i__),f_DEOff(i__),
     +  rms(i__),Dist(i__),r_Dist(i__),f_r_Dist(i__)
        write(6,'(6H Pos: 2F8.4)') RAdeg(i__),DEdeg(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table2.dat'	! Summary of core detection in 1.3mm continuum

C  Format for file interpretation

    2 format(
     +  A13,A3,1X,I2,1X,I2,1X,F5.2,1X,A1,I2,1X,I2,1X,F4.1,1X,I3,1X,
     +  F5.1,1X,F3.1,1X,F6.2,1X,E7.3,1X,E7.3,1X,E7.3,1X,F3.1,1X,F3.1,
     +  1X,F5.1,1X,I4,1X,F4.1,1X,F5.1,1X,F6.1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table2.dat')
      write(6,*) '....Loading file: table2.dat'
      do i__=1,68
        read(1,'(A122)')ar__1
        read(ar__1,2)
     +  Reg_1(i__),Core(i__),RAh_1(i__),RAm_1(i__),RAs_1(i__),
     +  DE__1(i__),DEd_1(i__),DEm_1(i__),DEs_1(i__),S_N(i__),Spk(i__),
     +  e_Spk(i__),Tb(i__),NH2(i__),e_NH2(i__),E_NH2_1(i__),
     +  Size1(i__),Size2(i__),PA(i__),Fden(i__),e_Fden(i__),
     +  Mtot1(i__),Mtot2(i__)
        RAdeg_1(i__) = rNULL__
        DEdeg_1(i__) = rNULL__
c  Derive coordinates RAdeg_1 and DEdeg_1 from input data
c  (RAdeg_1 and DEdeg_1 are set to rNULL__ when unknown)
        if(RAh_1(i__) .GT. -180) RAdeg_1(i__)=RAh_1(i__)*15.
        if(RAm_1(i__) .GT. -180) RAdeg_1(i__)=RAdeg_1(i__)+RAm_1(i__)/4.
        if(RAs_1(i__) .GT. -180) RAdeg_1(i__)=RAdeg_1(i__)+RAs_1(i__)/240.
        if(DEd_1(i__) .GE. 0) DEdeg_1(i__)=DEd_1(i__)
        if(DEm_1(i__) .GE. 0) DEdeg_1(i__)=DEdeg_1(i__)+DEm_1(i__)/60.
        if(DEs_1(i__) .GE. 0) DEdeg_1(i__)=DEdeg_1(i__)+DEs_1(i__)/3600.
        if(DE__1(i__).EQ.'-'.AND.DEdeg_1(i__).GE.0) DEdeg_1(i__)=-DEdeg_1(i__)
c    ..............Just test output...........
        write(6,2)
     +  Reg_1(i__),Core(i__),RAh_1(i__),RAm_1(i__),RAs_1(i__),
     +  DE__1(i__),DEd_1(i__),DEm_1(i__),DEs_1(i__),S_N(i__),Spk(i__),
     +  e_Spk(i__),Tb(i__),NH2(i__),e_NH2(i__),E_NH2_1(i__),
     +  Size1(i__),Size2(i__),PA(i__),Fden(i__),e_Fden(i__),
     +  Mtot1(i__),Mtot2(i__)
        write(6,'(6H Pos: 2F8.4)') RAdeg_1(i__),DEdeg_1(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table3.dat'	! Summary of information at the peak of 216.946GHz
*                               CH_3_OH emission

C  Format for file interpretation

    3 format(
     +  A13,A3,1X,I2,1X,I2,1X,F5.2,1X,A1,I2,1X,I2,1X,F5.2,1X,E7.3,1X,
     +  E7.3,1X,E7.3,1X,F5.1,1X,F4.1,1X,F5.1,1X,F5.1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table3.dat')
      write(6,*) '....Loading file: table3.dat'
      do i__=1,28
        read(1,'(A88)')ar__2
        read(ar__2,3)
     +  Reg_2(i__),Core_1(i__),RAh_2(i__),RAm_2(i__),RAs_2(i__),
     +  DE__2(i__),DEd_2(i__),DEm_2(i__),DEs_2(i__),NH2_1(i__),
     +  e_NH2_2(i__),E_NH2_3(i__),nuPk(i__),DelVoff(i__),Ipk(i__),
     +  Tb_1(i__)
        RAdeg_2(i__) = rNULL__
        DEdeg_2(i__) = rNULL__
c  Derive coordinates RAdeg_2 and DEdeg_2 from input data
c  (RAdeg_2 and DEdeg_2 are set to rNULL__ when unknown)
        if(RAh_2(i__) .GT. -180) RAdeg_2(i__)=RAh_2(i__)*15.
        if(RAm_2(i__) .GT. -180) RAdeg_2(i__)=RAdeg_2(i__)+RAm_2(i__)/4.
        if(RAs_2(i__) .GT. -180) RAdeg_2(i__)=RAdeg_2(i__)+RAs_2(i__)/240.
        if(DEd_2(i__) .GE. 0) DEdeg_2(i__)=DEd_2(i__)
        if(DEm_2(i__) .GE. 0) DEdeg_2(i__)=DEdeg_2(i__)+DEm_2(i__)/60.
        if(DEs_2(i__) .GE. 0) DEdeg_2(i__)=DEdeg_2(i__)+DEs_2(i__)/3600.
        if(DE__2(i__).EQ.'-'.AND.DEdeg_2(i__).GE.0) DEdeg_2(i__)=-DEdeg_2(i__)
c    ..............Just test output...........
        write(6,3)
     +  Reg_2(i__),Core_1(i__),RAh_2(i__),RAm_2(i__),RAs_2(i__),
     +  DE__2(i__),DEd_2(i__),DEm_2(i__),DEs_2(i__),NH2_1(i__),
     +  e_NH2_2(i__),E_NH2_3(i__),nuPk(i__),DelVoff(i__),Ipk(i__),
     +  Tb_1(i__)
        write(6,'(6H Pos: 2F8.4)') RAdeg_2(i__),DEdeg_2(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table4.dat'	! Methanol maser emission and hot core associations

C  Format for file interpretation

    4 format(A13,A3,1X,A5,1X,A1,1X,I2)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table4.dat')
      write(6,*) '....Loading file: table4.dat'
      do i__=1,63
        read(1,'(A27)')ar__3
        read(ar__3,4)Reg_3(i__),Core_2(i__),em(i__),mas(i__),Ncom(i__)
        if(ar__3(26:27) .EQ. '') Ncom(i__) = iNULL__
c    ..............Just test output...........
        write(6,4)Reg_3(i__),Core_2(i__),em(i__),mas(i__),Ncom(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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