CDS.headStuff2 FORTRAN Generation
()

Conversion of standardized ReadMe file for catalog 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-24
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. VII/5A              Star Clusters and Associations, Selected Data (Alter+ 1970)
*================================================================================
*Excerpt from the Catalogue of Stars Clusters and Associations
*     Alter G., Ruprecht J., Vanysek V.
*    <Akad. Kiado, Budapest, 3086 p., 2nd edition (1970)>
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'catalog'	! The Catalogue

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

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

      real*4        GLON        ! (deg) Galactic longitude
      real*4        GLAT        ! (deg) Galactic latitude
      integer*4     RAh         ! (h) Hours RA, equinox 1950.0
      real*4        RAm         ! (min) Minutes RA, equinox 1950.0
      character*1   DE_         ! Sign Dec, equinox 1950.0
      integer*4     DEd         ! (deg) Degrees Dec, equinox 1950.0
      integer*4     DEm         ! (arcmin) Minutes Dec, equinox 1950.0
      character*17  Name        ! Cluster name
      character*4   Class       ! Trumbler class. codes, see below.
*                                    The following coding is used:
*                                        32p  = III 2 p
*                                        43pn =  IV 3 p n, etc.
      real*4        Diam        ! (arcmin) []? Angular diameter
      integer*4     Dist        ! (pc) []? Cluster distance
      real*4        Mag1        ! (mag) []? Magnitude of brightest stars in cluster
      character*2   SpType      ! Spectral type
      character*1   Code1       ! Unidentified code
      real*4        IntMag      ! (mag) []? Total or integrated magnitude
*                                      of the cluster
      character*1   Code2       ! Unidentified code
      real*4        ColorEx     ! (mag) []? Color excess of the cluster in UBV system
      character*1   Code3       ! Unidentified code

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

C  Loading file 'catalog'	! The Catalogue

C  Format for file interpretation

    1 format(
     +  F6.2,F6.2,1X,I2,1X,F4.1,A1,I2,1X,I2,1X,A17,1X,A4,1X,F5.1,1X,
     +  I5,1X,F4.1,1X,A2,1X,A1,1X,F4.1,1X,A1,1X,F4.2,1X,A1)

C  Effective file loading

      open(unit=1,status='old',file=
     +'catalog')
      write(6,*) '....Loading file: catalog'
      do i__=1,1039
        read(1,'(A85)')ar__
        read(ar__,1)
     +  GLON,GLAT,RAh,RAm,DE_,DEd,DEm,Name,Class,Diam,Dist,Mag1,
     +  SpType,Code1,IntMag,Code2,ColorEx,Code3
        if(ar__(51:55) .EQ. '') Diam = rNULL__
        if(ar__(57:61) .EQ. '') Dist = iNULL__
        if(ar__(63:66) .EQ. '') Mag1 = rNULL__
        if(ar__(73:76) .EQ. '') IntMag = rNULL__
        if(ar__(80:83) .EQ. '') ColorEx = rNULL__
        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(DEd .GE. 0) DEdeg=DEd
        if(DEm .GE. 0) DEdeg=DEdeg+DEm/60.
        if(DE_.EQ.'-'.AND.DEdeg.GE.0) DEdeg=-DEdeg
c    ..............Just test output...........
        write(6,1)
     +  GLON,GLAT,RAh,RAm,DE_,DEd,DEm,Name,Class,Diam,Dist,Mag1,
     +  SpType,Code1,IntMag,Code2,ColorEx,Code3
        write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg
c    .......End.of.Just test output...........
      end do
      close(1)

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