FORTRAN Generation
(/./ftp/cats/J/AJ/154/152)

Conversion of standardized ReadMe file for file /./ftp/cats/J/AJ/154/152 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 2024-Mar-28
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/AJ/154/152     CARMA 1 cm spectral line survey of Orion-KL    (Friedel+, 2017)
*================================================================================
*CARMA {lambda}=1 cm spectral line survey of Orion-KL.
*    Friedel D.N., Looney L.W.
*   <Astron. J., 154, 152-152 (2017)>
*   =2017AJ....154..152F    (SIMBAD/NED BibCode)
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table1.dat'	! Description of Sources in Orion-KL

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

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

      character*13  Name        ! Source name
      character*1   n_Name      ! [a] Note on name (1)
      integer*4     RAh         ! (h) ? Hour of Right Ascension (J2000)
      integer*4     RAm         ! (min) ? Minute of Right Ascension (J2000)
      real*4        RAs         ! (s) ? Second of Right Ascension (J2000)
      character*1   DE_         ! Sign of the Declination (J2000)
      integer*4     DEd         ! (deg) ? Degree of Declination (J2000)
      integer*4     DEm         ! (arcmin) ? Arcminute of Declination (J2000)
      real*4        DEs         ! (arcsec) ? Arcsecond of Declination (J2000)
      real*4        b_VLSR      ! (km/s) ? Local standard of rest velocity, lower value
      real*4        B_VLSR_1    ! (km/s) ? Local standard of rest velocity, upper value
      real*4        b_FWHM      ! (km/s) ? Full width at half maximum, lower value
      integer*4     B_FWHM_1    ! (km/s) ? Full width at half maximum, upper value
      character*69  Desc        ! Description
      character*5   Ref         ! Reference(s) (2)
*Note (1): Note as follows:
*  a = The Orion Bar is a very extended structure; no single coordinate set can
*      describe its position. The structure is very large and has a wide variety
*      of velocities, FWHM, and structure sizes.
*Note (2): Reference as follows:
*   1 = Plambeck et al. (2013ApJ...765...40P);
*   2 = Mundy et al. (1986ApJ...304L..51M);
*   3 = Eisner & Carpenter (2006ApJ...641.1162E);
*   4 = Widicus Weaver & Friedel (2012ApJS..201...16W);
*   5 = Wright et al. (1996ApJ...469..216W);
*   6 = Friedel & Snyder (2008ApJ...672..962F);
*   7 = Friedel & Widicus Weaver (2012ApJS..201...17F);
*   8 = This work;
*   9 = Goicoechea et al. (2016Natur.537..207G);
*  10 = O'Dell et al. (2017ApJ...837..151O).

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

C  Declarations for 'table3.dat'	! Molecular Parameters of Observed Lines

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

      integer*4     Line        ! [1/15] Observed line (1)
      character*25  Quant       ! Quantum numbers
      character*1   n_Quant     ! [b] Note on Quant (2)
      real*8        RFreq       ! (MHz) [27215.57/34857.2] Rest frequency
      real*4        e_RFreq     ! (MHz) [0/0.2] Uncertainty in RFreq
      real*4        Eu          ! (K) [1.4/1691.1]? Upper state energy
      real*4        Smu2        ! (D+2) [0.2/99.4]? Line strength times the
*                                   appropriate dipole moment S_{mu}_^2^
*                                   (in Debye^2^)
      real*4        Bmaj        ! (arcsec) [5.7/17.2] Synthesized beam major axis
*                                   {theta}_a_
      real*4        Bmin        ! (arcsec) [4.2/12.2] Synthesized beam minor axis
*                                   {theta}_b_
      character*1   n_Bmin      ! [cd] Note on Bmin (3)
      real*4        I0          ! (Jy) [-0.11/1.77]? Fitted intensity (in Jy/beam)
      integer*4     e_I0        ! (Jy) [0/15]? Uncertainty in I0
      character*1   n_I0        ! [efhi] Note on I0 (4)
      real*4        VLSR        ! (km/s) [-8.1/28]? Fitted local standard of rest
*                                   velocity
      integer*4     e_VLSR      ! (km/s) [0/87]? Uncertainty in VLSR
      character*1   n_VLSR      ! [g] Note on VLSR (5)
      real*4        FWHM        ! (km/s) [0.5/41.5]? Fitted full width at half maximum
      integer*4     e_FWHM      ! (km/s) [0/119]? Uncertainty in FWHM
      character*5   Pos         ! Position where the spectrum was taken (6)
      real*4        rms         ! (mJy/beam) [6/45.4]? rms noise
      character*3   Config      ! Array configuration the data were taken in (7)
*Note (1): Observed line as follows:
*   1 = CH_3_OH;
*   2 = ^13^CH_3_OH;
*   3 = Hydrogen recombination line;
*   4 = Helium recombination line;
*   5 = H_2_CO;
*   6 = H_2_CS;
*   7 = SO;
*   8 = ^34^SO;
*   9 = SO_2_;
*  10 = ^34^SO_2_;
*  11 = NH_3_;
*  12 = CH_3_OCHO;
*  13 = CH_3_OCH_3_;
*  14 = CH_3_CH_2_CN;
*  15 = HC_3_N.
*Note (2): Note as follows:
*  b = This transition was part of the mosaic and single dish observations.
*Note (3): Note as follows:
*  c = These transitions of ^13^CH_3_OH and CH_3_CH_2_CN are blended;
*  d = Spectral profile is too complex for a reliable fit.
*Note (4): Note as follows:
*  e = Uncertainty could not be calculated;
*  f = There could be more components, and likely are, but due to high noise, no
*      reliable fits could be made;
*  h = In order to obtain line fits, the ratio of the lines was fixed - as was
*      the FWHM;
*  i = Intensity ratios were fixed for low opacity.
*Note (5): Note as follows:
*  g = Intensities are free, while V_LSR_ and FWHM were forced to be the same
*      for each pair.
*Note (6): See Figure 13 and 17 for specific meanings of the position at which
*  the spectra of the detected H recombination lines and He recombination lines
*  were taken, respectively.
*  See Table 1 for other positions.
*  If it is blank, then spectra are taken from the emission peak.
*Note (7): The synthesized beam sizes are ~7"x5" for the C configuration and
*          ~15"x12" for the D configuration.

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

C  Loading file 'table1.dat'	! Description of Sources in Orion-KL

C  Format for file interpretation

    1 format(
     +  A13,1X,A1,1X,I2,1X,I2,1X,F6.3,1X,A1,I2,1X,I2,1X,F6.3,1X,F4.1,
     +  1X,F4.1,1X,F3.1,1X,I1,1X,A69,1X,A5)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table1.dat')
      write(6,*) '....Loading file: table1.dat'
      do i__=1,8
        read(1,'(A134)')ar__
        read(ar__,1)
     +  Name,n_Name,RAh,RAm,RAs,DE_,DEd,DEm,DEs,b_VLSR,B_VLSR_1,
     +  b_FWHM,B_FWHM_1,Desc,Ref
        if(ar__(17:18) .EQ. '') RAh = iNULL__
        if(ar__(20:21) .EQ. '') RAm = iNULL__
        if(ar__(23:28) .EQ. '') RAs = rNULL__
        if(ar__(31:32) .EQ. '') DEd = iNULL__
        if(ar__(34:35) .EQ. '') DEm = iNULL__
        if(ar__(37:42) .EQ. '') DEs = rNULL__
        if(ar__(44:47) .EQ. '') b_VLSR = rNULL__
        if(ar__(49:52) .EQ. '') B_VLSR_1 = rNULL__
        if(ar__(54:56) .EQ. '') b_FWHM = rNULL__
        if(ar__(58:58) .EQ. '') B_FWHM_1 = iNULL__
        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)
     +  Name,n_Name,RAh,RAm,RAs,DE_,DEd,DEm,DEs,b_VLSR,B_VLSR_1,
     +  b_FWHM,B_FWHM_1,Desc,Ref
        write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'table3.dat'	! Molecular Parameters of Observed Lines

C  Format for file interpretation

    2 format(
     +  I2,1X,A25,1X,A1,1X,F8.2,1X,F4.2,1X,F6.1,1X,F4.1,1X,F4.1,1X,
     +  F4.1,A1,1X,F6.3,1X,I2,A1,1X,F4.1,1X,I2,A1,1X,F4.1,1X,I3,1X,A5,
     +  1X,F4.1,1X,A3)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table3.dat')
      write(6,*) '....Loading file: table3.dat'
      do i__=1,199
        read(1,'(A111)')ar__1
        read(ar__1,2)
     +  Line,Quant,n_Quant,RFreq,e_RFreq,Eu,Smu2,Bmaj,Bmin,n_Bmin,I0,
     +  e_I0,n_I0,VLSR,e_VLSR,n_VLSR,FWHM,e_FWHM,Pos,rms,Config
        if(ar__1(46:51) .EQ. '') Eu = rNULL__
        if(ar__1(53:56) .EQ. '') Smu2 = rNULL__
        if(ar__1(69:74) .EQ. '') I0 = rNULL__
        if(ar__1(76:77) .EQ. '') e_I0 = iNULL__
        if(ar__1(80:83) .EQ. '') VLSR = rNULL__
        if(ar__1(85:86) .EQ. '') e_VLSR = iNULL__
        if(ar__1(89:92) .EQ. '') FWHM = rNULL__
        if(ar__1(94:96) .EQ. '') e_FWHM = iNULL__
        if(ar__1(104:107) .EQ. '') rms = rNULL__
c    ..............Just test output...........
        write(6,2)
     +  Line,Quant,n_Quant,RFreq,e_RFreq,Eu,Smu2,Bmaj,Bmin,n_Bmin,I0,
     +  e_I0,n_I0,VLSR,e_VLSR,n_VLSR,FWHM,e_FWHM,Pos,rms,Config
c    .......End.of.Just test output...........
      end do
      close(1)

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