FORTRAN Generation
(/./ftp/cats/I/211/)

Conversion of standardized ReadMe file for file /./ftp/cats/I/211/ 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-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. I/211        CCDM (Components of Double and Multiple stars) (Dommanget+ 1994)
*================================================================================
*Catalogue of the Components of Double, Multiple stars (CCDM) first edition
*     Dommanget J., Nys O.
*    <Comm. Obs. R. Belgique, Ser. A, N. 115 (1994)>
*    =1994CoORB.115....1D
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'catalog.dat'	! The Catalogue

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

      character*10  CCDM        ! (Catalogue of the Components of the
*                                   Double and Multiple stars) number (1)
      character*1   rComp       ! *[B-Z?] Reference component (blank if A)
      character*1   Comp        ! *[A-Z?] Concerned component
      character*1   Note1       ! [*] *=orbit in Dommanget's personal cat. (2)
      character*1   Note2       ! [@] @ = astrometric binary
      character*7   Disc        ! Name of the pair (Discoverer and Number)
      real*8        dRAs        ! (s) ? Remainder of RA in  second of time;
      real*8        dDEs        ! (arcsec) ? Remainder of DE in  arcsecond;
      integer*4     r_dRAs      ! ? Source code for positions (3)
      integer*4     Year        ! (yr) ? Year of measured relative position
      character*3   theta       ! (deg) Position angle (degrees) (4)
      real*4        rho         ! (arcsec) ? angular separation of Comp along theta
      integer*4     Obs         ! ? for A component: number of components;
*                                     other component: number of measurements
      real*4        Vmag        ! (mag) ? magnitude
      character*2   Sp          ! spectrum
      character*1   pmNote      ! *[*@$] Origin of the proper motion
      integer*4     pmRA        ! (mas/yr) ? annual proper motion in 0"001
      integer*4     pmDE        ! (mas/yr) ? annual proper motion in 0"001
      character*10  DM          ! First identification = DM
*                                     (Harvard system) (5)
      character*10  Name2       ! Second identification (5)
      character*6   HD          ! HD designation
      character*2   m_HD        ! [/0-9 ] second HD (Example: 131843/4)
      character*6   ADS_BDS     ! ADS number (A)  or BDS number (B)
      character*1   m_ADS_BDS   ! [a] suffix (a) to an inserted ADS number
      character*1   n_IDS       ! [*] The * means that the Index number is
*                                       built for new component or system;
      character*11  IDS         ! Uncorrected Index designation (1976.5)
*                                     (equinox 1900) and identification letter;
      integer*4     HIC         ! ? Hipparcos Input Catalogue (Turon et al.)
*                                     number
*Note (1): The CCDM number is made with RA(2000) limited to 0.1 minute of
*          time (HHMMm) and Dec(2000) limited to 1 minute of a degree (+DDMM).
*          Full details about the construction of the CCDM number are
*          given in the publication.
*Note (2): The personal catalogue of J.Dommanget (1982; partially updated
*          to 1994)
*Note (3): See the document file, part III
*Note (4): The following letters are sometimes used to indicate an approximate
*          location of the secondary component:
*          'N' (to the North)
*          'NF'(to the North and following)      (first quadrant)
*          'F' (following)
*          'SF'(to the South and following)      (second quadrant)
*          'S' (to the South)
*          'SP'(to the South and preceding)      (third quadrant)
*          'P' (preceding)
*          'NP'(to the North and preceding)      (fourth quadrant)
*Note (5): .0 = BD    .6 = AGK2/3
*          .2 = CD    .8 = SAO
*          .4 = CPD
*        The suffixes "a" and "b" following some DM designations
*        appear in  place of the dot.
*Note on pmNote:
*           *: not the pm from the Index;
*           @:   pm from the HIC;
*           $:   pm = pm(B/A);
*Note on Comp and rComp:
*        In one record there appear '?' signs for (CCDM#=) 07366-1428

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

C  Loading file 'catalog.dat'	! The Catalogue

C  Format for file interpretation

    1 format(
     +  1X,A10,A1,A1,A1,A1,A7,1X,F7.2,F7.1,1X,I2,1X,I4,1X,A3,F6.1,1X,
     +  I2,1X,F4.1,1X,A2,A1,I5,I5,A10,A10,1X,A6,A2,A6,A1,A1,A11,1X,I6)

C  Effective file loading

      open(unit=1,status='old',file=
     +'catalog.dat')
      write(6,*) '....Loading file: catalog.dat'
      do i__=1,74861
        read(1,'(A132)')ar__
        read(ar__,1)
     +  CCDM,rComp,Comp,Note1,Note2,Disc,dRAs,dDEs,r_dRAs,Year,theta,
     +  rho,Obs,Vmag,Sp,pmNote,pmRA,pmDE,DM,Name2,HD,m_HD,ADS_BDS,
     +  m_ADS_BDS,n_IDS,IDS,HIC
        if(ar__(24:30) .EQ. '') dRAs = rNULL__
        if(ar__(31:37) .EQ. '') dDEs = rNULL__
        if(ar__(39:40) .EQ. '') r_dRAs = iNULL__
        if(ar__(42:45) .EQ. '') Year = iNULL__
        if(ar__(50:55) .EQ. '') rho = rNULL__
        if(ar__(57:58) .EQ. '') Obs = iNULL__
        if(ar__(60:63) .EQ. '') Vmag = rNULL__
        if(ar__(68:72) .EQ. '') pmRA = iNULL__
        if(ar__(73:77) .EQ. '') pmDE = iNULL__
        if(ar__(127:132) .EQ. '') HIC = iNULL__
c    ..............Just test output...........
        write(6,1)
     +  CCDM,rComp,Comp,Note1,Note2,Disc,dRAs,dDEs,r_dRAs,Year,theta,
     +  rho,Obs,Vmag,Sp,pmNote,pmRA,pmDE,DM,Name2,HD,m_HD,ADS_BDS,
     +  m_ADS_BDS,n_IDS,IDS,HIC
c    .......End.of.Just test output...........
      end do
      close(1)

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