FORTRAN Generation
(/./ftp/cats/J/MNRAS/401/1388)

Conversion of standardized ReadMe file for file /./ftp/cats/J/MNRAS/401/1388 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-19
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/MNRAS/401/1388    Radio polarization of WMAP point sources (Jackson+, 2010)
*================================================================================
*High-frequency radio polarization measurements of WMAP point sources.
*    Jackson N., Browne I.W.A., Battye R.A., Gabuzda D., Taylor A.C.
*   <Mon. Not. R. Astron. Soc., 401, 1388-1398 (2010)>
*   =2010MNRAS.401.1388J
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'table2.dat'	! Flux densities of observed sources at X (8.4GHz),
                             K (22GHz) and Q (43GHz) bands

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

      character*8   Source     (nr__) ! Source name (HHMM-DDd)
      real*8        I_X        (nr__) ! (mJy) ? Intensity flux density for X band (8.4GHz)
      real*4        e_I_X      (nr__) ! (mJy) ? rms uncertainty on I(X)
      character*1   n_I_X      (nr__) ! [i] Note on I(X) (1)
      character*1   l_P_X      (nr__) ! Limit flag on P(X)
      real*4        P_X        (nr__) ! (mJy) ? Polarized flux density for X band (8.4GHz)
      real*4        e_P_X      (nr__) ! (mJy) ? rms uncertainty on P(X)
      character*1   n_P_X      (nr__) ! [i] Note on P(X) (1)
      real*4        PAX        (nr__) ! (deg) ? Polarisation position angle for X band (2)
      real*4        e_PAX      (nr__) ! (deg) ? rms uncertainty on PAX
      character*1   n_PAX      (nr__) ! [i] Note on PAX (1)
      real*8        I_K        (nr__) ! (mJy) ? Intensity flux density for K band (22GHz)
      real*4        e_I_K      (nr__) ! (mJy) ? rms uncertainty on I(K)
      character*1   l_P_K      (nr__) ! Limit flag on P(K)
      real*4        P_K        (nr__) ! (mJy) ? Polarized flux density for K band (22GHz)
      real*4        e_P_K      (nr__) ! (mJy) ? rms uncertainty on P(K)
      character*1   n_P_K      (nr__) ! [*] Note on P(K) (3)
      real*4        PAK        (nr__) ! (deg) ? Polarisation position angle for K band
      real*4        e_PAK      (nr__) ! (deg) ? rms uncertainty on PAK
      character*1   l_I_Q      (nr__) ! Limit flag on I(Q)
      real*8        I_Q        (nr__) ! (mJy) ? Intensity flux density for Q band (43GHz)
      real*4        e_I_Q      (nr__) ! (mJy) ? rms uncertainty on I(Q)
      character*1   l_P_Q      (nr__) ! Limit flag on P(Q)
      real*4        P_Q        (nr__) ! (mJy) ? Polarized flux density for Q band (43GHz)
      real*4        e_P_Q      (nr__) ! (mJy) ? rms uncertainty on P(Q)
      character*1   n_P_Q      (nr__) ! [*] Note on P(Q) (3)
      real*4        PAQ        (nr__) ! (deg) ? Polarisation position angle for Q band
      real*4        e_PAQ      (nr__) ! (deg) ? rms uncertainty on PAQ
      integer*4     Note       (nr__) ! [1/56]? Notes, in notes.dat file
*Note (1): i indicates fluxes from CLASS, in the case of multiple observations
*     using the one with the lowest error in polarized flux density.
*Note (2): A '0.0' error means smaller than 1mJy.
*Note (3): * indicates that the measurement has been taken from the Q and U
*     maps, rather than the fits to the u-v data (see text for details).

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

C  Declarations for 'notes.dat'	! Individual notes

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

      integer*4     Note_1     (nr__1) ! Note number
      character*77  Text       (nr__1) ! Text of the note

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

C  Loading file 'table2.dat'	! Flux densities of observed sources at X (8.4GHz),
*                             K (22GHz) and Q (43GHz) bands

C  Format for file interpretation

    1 format(
     +  A8,1X,F7.1,1X,F5.1,A1,A1,F6.1,1X,F4.1,A1,2X,F5.1,1X,F5.1,A1,
     +  1X,F7.1,1X,F6.1,1X,A1,F6.1,1X,F4.1,A1,4X,F5.1,1X,F4.1,1X,A1,
     +  F7.1,1X,F6.1,1X,A1,F6.1,1X,F4.1,A1,1X,F5.1,1X,F4.1,1X,I2)

C  Effective file loading

      open(unit=1,status='old',file=
     +'table2.dat')
      write(6,*) '....Loading file: table2.dat'
      do i__=1,200
        read(1,'(A137)')ar__
        read(ar__,1)
     +  Source(i__),I_X(i__),e_I_X(i__),n_I_X(i__),l_P_X(i__),
     +  P_X(i__),e_P_X(i__),n_P_X(i__),PAX(i__),e_PAX(i__),n_PAX(i__),
     +  I_K(i__),e_I_K(i__),l_P_K(i__),P_K(i__),e_P_K(i__),n_P_K(i__),
     +  PAK(i__),e_PAK(i__),l_I_Q(i__),I_Q(i__),e_I_Q(i__),l_P_Q(i__),
     +  P_Q(i__),e_P_Q(i__),n_P_Q(i__),PAQ(i__),e_PAQ(i__),Note(i__)
        if(ar__(10:16) .EQ. '') I_X(i__) = rNULL__
        if(ar__(18:22) .EQ. '') e_I_X(i__) = rNULL__
        if(ar__(25:30) .EQ. '') P_X(i__) = rNULL__
        if(ar__(32:35) .EQ. '') e_P_X(i__) = rNULL__
        if(ar__(39:43) .EQ. '') PAX(i__) = rNULL__
        if(ar__(45:49) .EQ. '') e_PAX(i__) = rNULL__
        if(ar__(52:58) .EQ. '') I_K(i__) = rNULL__
        if(ar__(60:65) .EQ. '') e_I_K(i__) = rNULL__
        if(ar__(68:73) .EQ. '') P_K(i__) = rNULL__
        if(ar__(75:78) .EQ. '') e_P_K(i__) = rNULL__
        if(ar__(84:88) .EQ. '') PAK(i__) = rNULL__
        if(ar__(90:93) .EQ. '') e_PAK(i__) = rNULL__
        if(ar__(96:102) .EQ. '') I_Q(i__) = rNULL__
        if(ar__(104:109) .EQ. '') e_I_Q(i__) = rNULL__
        if(ar__(112:117) .EQ. '') P_Q(i__) = rNULL__
        if(ar__(119:122) .EQ. '') e_P_Q(i__) = rNULL__
        if(ar__(125:129) .EQ. '') PAQ(i__) = rNULL__
        if(ar__(131:134) .EQ. '') e_PAQ(i__) = rNULL__
        if(ar__(136:137) .EQ. '') Note(i__) = iNULL__
c    ..............Just test output...........
        write(6,1)
     +  Source(i__),I_X(i__),e_I_X(i__),n_I_X(i__),l_P_X(i__),
     +  P_X(i__),e_P_X(i__),n_P_X(i__),PAX(i__),e_PAX(i__),n_PAX(i__),
     +  I_K(i__),e_I_K(i__),l_P_K(i__),P_K(i__),e_P_K(i__),n_P_K(i__),
     +  PAK(i__),e_PAK(i__),l_I_Q(i__),I_Q(i__),e_I_Q(i__),l_P_Q(i__),
     +  P_Q(i__),e_P_Q(i__),n_P_Q(i__),PAQ(i__),e_PAQ(i__),Note(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

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

C  Loading file 'notes.dat'	! Individual notes

C  Format for file interpretation

    2 format(I2,1X,A77)

C  Effective file loading

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

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