Conversion of standardized ReadMe file for
file /./ftp/cats/J/ApJ/658/480 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-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/ApJ/658/480 Pre-main-sequence stars in Lupus association (Makarov+, 2007) *================================================================================ *The Lupus association of pre-main-sequence stars: clues to star formation *scattered in space and time. * Makarov V.V. * <Astrophys. J., 658, 480-486 (2007)> * =2007ApJ...658..480M C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table2.dat' ! Kinematic T Tauri Members of the Lupus Association integer*4 nr__ parameter (nr__=93) ! Number of records character*121 ar__ ! Full-size record C J2000 position composed of: RAdeg DEdeg character*14 Name ! Star name character*1 n_Name ! [y] Very young object (1) real*8 RAdeg ! (deg) Right ascension in decimal degrees (J2000) real*8 DEdeg ! (deg) Declination in decimal degrees (J2000) real*4 pmRA ! (mas/yr) Proper motion along RA, pmRA*cosDE real*4 pmDE ! (mas/yr) Proper motion along DE real*4 e_pmRA ! (mas/yr) rms uncertainty on pmRA real*4 e_pmDE ! (mas/yr) rms uncertainty on pmDE integer*4 Dkin ! (pc) Kinematic distance real*4 Dev ! Relative angular deviation, * {Delta}/{sigma}{Delta} real*4 Vtan ! (km/s) Transverse tangential velocity component real*4 Vmag ! (mag) ?=- V magnitude real*4 B_V ! (mag) ?=- B-V colour index real*4 U_B ! (mag) ?=- U-B colour index real*4 V_Rc ! (mag) ?=- V-Rc colour index real*4 V_Ic ! (mag) ?=- V-Ic colour index real*4 Jmag ! (mag) J magnitude real*4 Hmag ! (mag) H magnitude real*4 Ksmag ! (mag) Ks magnitude *Note (1): 'y' indicate stars whose location on the near-infrared H-R * diagram suggests they may be as young as 1Myr C============================================================================= C Loading file 'table2.dat' ! Kinematic T Tauri Members of the Lupus Association C Format for file interpretation 1 format( + A14,A1,1X,F11.7,1X,F11.7,1X,F5.1,1X,F5.1,1X,F3.1,1X,F3.1,1X, + I3,1X,F4.1,1X,F4.1,1X,F5.2,1X,F4.2,1X,F5.2,1X,F4.2,1X,F4.2,1X, + F6.3,1X,F6.3,1X,F6.3) C Effective file loading open(unit=1,status='old',file= +'table2.dat') write(6,*) '....Loading file: table2.dat' do i__=1,93 read(1,'(A121)')ar__ read(ar__,1) + Name,n_Name,RAdeg,DEdeg,pmRA,pmDE,e_pmRA,e_pmDE,Dkin,Dev,Vtan, + Vmag,B_V,U_B,V_Rc,V_Ic,Jmag,Hmag,Ksmag if (idig(ar__(75:79)).EQ.0) Vmag = rNULL__ if (idig(ar__(81:84)).EQ.0) B_V = rNULL__ if (idig(ar__(86:90)).EQ.0) U_B = rNULL__ if (idig(ar__(92:95)).EQ.0) V_Rc = rNULL__ if (idig(ar__(97:100)).EQ.0) V_Ic = rNULL__ c ..............Just test output........... write(6,1) + Name,n_Name,RAdeg,DEdeg,pmRA,pmDE,e_pmRA,e_pmDE,Dkin,Dev,Vtan, + Vmag,B_V,U_B,V_Rc,V_Ic,Jmag,Hmag,Ksmag 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