FORTRAN Generation
(/./ftp/cats/IV/26)

Conversion of standardized ReadMe file for file /./ftp/cats/IV/26 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.5, on 2014-Apr-20
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__=-1.e37)     	! NULL real number
      parameter  (iNULL__=-2147483647)	! NULL int  number

C=============================================================================
Cat. IV/26               Hercules Messier 13 (M13) photometry     (Ludendorff, 1905)
*================================================================================
*Der grosse Sternhaufen im Hercules Messier 13.
*    Ludendorff H.
*   <Publ. Astrophys. Obs. Potsdam, 50, 1 (1905)>
*   =1905POPot..50....1L
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'catalog.dat'	! Catalog of stars in Messier 13

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

      integer*4     Seq         ! [1,1136]+ Sequential number of star in cluster
      character*1   n_Seq       ! [*] indicates a note in notes.dat file
      integer*4     ma          ! Brightness estimate from Plate A (2)
      character*1   n_ma        ! [*] when the star is not clearly seen on both
*                                      plates
      integer*4     dm          ! ? difference (ma-mb+1) between plates (2)
      real*8        Xpos        ! X mean position (in 5.sin(1arcmin))
      real*8        Ypos        ! Y mean position (in 5.sin(1arcmin))
      integer*4     dXpos       ! (30mas) ? Position difference on 2 plates (A-B)
      character*1   u_dXpos     ! [)] when star not found on the 2 reductions
      integer*4     dYpos       ! (30mas) ? Position difference on 2 plates (A-B)
      character*1   u_dYpos     ! [)] when star not found on the 2 reductions
      character*1   oRA_        ! Offset in right ascension (sign) (1)
      integer*4     oRAm        ! (arcmin) Offset in right ascension (min) (1)
      real*4        oRAs        ! (arcsec) Offset in right ascension (s) (1)
      character*1   oDE_        ! Offset in declination (sign) (1)
      integer*4     oDEm        ! (arcmin) Offset in declination (arcmin) (1)
      real*4        oDEs        ! (arcsec) Offset in declination (arcsec) (1)
      integer*4     S           ! ? Number of the star in Scheiner's (1892)
      integer*4     S2          ! ? when 2 Scheiner's numbers represent the star
      character*1   u_S         ! [)] when Scheiner's star seen on 1 plate only
      character*1   n_S         ! [+] disagreement with Scheiner's,
*                                       in notes2.dat file
      real*4        Gr          ! (mag) ? Magnitude assigned in Scheiner's catalog
      real*4        dRA         ! (arcsec) ? Difference in RA Ludendorff - Scheiner
      character*1   u_dRA       ! [)] disagreement with Scheiner's
      real*4        dDE         ! (arcsec) ? Difference in DE Ludendorff - Scheiner
      character*1   u_dDE       ! [)] disagreement with Scheiner's
*Note (1): The reference position is
*     RA = 16 38 06.14, DE = +36 39 19.06 (1900)
*Note (2): the estimate consists in a number in the range 1 to 16;
*    this "Helligkeitsstuffe" (brightness step) is 1 for a photographic
*    magnitude of 8.5mag, 2 for 8.7, etc (i.e. mag = 8.3 + 0.2*ma).

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

C  Declarations for 'notes.dat'	! Individual notes (in German, english added)

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

      integer*4     Seq_1       ! Sequential number (repeated when several lines)
      character*75  Note        ! Text of the note (English translation added)

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

C  Declarations for 'notes2.dat'	! Individual remarks on Scheiner identifications,
                               and Scheiner catalog and charts

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

      integer*4     Seq_2       ! ? Sequential number
      integer*4     S_1         ! ? Scheiner number
      character*1   u_S_1       ! [)] when Scheiner's star seen on 1 plate only
      character*66  Note_1      ! Text of the note

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

C  Loading file 'catalog.dat'	! Catalog of stars in Messier 13

C  Format for file interpretation

    1 format(
     +  I4,A1,1X,I2,A1,1X,I2,2X,F7.4,1X,F7.4,2X,I3,A1,2X,I3,A1,1X,A1,
     +  I1,1X,F5.2,1X,A1,I1,1X,F5.2,2X,I3,1X,I3,A1,A1,1X,F4.1,2X,F5.2,
     +  A1,1X,F5.2,A1)

C  Effective file loading

      open(unit=1,file='catalog.dat', status='old')
      write(6,*) '....Loading file: catalog.dat'
      do i__=1,1136
        read(1,'(A90)')ar__
        read(ar__,1)
     +  Seq,n_Seq,ma,n_ma,dm,Xpos,Ypos,dXpos,u_dXpos,dYpos,u_dYpos,
     +  oRA_,oRAm,oRAs,oDE_,oDEm,oDEs,S,S2,u_S,n_S,Gr,dRA,u_dRA,dDE,
     +  u_dDE
        if(ar__(11:12) .EQ. '') dm = iNULL__
        if(ar__(32:34) .EQ. '') dXpos = iNULL__
        if(ar__(38:40) .EQ. '') dYpos = iNULL__
        if(ar__(62:64) .EQ. '') S = iNULL__
        if(ar__(66:68) .EQ. '') S2 = iNULL__
        if(ar__(72:75) .EQ. '') Gr = rNULL__
        if(ar__(78:82) .EQ. '') dRA = rNULL__
        if(ar__(85:89) .EQ. '') dDE = rNULL__
c    ..............Just test output...........
        write(6,1)
     +  Seq,n_Seq,ma,n_ma,dm,Xpos,Ypos,dXpos,u_dXpos,dYpos,u_dYpos,
     +  oRA_,oRAm,oRAs,oDE_,oDEm,oDEs,S,S2,u_S,n_S,Gr,dRA,u_dRA,dDE,
     +  u_dDE
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'notes.dat'	! Individual notes (in German, english added)

C  Format for file interpretation

    2 format(I4,1X,A75)

C  Effective file loading

      open(unit=1,file='notes.dat', status='old')
      write(6,*) '....Loading file: notes.dat'
      do i__=1,706
        read(1,'(A80)')ar__1
        read(ar__1,2)Seq_1,Note
c    ..............Just test output...........
        write(6,2)Seq_1,Note
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'notes2.dat'	! Individual remarks on Scheiner identifications,
*                               and Scheiner catalog and charts

C  Format for file interpretation

    3 format(I4,1X,I3,4X,A1,1X,A66)

C  Effective file loading

      open(unit=1,file='notes2.dat', status='old')
      write(6,*) '....Loading file: notes2.dat'
      do i__=1,234
        read(1,'(A80)')ar__2
        read(ar__2,3)Seq_2,S_1,u_S_1,Note_1
        if(ar__2(1:4) .EQ. '') Seq_2 = iNULL__
        if(ar__2(6:8) .EQ. '') S_1 = iNULL__
c    ..............Just test output...........
        write(6,3)Seq_2,S_1,u_S_1,Note_1
c    .......End.of.Just test output...........
      end do
      close(1)

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