Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/392/851 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-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/392/851 QSOs in the M3 field (Meusinger+, 2002) *================================================================================ *QSOs from the variability and proper motion survey in the M3 field. * Meusinger H., Scholz R.-D., Irwin M., Lehmann H. * <Astron. Astrophys. 392, 851 (2002)> * =2002A&A...392..851M C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table3.dat' ! QSOs/Sey1s/NELGs from follow-up spectroscopy of VPM sources integer*4 nr__ parameter (nr__=77) ! Number of records character*96 ar__ ! Full-size record C J2000.0 position composed of: RAh RAm RAs DEd DEm DEs real*8 RAdeg ! (deg) Right Ascension J2000.0 real*8 DEdeg ! (deg) Declination J2000.0 C ---------------------------------- ! (position vector(s) in degrees) integer*4 Seq ! Running number integer*4 RAh ! (h) Right ascension (J2000.0) integer*4 RAm ! (min) Right ascension (J2000.0) real*4 RAs ! (s) Right ascension (J2000.0) integer*4 DEd ! (deg) Declination (J2000.0) integer*4 DEm ! (arcmin) Declination (J2000.0) real*4 DEs ! (arcsec) Declination (J2000.0) real*4 z ! Redshift character*1 u_z ! Uncertainty flag on z integer*4 Run ! ? Observing run for follow-up spectroscopy, * in table3.dat only real*4 BMAG ! (mag) Absolute B magnitude character*4 Type ! Object type real*4 Bmag_1 ! (mag) Apparent B magnitude real*4 U_B ! (mag) ? Colour index U-B (1) real*4 B_V ! (mag) ? Colour index B-V (2) real*4 Ipm ! Proper motion index (3) real*4 Ivar ! Overall variability index (4) real*4 Iltvar ! ? Long-term variability index (5) *Note (1): U magnitude not available for line 28 in table3.dat *Note (2): V magnitude not available for line 1 in table4.dat *Note (3): The proper motion index is the probability of an object to have * a non-zero proper motion, and is expressed by the measured proper * motion in units of the proper motion error (Ipm=pm/e_pm). * (Brunzendorf & Meusinger, 2001A&A...373...38B) *Note (4): The overall variability index is assessed by the deviation of * the individual magnitudes about the mean magnitude, and is normalised * by the average magnitude scatter for star-like objects in the same * magnitude range. *Note (5): The long-term variability index is defined by means of structure * function analysis. * Iltvar not available for lines 15 and 28 in table3.dat * Iltvar has been computed only for B<20 and Ipm<4 and is * therefore not available for several objects in table4.dat c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table4.dat' ! QSOs/Sey1s/NELGs from the NED integer*4 nr__1 parameter (nr__1=104) ! Number of records character*96 ar__1 ! Full-size record C J2000.0 position composed of: RAh RAm RAs DEd DEm DEs real*8 RAdeg_1 ! (deg) Right Ascension J2000.0 real*8 DEdeg_1 ! (deg) Declination J2000.0 C ---------------------------------- ! (position vector(s) in degrees) integer*4 Seq_1 ! Running number integer*4 RAh_1 ! (h) Right ascension (J2000.0) integer*4 RAm_1 ! (min) Right ascension (J2000.0) real*4 RAs_1 ! (s) Right ascension (J2000.0) integer*4 DEd_1 ! (deg) Declination (J2000.0) integer*4 DEm_1 ! (arcmin) Declination (J2000.0) real*4 DEs_1 ! (arcsec) Declination (J2000.0) real*4 z_1 ! Redshift character*1 u_z_1 ! Uncertainty flag on z integer*4 Run_1 ! ? Observing run for follow-up spectroscopy, * in table3.dat only real*4 BMAG_2 ! (mag) Absolute B magnitude character*4 Type_1 ! Object type real*4 Bmag_3 ! (mag) Apparent B magnitude real*4 U_B_1 ! (mag) ? Colour index U-B (1) real*4 B_V_1 ! (mag) ? Colour index B-V (2) real*4 Ipm_1 ! Proper motion index (3) real*4 Ivar_1 ! Overall variability index (4) real*4 Iltvar_1 ! ? Long-term variability index (5) *Note (1): U magnitude not available for line 28 in table3.dat *Note (2): V magnitude not available for line 1 in table4.dat *Note (3): The proper motion index is the probability of an object to have * a non-zero proper motion, and is expressed by the measured proper * motion in units of the proper motion error (Ipm=pm/e_pm). * (Brunzendorf & Meusinger, 2001A&A...373...38B) *Note (4): The overall variability index is assessed by the deviation of * the individual magnitudes about the mean magnitude, and is normalised * by the average magnitude scatter for star-like objects in the same * magnitude range. *Note (5): The long-term variability index is defined by means of structure * function analysis. * Iltvar not available for lines 15 and 28 in table3.dat * Iltvar has been computed only for B<20 and Ipm<4 and is * therefore not available for several objects in table4.dat C============================================================================= C Loading file 'table3.dat' ! QSOs/Sey1s/NELGs from follow-up spectroscopy * of VPM sources C Format for file interpretation 1 format( + I3,2X,I2,1X,I2,1X,F5.2,2X,I2,1X,I2,1X,F4.1,3X,F5.3,A1,2X,I1, + 3X,F6.2,1X,A4,2X,F5.2,2X,F5.2,2X,F5.2,3X,F4.2,2X,F4.2,3X,F5.2) C Effective file loading open(unit=1,status='old',file= +'table3.dat') write(6,*) '....Loading file: table3.dat' do i__=1,77 read(1,'(A96)')ar__ read(ar__,1) + Seq,RAh,RAm,RAs,DEd,DEm,DEs,z,u_z,Run,BMAG,Type,Bmag_1,U_B, + B_V,Ipm,Ivar,Iltvar if(ar__(40:40) .EQ. '') Run = iNULL__ if(ar__(64:68) .EQ. '') U_B = rNULL__ if(ar__(71:75) .EQ. '') B_V = rNULL__ if(ar__(92:96) .EQ. '') Iltvar = 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(RAs .GT. -180) RAdeg=RAdeg+RAs/240. if(DEd .GE. 0) DEdeg=DEd if(DEm .GE. 0) DEdeg=DEdeg+DEm/60. if(DEs .GE. 0) DEdeg=DEdeg+DEs/3600. c ..............Just test output........... write(6,1) + Seq,RAh,RAm,RAs,DEd,DEm,DEs,z,u_z,Run,BMAG,Type,Bmag_1,U_B, + B_V,Ipm,Ivar,Iltvar write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table4.dat' ! QSOs/Sey1s/NELGs from the NED C Format for file interpretation 2 format( + I3,2X,I2,1X,I2,1X,F5.2,2X,I2,1X,I2,1X,F4.1,3X,F5.3,A1,2X,I1, + 3X,F6.2,1X,A4,2X,F5.2,2X,F5.2,2X,F5.2,3X,F4.2,2X,F4.2,3X,F5.2) C Effective file loading open(unit=1,status='old',file= +'table4.dat') write(6,*) '....Loading file: table4.dat' do i__=1,104 read(1,'(A96)')ar__1 read(ar__1,2) + Seq_1,RAh_1,RAm_1,RAs_1,DEd_1,DEm_1,DEs_1,z_1,u_z_1,Run_1, + BMAG_2,Type_1,Bmag_3,U_B_1,B_V_1,Ipm_1,Ivar_1,Iltvar_1 if(ar__1(40:40) .EQ. '') Run_1 = iNULL__ if(ar__1(64:68) .EQ. '') U_B_1 = rNULL__ if(ar__1(71:75) .EQ. '') B_V_1 = rNULL__ if(ar__1(92:96) .EQ. '') Iltvar_1 = rNULL__ RAdeg_1 = rNULL__ DEdeg_1 = rNULL__ c Derive coordinates RAdeg_1 and DEdeg_1 from input data c (RAdeg_1 and DEdeg_1 are set to rNULL__ when unknown) if(RAh_1 .GT. -180) RAdeg_1=RAh_1*15. if(RAm_1 .GT. -180) RAdeg_1=RAdeg_1+RAm_1/4. if(RAs_1 .GT. -180) RAdeg_1=RAdeg_1+RAs_1/240. if(DEd_1 .GE. 0) DEdeg_1=DEd_1 if(DEm_1 .GE. 0) DEdeg_1=DEdeg_1+DEm_1/60. if(DEs_1 .GE. 0) DEdeg_1=DEdeg_1+DEs_1/3600. c ..............Just test output........... write(6,2) + Seq_1,RAh_1,RAm_1,RAs_1,DEd_1,DEm_1,DEs_1,z_1,u_z_1,Run_1, + BMAG_2,Type_1,Bmag_3,U_B_1,B_V_1,Ipm_1,Ivar_1,Iltvar_1 write(6,'(6H Pos: 2F8.4)') RAdeg_1,DEdeg_1 c .......End.of.Just test output........... end do close(1) C============================================================================= stop end