FORTRAN Generation
(/./ftp/cats/J/A_A/575/A87)

Conversion of standardized ReadMe file for file /./ftp/cats/J/A_A/575/A87 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-09
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/575/A87    Deuteration in massive star formation process (Fontani+, 2015)
*================================================================================
*Deuteration and evolution in the massive star formation process.
*The role of surface chemistry.
*    Fontani F., Busquet G., Palau A., Caselli P. Sanchez-Monge A., Tan J.C.,
*    Audard M.
*   <Astron. Astrophys. 575, A87 (2015)>
*   =2015A&A...575A..87F
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table1.dat'	! List of the observed sources

      integer*4 nr__
      parameter (nr__=28)	! Number of records
      character*99 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*6   Type       (nr__) ! Type of source (G1)
      character*12  Name       (nr__) ! Source name
      character*1   n_Name     (nr__) ! [aw] Note on source (1)
      integer*4     RAh        (nr__) ! (h) Right ascension (J2000)
      integer*4     RAm        (nr__) ! (min) Right ascension (J2000)
      real*4        RAs        (nr__) ! (s) Right ascension (J2000)
      character*1   DE_        (nr__) ! Declination sign (J2000)
      integer*4     DEd        (nr__) ! (deg) Declination (J2000)
      integer*4     DEm        (nr__) ! (arcmin) Declination (J2000)
      integer*4     DEs        (nr__) ! (arcsec) Declination (J2000)
      real*4        VLSR       (nr__) ! (km/s) LSR velocity (2)
      character*4   OName      (nr__) ! Other designation (3)
      character*33  SName      (nr__) ! Simbad name
      character*11  Source     (nr__) ! Names as in FITS files (added by CDS)
*Note (1): Notes as follows:
*   a = Source not included in paper I (Fontani et al., 2011A&A...529L...7F),
*       selected from Butler & Tan (2014ApJ...782L..30B).
*       See also Butler et al. (2014ApJ...782L..30B)
*   w = "warm" (T>=20K) HMSCs externally heated (see paper I (Fontani et al.
*        2011A&A...529L...7F)).
*Note (2): Velocity at which we centred the spectra, corresponding to the
*   systemic velocity. More information (e.g. source distances, bolometric
*   luminosities of the associated star forming regions, reference papers)
*   are given in Table 1 of paper I (Fontani et al., 2011A&A...529L...7F).
*Note (3): designations in Simbad:
*  MM2  = [RJS2006] MSXDC G034.77-00.55 MM2
*  MM7  = [RJS2006] MSXDC G034.77-00.55 MM7
*  MM8  = [RJS2006] MSXDC G034.77-00.55 MM8
*  MM9  = [RJS2006] MSXDC G028.37+00.07 MM9
*  MM11 = [RJS2006] MSXDC G028.37+00.07 MM11

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

C  Declarations for 'tableb1.dat'	! Transitions of CH_3_OH,^13^CH_3_OH, CH_2_DOH and
                             CH_3_OD detected at 3mm, and line parameters
                             derived from Gaussian fits

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

      character*6   Type_1     (nr__1) ! Type of source (G1)
      character*13  Name_1     (nr__1) ! Source name
      real*8        Freq       (nr__1) ! (MHz) [89275/223423]? Frequency
      character*30  Trans      (nr__1) ! Transition
      real*4        Sint       (nr__1) ! (K.km/s) ? Line Integrated intensity {int}T_MB_.dv
      real*4        e_Sint     (nr__1) ! (K.km/s) [0.002/2]? rms uncertainty on Sint
      real*4        DV         (nr__1) ! (km/s) [0.4/8]? Full width at half maximum {Delta}V
      real*8        e_DV       (nr__1) ! (km/s) ? rms uncertainty on DeltaV
      real*4        Tpk        (nr__1) ! (K) [0/4]? Main beam temperature at line peak
      character*1   u_Tpk      (nr__1) ! [ab] problems in Tpeak estimation (1)
      character*11  Source_1   (nr__1) ! Name as in FITS files (added by CDS)
      character*30  bzFile     (nr__1) ! Name of rotation diagram (Fig.2)
*                                 in subdirectory "img" (added by CDS)
*Note (1): Note as follows:
*   a = tentative detection in between 2 and 3{sigma} rms
*   b = partially blended with (CH_2_OH)_2_ (ethylene-glycol)

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

C  Declarations for 'tableb2.dat'	! Transitions of CH_3_OH, ^13^CH_3_OH, CH_2_DOH and
                             CH_3_OD detected at 1mm, and line parameters
                             derived from Gaussian fits

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

      character*6   Type_2     (nr__2) ! Type of source (G1)
      character*13  Name_2     (nr__2) ! Source name
      real*8        Freq_1     (nr__2) ! (MHz) [89275/223423]? Frequency
      character*30  Trans_1    (nr__2) ! Transition
      real*4        Sint_1     (nr__2) ! (K.km/s) ? Line Integrated intensity {int}T_MB_.dv
      real*4        e_Sint_1   (nr__2) ! (K.km/s) [0.002/2]? rms uncertainty on Sint
      real*4        DV_1       (nr__2) ! (km/s) [0.4/8]? Full width at half maximum {Delta}V
      real*8        e_DV_1     (nr__2) ! (km/s) ? rms uncertainty on DeltaV
      real*4        Tpk_1      (nr__2) ! (K) [0/4]? Main beam temperature at line peak
      character*1   u_Tpk_1    (nr__2) ! [ab] problems in Tpeak estimation (1)
      character*11  Source_2   (nr__2) ! Name as in FITS files (added by CDS)
      character*30  bzFile_1   (nr__2) ! Name of rotation diagram (Fig.2)
*                                 in subdirectory "img" (added by CDS)
*Note (1): Note as follows:
*   a = tentative detection in between 2 and 3{sigma} rms
*   b = partially blended with (CH_2_OH)_2_ (ethylene-glycol)

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

C  Declarations for 'spectra.dat'	! Summary of NH_2_D spectra (in "sp" subdirectory)

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

C  J2000 position composed of: RAdeg DEdeg
      character*11  Source_3   (nr__3) ! Source name
      real*8        RAdeg_1    (nr__3) ! (deg) Right ascension (J2000)
      real*8        DEdeg_1    (nr__3) ! (deg) Declination (J2000)
      real*4        Vel        (nr__3) ! (km/s) Velocity (LSR) of reference channel
      integer*4     Sc_o       (nr__3) ! Scan identification number of ortho spectrum
      character*19  Obs_o      (nr__3) ! ("datime") Observation date and time of ortho spectrum
      integer*4     Seq_o      (nr__3) ! [1/28] Sequence number of ortho-NH_2_D spectrum
*                                        (in file sp/NH2Dortho.fits)
      integer*4     Sc_p       (nr__3) ! ? Scan identification number of ortho spectrum
      character*19  Obs_p      (nr__3) ! ("datime") ? Observation date and time of para spectrum
      integer*4     Seq_p      (nr__3) ! [1/28]? Sequence number of para-NH_2_D spectrum
*                                         (in file sp/NH2Dpara.fits)

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

C  Loading file 'table1.dat'	! List of the observed sources

C  Format for file interpretation

    1 format(
     +  A6,1X,A12,1X,A1,1X,I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,1X,
     +  F5.1,1X,A4,1X,A33,1X,A11)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table1.dat')
      write(6,*) '....Loading file: table1.dat'
      do i__=1,28
        read(1,'(A99)')ar__
        read(ar__,1)
     +  Type(i__),Name(i__),n_Name(i__),RAh(i__),RAm(i__),RAs(i__),
     +  DE_(i__),DEd(i__),DEm(i__),DEs(i__),VLSR(i__),OName(i__),
     +  SName(i__),Source(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)
     +  Type(i__),Name(i__),n_Name(i__),RAh(i__),RAm(i__),RAs(i__),
     +  DE_(i__),DEd(i__),DEm(i__),DEs(i__),VLSR(i__),OName(i__),
     +  SName(i__),Source(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 'tableb1.dat'	! Transitions of CH_3_OH,^13^CH_3_OH, CH_2_DOH and
*                             CH_3_OD detected at 3mm, and line parameters
*                             derived from Gaussian fits

C  Format for file interpretation

    2 format(
     +  A6,2X,A13,1X,F9.2,1X,A30,2X,E12.6,F5.3,3X,F5.3,1X,F7.3,2X,
     +  E11.6,A1,1X,A11,1X,A30)

C  Effective file loading

      open(unit=1,status='old',file=
     +'tableb1.dat')
      write(6,*) '....Loading file: tableb1.dat'
      do i__=1,219
        read(1,'(A154)')ar__1
        read(ar__1,2)
     +  Type_1(i__),Name_1(i__),Freq(i__),Trans(i__),Sint(i__),
     +  e_Sint(i__),DV(i__),e_DV(i__),Tpk(i__),u_Tpk(i__),
     +  Source_1(i__),bzFile(i__)
        if(ar__1(23:31) .EQ. '') Freq(i__) = rNULL__
        if(ar__1(65:76) .EQ. '') Sint(i__) = rNULL__
        if(ar__1(77:81) .EQ. '') e_Sint(i__) = rNULL__
        if(ar__1(85:89) .EQ. '') DV(i__) = rNULL__
        if(ar__1(91:97) .EQ. '') e_DV(i__) = rNULL__
        if(ar__1(100:110) .EQ. '') Tpk(i__) = rNULL__
c    ..............Just test output...........
        write(6,2)
     +  Type_1(i__),Name_1(i__),Freq(i__),Trans(i__),Sint(i__),
     +  e_Sint(i__),DV(i__),e_DV(i__),Tpk(i__),u_Tpk(i__),
     +  Source_1(i__),bzFile(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'tableb2.dat'	! Transitions of CH_3_OH, ^13^CH_3_OH, CH_2_DOH and
*                             CH_3_OD detected at 1mm, and line parameters
*                             derived from Gaussian fits

C  Format for file interpretation

    3 format(
     +  A6,2X,A13,1X,F9.2,1X,A30,2X,E12.6,F5.3,3X,F5.3,1X,F7.3,2X,
     +  E11.6,A1,1X,A11,1X,A30)

C  Effective file loading

      open(unit=1,status='old',file=
     +'tableb2.dat')
      write(6,*) '....Loading file: tableb2.dat'
      do i__=1,90
        read(1,'(A154)')ar__2
        read(ar__2,3)
     +  Type_2(i__),Name_2(i__),Freq_1(i__),Trans_1(i__),Sint_1(i__),
     +  e_Sint_1(i__),DV_1(i__),e_DV_1(i__),Tpk_1(i__),u_Tpk_1(i__),
     +  Source_2(i__),bzFile_1(i__)
        if(ar__2(23:31) .EQ. '') Freq_1(i__) = rNULL__
        if(ar__2(65:76) .EQ. '') Sint_1(i__) = rNULL__
        if(ar__2(77:81) .EQ. '') e_Sint_1(i__) = rNULL__
        if(ar__2(85:89) .EQ. '') DV_1(i__) = rNULL__
        if(ar__2(91:97) .EQ. '') e_DV_1(i__) = rNULL__
        if(ar__2(100:110) .EQ. '') Tpk_1(i__) = rNULL__
c    ..............Just test output...........
        write(6,3)
     +  Type_2(i__),Name_2(i__),Freq_1(i__),Trans_1(i__),Sint_1(i__),
     +  e_Sint_1(i__),DV_1(i__),e_DV_1(i__),Tpk_1(i__),u_Tpk_1(i__),
     +  Source_2(i__),bzFile_1(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'spectra.dat'	! Summary of NH_2_D spectra (in "sp" subdirectory)

C  Format for file interpretation

    4 format(
     +  A11,2X,F8.4,1X,F8.4,1X,F5.1,3X,I3,1X,A19,2X,I2,3X,I3,1X,A19,
     +  2X,I2)

C  Effective file loading

      open(unit=1,status='old',file=
     +'spectra.dat')
      write(6,*) '....Loading file: spectra.dat'
      do i__=1,28
        read(1,'(A96)')ar__3
        read(ar__3,4)
     +  Source_3(i__),RAdeg_1(i__),DEdeg_1(i__),Vel(i__),Sc_o(i__),
     +  Obs_o(i__),Seq_o(i__),Sc_p(i__),Obs_p(i__),Seq_p(i__)
        if(ar__3(70:72) .EQ. '') Sc_p(i__) = iNULL__
        if(ar__3(95:96) .EQ. '') Seq_p(i__) = iNULL__
c    ..............Just test output...........
        write(6,4)
     +  Source_3(i__),RAdeg_1(i__),DEdeg_1(i__),Vel(i__),Sc_o(i__),
     +  Obs_o(i__),Seq_o(i__),Sc_p(i__),Obs_p(i__),Seq_p(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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