FORTRAN Generation
(/./ftp/cats/J/PASJ/57/917)

Conversion of standardized ReadMe file for file /./ftp/cats/J/PASJ/57/917 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 2024-Apr-18
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/PASJ/57/917  CO molecular clouds in southern Galactic Warp (Nakagawa+, 2005)
*================================================================================
*An unbiased search for molecular clouds in the southern Galactic Warp.
*    Nakagawa M., Onishi T., Mizuno A., Fukui Y.
*   <Publ. Astron. Soc. Jap., 57, 917-931 (2005)>
*   =2005PASJ...57..917N
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table1.dat'	! Observed properties and physical quantities
                             of 70 CO clouds.

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

      integer*4     v_NOM2005_ (nr__) ! Running number
      real*4        GLON       (nr__) ! (deg) Position of observed points with maximum
*                                  ^12^CO integrated intensities within CO clouds
      real*4        GLAT       (nr__) ! (deg) Position of observed points with maximum
*                                  ^12^CO integrated intensities within CO clouds
      real*4        VLSR       (nr__) ! (km/s) ?=- LSR velocity is derived from a Gaussian
*                                    fitting for the composite line profiles
      real*4        Dist       (nr__) ! (kpc) ?=- Distance from the Sun
      real*4        R          (nr__) ! (kpc) ?=- Distance from the galactic center (1)
      integer*4     Z          (nr__) ! (pc) ?=- Distance from the galactic plane
*                                      (b=0, Z=Dist*tan(b))
      real*4        IICO       (nr__) ! (K.km/s) ?=- Total CO integrated intensity,
*                                    {int}T_R_^*^dV, sum of integrated intensity
*                                    of all observed positions in one cloud.
      real*4        dV         (nr__) ! (km/s) ?=- Composite line width (from Gaussian fit to
*                                      composite spectrum)
      real*4        Rad        (nr__) ! (pc) ?=- Radius of the CO cloud
      real*4        Radc       (nr__) ! (pc) ?=- Corrected radius of the CO cloud
      real*4        LCO        (nr__) ! (pc2.K.km/s) ?=- Luminosity
      integer*4     MCO        (nr__) ! (solMass) ?=- Cloud mass derived from CO luminosity by
*                                      using X=5.6x10^20^cm^-2^/(K.km/s)
      integer*4     Mvir       (nr__) ! (solMass) ?=- Virial mass = 210xRadcxdV^2^
      character*12  Com        (nr__) ! Comment (2)
*Note (1): Distance from the galactic center for b=0, assuming flat rotation
*          curve (R_{sun}_=8.5kpc, V_{sun}_=220km/s).
*Note (2): Comments are as follows:
*       cold IRAS = clouds which have a cold IRAS point source near the peak
*     double peak = clouds which have multiple velocity components in a
*                   single beam and neither of them is well-resolved
*    not complete = For the last cloud, No. 71 (no data)

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

C  Loading file 'table1.dat'	! Observed properties and physical quantities
*                             of 70 CO clouds.

C  Format for file interpretation

    1 format(
     +  I2,1X,F6.2,1X,F5.2,1X,F5.1,1X,F4.1,1X,F4.1,1X,I5,1X,F6.2,1X,
     +  F3.1,1X,F4.1,1X,F4.1,1X,F6.1,1X,I5,1X,I6,1X,A12)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table1.dat')
      write(6,*) '....Loading file: table1.dat'
      do i__=1,71
        read(1,'(A91)')ar__
        read(ar__,1)
     +  v_NOM2005_(i__),GLON(i__),GLAT(i__),VLSR(i__),Dist(i__),
     +  R(i__),Z(i__),IICO(i__),dV(i__),Rad(i__),Radc(i__),LCO(i__),
     +  MCO(i__),Mvir(i__),Com(i__)
        if (idig(ar__(17:21)).EQ.0) VLSR(i__) =  rNULL__
        if (idig(ar__(23:26)).EQ.0) Dist(i__) =  rNULL__
        if (idig(ar__(28:31)).EQ.0) R(i__) =  rNULL__
        if (Z(i__) .EQ. 45) Z(i__) =  iNULL__
        if (idig(ar__(39:44)).EQ.0) IICO(i__) =  rNULL__
        if (idig(ar__(46:48)).EQ.0) dV(i__) =  rNULL__
        if (idig(ar__(50:53)).EQ.0) Rad(i__) =  rNULL__
        if (idig(ar__(55:58)).EQ.0) Radc(i__) =  rNULL__
        if (idig(ar__(60:65)).EQ.0) LCO(i__) =  rNULL__
        if (MCO(i__) .EQ. 45) MCO(i__) =  iNULL__
        if (Mvir(i__) .EQ. 45) Mvir(i__) =  iNULL__
c    ..............Just test output...........
        write(6,1)
     +  v_NOM2005_(i__),GLON(i__),GLAT(i__),VLSR(i__),Dist(i__),
     +  R(i__),Z(i__),IICO(i__),dV(i__),Rad(i__),Radc(i__),LCO(i__),
     +  MCO(i__),Mvir(i__),Com(i__)
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