Conversion of standardized ReadMe file for
file /./ftp/cats/J/ApJS/199/18 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-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__=--2147483648.) ! NULL real number parameter (iNULL__=(-2147483647-1)) ! NULL int number integer idig ! testing NULL number C============================================================================= Cat. J/ApJS/199/18 The Fermi GBM catalog (Paciesas+, 2012) *================================================================================ *The Fermi GBM Gamma-Ray Burst catalog: the first two years. * Paciesas W.S., Meegan C.A., von Kienlin A., Bhat P.N., Bissaldi E., * Briggs M.S., Burgess J.M., Chaplin V., Connaughton V., Diehl R., * Fishman G.J., Fitzpatrick G., Foley S., Gibby M., Giles M., Goldstein A., * Greiner J., Gruber D., Guiriec S., van der Horst A.J., Kippen R.M., * Kouveliotou C., Lichti G., Lin L., McBreen S., Preece R.D., Rau A., * Tierney D., Wilson-Hodge C. * <Astrophys. J. Suppl. Ser., 199, 18 (2012)> * =2012ApJS..199...18P C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table1.dat' ! Trigger criteria history integer*4 nr__ parameter (nr__=66) ! Number of records character*38 ar__ ! Full-size record integer*4 Al (nr__) ! [1/66] Algorithm number integer*4 Time (nr__) ! (ms) Trigger timescale integer*4 Off (nr__) ! (ms) Offset character*3 Ch (nr__) ! Channels character*1 l_E (nr__) ! Limit flag on E character*5 E (nr__) ! (keV) Energy range character*2 Th1 (nr__) ! Threshold (0.1{sigma}) on 2008 Jul 11 (1) character*2 Th2 (nr__) ! Threshold (0.1{sigma}) on 2008 Jul 14 (1) character*2 Th3 (nr__) ! Threshold (0.1{sigma}) on 2008 Aug 1 (1) character*2 Th4 (nr__) ! Threshold (0.1{sigma}) on 2009 May 8 (1) character*1 Th5 (nr__) ! Threshold (0.1{sigma}) on 2009 Jul 2 (1) *Note (1): Symbol ":" indicates no change from previous setting; "C" indicates * that the algorithm is in compute mode (see the text); and "D" * indicates that the algorithm is disabled. c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table2.dat' ! GRB triggers: locations and trigger characteristics integer*4 nr__1 parameter (nr__1=492) ! Number of records character*107 ar__1 ! Full-size record C J2000 position composed of: RAdeg DEdeg integer*4 ID (nr__1) ! Trigger identifier (bnYYMMDDNNN) character*1 Flag (nr__1) ! [ce] Source emission flag (1) character*7 GRB (nr__1) ! GRB name (YYMMDDA) character*13 Obs_time (nr__1) ! ("h:m:s") UT Time of the trigger real*4 RAdeg (nr__1) ! (deg) Right Ascension in decimal degrees (J2000) real*4 DEdeg (nr__1) ! (deg) Declination in decimal degrees (J2000) real*4 ePos (nr__1) ! (deg) Positional uncertainty character*9 Loc (nr__1) ! Source of the coordinate localization used for * the trigger (Fermi, Swift, IPN...) integer*4 Al_1 (nr__1) ! [1,56] Trigger algorithm integer*4 Time_1 (nr__1) ! (ms) Trigger timescale character*6 Energy (nr__1) ! (keV) Trigger energy range character*25 Other (nr__1) ! Other detections (2) *Note (1): Flag as follows: * c = GRB091024A triggered GBM twice. * e = burst has significant emission in at least one BGO detector (see text). *Note (2): Other instrument detections as follows: * K = Konus-WInd; * K-RF = Konus-RF; * S = Swift; * IA = INTEGRAL SPI-ACS; * IB = INTEGRAL Burst Alert System; * W = Suzaku-WAM; * R = RHESSI; * M = MAXI; * SA = SuperAGILE; * AM = AGILE-MCAL; * A = AGILE; * L = Fermi LAT. c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table3.dat' ! GRB durations (50-300keV) integer*4 nr__2 parameter (nr__2=492) ! Number of records character*75 ar__2 ! Full-size record integer*4 ID_1 (nr__2) ! Trigger identifier (bnYYMMDDNNN) character*1 R (nr__2) ! Individual remarks (3) character*13 Det (nr__2) ! Detectors used real*8 T90 (nr__2) ! (s) ? Time burst was between 5% and 95% of its fluence real*4 e_T90 (nr__2) ! (s) ? Uncertainty in T90 real*8 T90st (nr__2) ! (s) ? Start of T90 relative to trigger time real*8 T50 (nr__2) ! (s) ? Time burst was between 25% and 75% of its fluence real*4 e_T50 (nr__2) ! (s) ? Uncertainty in T50 real*8 T50st (nr__2) ! (s) ? Start of T50 relative to trigger time *Note (3): Flag as follows: * a = Data problems precluded duration analysis. * b = Used TTE binned at 32ms. * c = Partial earth occultation is likely; durations are lower limits. * d = Possible precursor at ~T_0_-120s before trigger. * e = Data cut off while burst in progress; durations are lower limits. * f = SAA entry at T_0+83s after trigger; durations are lower limits. * g = GRB091024 triggered GBM twice. * h = Too weak to measure durations; visual duration is ~0.025s. * i = Possible contamination due to emergence of Crab & A0535+26 * from Earth occultation. * j = Used TTE binned at 16ms. c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table4.dat' ! GRB fluence & peak flux (10-1000keV) integer*4 nr__3 parameter (nr__3=492) ! Number of records character*66 ar__3 ! Full-size record integer*4 ID_2 (nr__3) ! Trigger identifier (bnYYMMDDNNN) real*4 Fluence (nr__3) ! (mJ/m2) ? Fluence; in erg/cm^2^ real*4 e_Fluence (nr__3) ! (mJ/m2) ? Uncertainty in Fluence real*4 PF64 (nr__3) ! (ph/cm2/s) ? Peak flux with 64ms binning real*4 e_PF64 (nr__3) ! (ph/cm2/s) ? Uncertainty in PF64 real*4 PF256 (nr__3) ! (ph/cm2/s) ? Peak flux with 256ms binning real*4 e_PF256 (nr__3) ! (ph/cm2/s) ? Uncertainty in PF256 real*4 PF1024 (nr__3) ! (ph/cm2/s) ? Peak flux with 1024ms binning real*4 e_PF1024 (nr__3) ! (ph/cm2/s) ? Uncertainty in PF1024 c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table5.dat' ! GRB fluence & peak flux (50-300keV) integer*4 nr__4 parameter (nr__4=492) ! Number of records character*66 ar__4 ! Full-size record integer*4 ID_3 (nr__4) ! Trigger identifier (bnYYMMDDNNN) real*4 Fluence_1 (nr__4) ! (mJ/m2) ? Fluence; in erg/cm^2^ real*4 e_Fluence_1(nr__4) ! (mJ/m2) ? Uncertainty in Fluence real*4 PF64_1 (nr__4) ! (ph/cm2/s) ? Peak flux with 64ms binning real*4 e_PF64_1 (nr__4) ! (ph/cm2/s) ? Uncertainty in PF64 real*4 PF256_1 (nr__4) ! (ph/cm2/s) ? Peak flux with 256ms binning real*4 e_PF256_1 (nr__4) ! (ph/cm2/s) ? Uncertainty in PF256 real*4 PF1024_1 (nr__4) ! (ph/cm2/s) ? Peak flux with 1024ms binning real*4 e_PF1024_1 (nr__4) ! (ph/cm2/s) ? Uncertainty in PF1024 C============================================================================= C Loading file 'table1.dat' ! Trigger criteria history C Format for file interpretation 1 format( + I2,1X,I5,1X,I4,1X,A3,1X,A1,A5,1X,A2,1X,A2,1X,A2,1X,A2,1X,A1) C Effective file loading open(unit=1,status='old',file= +'table1.dat') write(6,*) '....Loading file: table1.dat' do i__=1,66 read(1,'(A38)')ar__ read(ar__,1) + Al(i__),Time(i__),Off(i__),Ch(i__),l_E(i__),E(i__),Th1(i__), + Th2(i__),Th3(i__),Th4(i__),Th5(i__) c ..............Just test output........... write(6,1) + Al(i__),Time(i__),Off(i__),Ch(i__),l_E(i__),E(i__),Th1(i__), + Th2(i__),Th3(i__),Th4(i__),Th5(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table2.dat' ! GRB triggers: locations and trigger characteristics C Format for file interpretation 2 format( + 2X,I9,1X,A1,5X,A7,1X,A13,1X,F5.1,1X,F5.1,1X,F4.1,1X,A9,1X,I2, + 1X,I4,1X,A6,1X,A25) C Effective file loading open(unit=1,status='old',file= +'table2.dat') write(6,*) '....Loading file: table2.dat' do i__=1,492 read(1,'(A107)')ar__1 read(ar__1,2) + ID(i__),Flag(i__),GRB(i__),Obs_time(i__),RAdeg(i__), + DEdeg(i__),ePos(i__),Loc(i__),Al_1(i__),Time_1(i__), + Energy(i__),Other(i__) c ..............Just test output........... write(6,2) + ID(i__),Flag(i__),GRB(i__),Obs_time(i__),RAdeg(i__), + DEdeg(i__),ePos(i__),Loc(i__),Al_1(i__),Time_1(i__), + Energy(i__),Other(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table3.dat' ! GRB durations (50-300keV) C Format for file interpretation 3 format( + 2X,I9,1X,A1,1X,A13,1X,F7.3,1X,F6.3,1X,F8.3,1X,F7.3,1X,F6.3,1X, + F8.3) C Effective file loading open(unit=1,status='old',file= +'table3.dat') write(6,*) '....Loading file: table3.dat' do i__=1,492 read(1,'(A75)')ar__2 read(ar__2,3) + ID_1(i__),R(i__),Det(i__),T90(i__),e_T90(i__),T90st(i__), + T50(i__),e_T50(i__),T50st(i__) if(ar__2(29:35) .EQ. '') T90(i__) = rNULL__ if(ar__2(37:42) .EQ. '') e_T90(i__) = rNULL__ if(ar__2(44:51) .EQ. '') T90st(i__) = rNULL__ if(ar__2(53:59) .EQ. '') T50(i__) = rNULL__ if(ar__2(61:66) .EQ. '') e_T50(i__) = rNULL__ if(ar__2(68:75) .EQ. '') T50st(i__) = rNULL__ c ..............Just test output........... write(6,3) + ID_1(i__),R(i__),Det(i__),T90(i__),e_T90(i__),T90st(i__), + T50(i__),e_T50(i__),T50st(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table4.dat' ! GRB fluence & peak flux (10-1000keV) C Format for file interpretation 4 format( + 2X,I9,1X,E8.2,1X,E8.2,1X,F6.2,1X,F5.2,1X,F6.2,1X,F4.2,1X,F6.2, + 1X,F4.2) C Effective file loading open(unit=1,status='old',file= +'table4.dat') write(6,*) '....Loading file: table4.dat' do i__=1,492 read(1,'(A66)')ar__3 read(ar__3,4) + ID_2(i__),Fluence(i__),e_Fluence(i__),PF64(i__),e_PF64(i__), + PF256(i__),e_PF256(i__),PF1024(i__),e_PF1024(i__) if(ar__3(13:20) .EQ. '') Fluence(i__) = rNULL__ if(ar__3(22:29) .EQ. '') e_Fluence(i__) = rNULL__ if(ar__3(31:36) .EQ. '') PF64(i__) = rNULL__ if(ar__3(38:42) .EQ. '') e_PF64(i__) = rNULL__ if(ar__3(44:49) .EQ. '') PF256(i__) = rNULL__ if(ar__3(51:54) .EQ. '') e_PF256(i__) = rNULL__ if(ar__3(56:61) .EQ. '') PF1024(i__) = rNULL__ if(ar__3(63:66) .EQ. '') e_PF1024(i__) = rNULL__ c ..............Just test output........... write(6,4) + ID_2(i__),Fluence(i__),e_Fluence(i__),PF64(i__),e_PF64(i__), + PF256(i__),e_PF256(i__),PF1024(i__),e_PF1024(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table5.dat' ! GRB fluence & peak flux (50-300keV) C Format for file interpretation 5 format( + 2X,I9,1X,E8.2,1X,E8.2,1X,F6.2,1X,F5.2,1X,F6.2,1X,F4.2,1X,F6.2, + 1X,F4.2) C Effective file loading open(unit=1,status='old',file= +'table5.dat') write(6,*) '....Loading file: table5.dat' do i__=1,492 read(1,'(A66)')ar__4 read(ar__4,5) + ID_3(i__),Fluence_1(i__),e_Fluence_1(i__),PF64_1(i__), + e_PF64_1(i__),PF256_1(i__),e_PF256_1(i__),PF1024_1(i__), + e_PF1024_1(i__) if(ar__4(13:20) .EQ. '') Fluence_1(i__) = rNULL__ if(ar__4(22:29) .EQ. '') e_Fluence_1(i__) = rNULL__ if(ar__4(31:36) .EQ. '') PF64_1(i__) = rNULL__ if(ar__4(38:42) .EQ. '') e_PF64_1(i__) = rNULL__ if(ar__4(44:49) .EQ. '') PF256_1(i__) = rNULL__ if(ar__4(51:54) .EQ. '') e_PF256_1(i__) = rNULL__ if(ar__4(56:61) .EQ. '') PF1024_1(i__) = rNULL__ if(ar__4(63:66) .EQ. '') e_PF1024_1(i__) = rNULL__ c ..............Just test output........... write(6,5) + ID_3(i__),Fluence_1(i__),e_Fluence_1(i__),PF64_1(i__), + e_PF64_1(i__),PF256_1(i__),e_PF256_1(i__),PF1024_1(i__), + e_PF1024_1(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end