FORTRAN Generation
(/./ftp/cats/J/A_A/615/A68)

Conversion of standardized ReadMe file for file /./ftp/cats/J/A_A/615/A68 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-Mar-29
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/A+A/615/A68         Type Ia supernova luminosities              (Roman+, 2018)
*================================================================================
*Dependence of Type Ia supernova luminosities on their local environment.
*    Roman M., Hardin D., Betoule M., Astier P., Balland C., Ellis R.S.,
*    Fabbro S., Guy J., Hook I.M., Howell D.A., Lidman C., Mitra A., Moeller A.,
*    Mourao A.M., Neveu J., Palanque-Delabrouille N., Pritchet C.J.,
*    Regnault N., Ruhlmann-Kleider V., Saunders C., Sullivan M.
*    <Astron. Astrophys. 615, A68 (2018)>
*    =2018A&A...615A..68R        (SIMBAD/NED BibCode)
C=============================================================================

C  Internal variables

      integer*4 i__

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

C  Declarations for 'snprop.dat'	! *Properties of the SNIa sample

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

C  J2000 position composed of: RAdeg DEdeg
      character*8   Name       (nr__) ! Name of the SNIa (name)
      real*8        z          (nr__) ! Redshift (redshift)
      character*6   Survey     (nr__) ! Survey (survey)
      real*8        RAdeg      (nr__) ! (deg) [-56/359] Right ascension of the SNIa
*                                  location (J2000) (ra)
      real*8        DEdeg      (nr__) ! (deg) Delcination of the SNIa location (J2000) (dec)
      real*8        umagg      (nr__) ! (mag) ?=- Host galaxy SDSS u magnitude
*                                  (mag_global_u) (1)
      real*8        gmagg      (nr__) ! (mag) ?=- Host galaxy SDSS g magnitude
*                                  (mag_global_g) (1)
      real*8        rmagg      (nr__) ! (mag) ?=- Host galaxy SDSS r magnitude
*                                  (mag_global_r) (1)
      real*8        imagg      (nr__) ! (mag) ?=- Host galaxy SDSS i magnitude
*                                  (mag_global_i) (1)
      real*8        zmagg      (nr__) ! (mag) ?=- Host galaxy SDSS z magnitude
*                                 (mag_global_z) (1)
      real*8        e_umagg    (nr__) ! (mag) ?=- rms uncertainty on umagg
*                                  (emag_global_u) (1)
      real*8        e_gmagg    (nr__) ! (mag) ?=-rms uncertainty on gmagg
*                                  (emag_global_g) (1)
      real*8        e_rmagg    (nr__) ! (mag) ?=- rms uncertainty on rmagg
*                                  (emag_global_r) (1)
      real*8        e_imagg    (nr__) ! (mag) ?=- rms uncertainty on imagg
*                                  (emag_global_i) (1)
      real*8        e_zmagg    (nr__) ! (mag) ?=- rms uncertainty on zmagg
*                                  (emag_global_z) (1)
      real*8        umagl      (nr__) ! (mag) ? SDSS u magnitude within 3kpc radius
*                                  (mag_local_u) (1)
      real*8        gmagl      (nr__) ! (mag) ? SDSS g magnitude within 3kpc radius
*                                  (mag_local_g) (1)
      real*8        rmagl      (nr__) ! (mag) ? SDSS r magnitude within 3kpc radius
*                                  (mag_local_r) (1)
      real*8        imagl      (nr__) ! (mag) ? SDSS i magnitude within 3kpc radius
*                                  (mag_local_i) (1)
      real*8        zmagl      (nr__) ! (mag) ? SDSS z magnitude within 3kpc radius
*                                  (mag_local_z) (1)
      real*8        e_umagl    (nr__) ! (mag) ? rms uncertainty on ugmal (emag_local_u) (1)
      real*8        e_gmagl    (nr__) ! (mag) ? rms uncertainty on ggmal (emag_local_g) (1)
      real*8        e_rmagl    (nr__) ! (mag) ? rms uncertainty on rgmal (emag_local_r) (1)
      real*8        e_imagl    (nr__) ! (mag) ? rms uncertainty on igmal (emag_local_i) (1)
      real*8        e_zmagl    (nr__) ! (mag) ? rms uncertainty on zgmal (emag_local_z) (1)
      real*8        Ful        (nr__) ! ?=0 Flux in SDSS u band within 3kpc radius
*                                  (flux_local_u) (1)
      real*8        Fgl        (nr__) ! ?=0 Flux in SDSS g band within 3kpc radius
*                                  (flux_local_g) (1)
      real*8        Frl        (nr__) ! ?=0 Flux in SDSS r band within 3kpc radius
*                                  (flux_local_r) (1)
      real*8        Fil        (nr__) ! ?=0 Flux in SDSS i band within 3kpc radius
*                                  (flux_local_i) (1)
      real*8        Fzl        (nr__) ! ?=0 Flux in SDSS z band within 3kpc radius
*                                  (flux_local_z) (1)
      real*8        e_Ful      (nr__) ! []?=0 rms uncertainty on Ful
*                                  (eflux_local_u) (1)
      real*8        e_Fgl      (nr__) ! []?=0  rms uncertainty on Fgl
*                                  (eflux_local_g) (1)
      real*8        e_Frl      (nr__) ! []?=0  rms uncertainty on Frl
*                                  (eflux_local_r) (1)
      real*8        e_Fil      (nr__) ! []?=0  rms uncertainty on Fil
*                                  (eflux_local_i) (1)
      real*8        e_Fzl      (nr__) ! []?=0  rms uncertainty on Fzl
*                                  (eflux_local_z) (1)
      real*8        U_Vl       (nr__) ! (mag) ?=99 Local U-V colour index within 3kpc radius
*                                  (uv_local)
      real*8        e_U_Vl     (nr__) ! (mag) ?=-1 rms uncertainty on U-Vl (euv_local)
      real*8        U_Vg       (nr__) ! (mag) ?=99 Host galaxy U-V colour index (uv_global)
      real*8        e_U_Vg     (nr__) ! (mag) ?=-1 rms uncertainty on U-Vg (euv_global)
      real*8        logMs      (nr__) ! ([Msun]) ?=-999 Stellar mass of the host galaxy
*                                  (stellar_mass)
      real*8        e_logMs    (nr__) ! ([Msun]) ?=-999 rms uncertainty on logMs
*                                  (estellar_mass)
      real*8        Dist       (nr__) ! (kpc) Projected distance of the SNIa to the galactic
*                                  center (d_kpc)
*Note (1): For SN from SDSS, CSP, CfAIII and CfAIV, magnitudes are in AB system
* and fluxes in nanomaggies (~3.631x10^-6^Jy).
*
* For SN from SNLS5, magnitudes are in Vega system and fluxes are in
* Vega-flux unit.
* To transform SNLS5 fluxes in maggies unit, use Flux(Vega)*10^(-0.4DeltaZP),
* with the following DeltaZP values:
*  u : 10.197
*  g :  9.596
*  r :  9.342
*  i :  9.250
*  z :  9.238

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

C  Loading file 'snprop.dat'	! *Properties of the SNIa sample

C  Format for file interpretation

    1 format(
     +  A8,1X,F14.12,1X,A6,1X,F13.9,1X,F13.9,1X,F12.6,1X,F12.6,1X,
     +  F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,
     +  1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,
     +  F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,
     +  1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,F12.6,1X,
     +  F12.6,1X,F12.6,1X,F14.11,1X,F14.11,1X,F14.11,1X,F14.11,1X,
     +  F15.10,1X,F15.10,1X,F10.6)

C  Effective file loading

      open(unit=1,status='old',file=
     +'snprop.dat')
      write(6,*) '....Loading file: snprop.dat'
      do i__=1,881
        read(1,'(A551)')ar__
        read(ar__,1)
     +  Name(i__),z(i__),Survey(i__),RAdeg(i__),DEdeg(i__),umagg(i__),
     +  gmagg(i__),rmagg(i__),imagg(i__),zmagg(i__),e_umagg(i__),
     +  e_gmagg(i__),e_rmagg(i__),e_imagg(i__),e_zmagg(i__),
     +  umagl(i__),gmagl(i__),rmagl(i__),imagl(i__),zmagl(i__),
     +  e_umagl(i__),e_gmagl(i__),e_rmagl(i__),e_imagl(i__),
     +  e_zmagl(i__),Ful(i__),Fgl(i__),Frl(i__),Fil(i__),Fzl(i__),
     +  e_Ful(i__),e_Fgl(i__),e_Frl(i__),e_Fil(i__),e_Fzl(i__),
     +  U_Vl(i__),e_U_Vl(i__),U_Vg(i__),e_U_Vg(i__),logMs(i__),
     +  e_logMs(i__),Dist(i__)
        if (idig(ar__(60:71)).EQ.0) umagg(i__) =  rNULL__
        if (idig(ar__(73:84)).EQ.0) gmagg(i__) =  rNULL__
        if (idig(ar__(86:97)).EQ.0) rmagg(i__) =  rNULL__
        if (idig(ar__(99:110)).EQ.0) imagg(i__) =  rNULL__
        if (idig(ar__(112:123)).EQ.0) zmagg(i__) =  rNULL__
        if (idig(ar__(125:136)).EQ.0) e_umagg(i__) =  rNULL__
        if (idig(ar__(138:149)).EQ.0) e_gmagg(i__) =  rNULL__
        if (idig(ar__(151:162)).EQ.0) e_rmagg(i__) =  rNULL__
        if (idig(ar__(164:175)).EQ.0) e_imagg(i__) =  rNULL__
        if (idig(ar__(177:188)).EQ.0) e_zmagg(i__) =  rNULL__
        if(ar__(190:201) .EQ. '') umagl(i__) = rNULL__
        if(ar__(203:214) .EQ. '') gmagl(i__) = rNULL__
        if(ar__(216:227) .EQ. '') rmagl(i__) = rNULL__
        if(ar__(229:240) .EQ. '') imagl(i__) = rNULL__
        if(ar__(242:253) .EQ. '') zmagl(i__) = rNULL__
        if(ar__(255:266) .EQ. '') e_umagl(i__) = rNULL__
        if(ar__(268:279) .EQ. '') e_gmagl(i__) = rNULL__
        if(ar__(281:292) .EQ. '') e_rmagl(i__) = rNULL__
        if(ar__(294:305) .EQ. '') e_imagl(i__) = rNULL__
        if(ar__(307:318) .EQ. '') e_zmagl(i__) = rNULL__
c    ..............Just test output...........
        write(6,1)
     +  Name(i__),z(i__),Survey(i__),RAdeg(i__),DEdeg(i__),umagg(i__),
     +  gmagg(i__),rmagg(i__),imagg(i__),zmagg(i__),e_umagg(i__),
     +  e_gmagg(i__),e_rmagg(i__),e_imagg(i__),e_zmagg(i__),
     +  umagl(i__),gmagl(i__),rmagl(i__),imagl(i__),zmagl(i__),
     +  e_umagl(i__),e_gmagl(i__),e_rmagl(i__),e_imagl(i__),
     +  e_zmagl(i__),Ful(i__),Fgl(i__),Frl(i__),Fil(i__),Fzl(i__),
     +  e_Ful(i__),e_Fgl(i__),e_Frl(i__),e_Fil(i__),e_Fzl(i__),
     +  U_Vl(i__),e_U_Vl(i__),U_Vg(i__),e_U_Vg(i__),logMs(i__),
     +  e_logMs(i__),Dist(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