Conversion of standardized ReadMe file for
file /./ftp/cats/V/31A 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-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. V/31A Kinematic data for O-B5 stars (Rubin+, 1962) *================================================================================ *Catalogue of Kinematic Data for O-B5 stars * Rubin V.C., Burley J., Kiasatpoor A., Klock B., Pease G., * Rutscheidt E., Smith C. * <Astron. J. 67, 491 (1962)> * =1962AJ.....67..491R (SIMBAD/NED Reference) C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'catalog.dat' ! The catalogue integer*4 nr__ parameter (nr__=1440) ! Number of records character*179 ar__ ! Full-size record C B1950 position composed of: RAh DE- DEd DEm real*8 RAdeg ! (deg) Right Ascension B1950 real*8 DEdeg ! (deg) Declination B1950 C ---------------------------------- ! (position vector(s) in degrees) integer*4 Num ! [1/1440]+ Running number character*1 pmPubl ! [*] "*" if star has a published * proper motion integer*4 r_RVel ! [1/16]? Source for radial velocity if * not in GCRV (see "refs" file) integer*4 GCRV ! [1/15037]? GCRV (Wilson ref. 58) number integer*4 HD ! [1/350000]? Henry Draper (HD) Catalogue * number character*9 Other ! Identifier if no HD number was available (1) integer*4 GLON ! (0.01deg) [0/36000[ Galactic longitude integer*4 GLAT ! (0.01deg) [-9000/+9000] Galactic latitude integer*4 RAh ! (h) Right ascension in hours [B1950] integer*4 RAdm ! (0.1min) Right ascension in tenths of minutes [B1950] character*1 DE_ ! Sign of declination integer*4 DEd ! (deg) Declination degrees [B1950] integer*4 DEm ! (arcmin) Declination arcminutes [B1950] real*4 RVel ! (km/s) Radial velocity real*4 Vmag ! (mag) ? Visual or Photographic magnitude * (see n_Vmag) character*1 n_Vmag ! [PV:+] Remark on Vmag (2) character*12 SpType ! Spectral classification, on the MK * system when available integer*4 AbsMag ! (0.1mag) Absolute magnitude (M) when available, * most often from Johnson and Iriarte * (1958, ref.25) character*1 n_AbsMag ! [*] The "*" indicates stars with no * luminosity class available; class V was * assumed and Johnson-Iriarte calibration * adopted real*4 Av ! (mag) [0/6]?=9.99 Visual absorption (Av) (3) integer*4 m_M ! (0.1mag) []?=999 Distance modulus computed from m-M-Av character*1 n_m_M ! [*] "*" indicates that photometric data * were missing for second star in a binary integer*4 r_Vmag ! [1/60]? Source for visual apparent * magnitude Vmag integer*4 r_Sp ! [1/60] Source for spectral classification integer*4 r_AbsMag ! [1/60]? Source for absolute magnitude M integer*4 r_Av ! [1/60]? Source for visual absorption Av integer*4 pmRA ! (0.1ms/yr) ? Proper motion in right ascension integer*4 pmDE ! (mas/yr) ? Proper motion in declination integer*4 pmGLON ! (mas/yr) ? Proper-motion in galactic longitude integer*4 pmGLAT ! (mas/yr) ? Proper-motion in galactic latitude integer*4 r ! (100pc) ? Heliocentric Distance computed from (m-M) integer*4 R_1 ! (100pc) ? Galactocentric distance (Rsun=8.2kpc) integer*4 Tl ! (km/s) ? Tangential motion in galactic frame (4) integer*4 Tb ! (km/s) ? Tangential motion in galactic frame (4) integer*4 xdot ! (km/s) ? Space motion of the star (4) integer*4 ydot ! (km/s) ? Space motion of the star (4) integer*4 zdot ! (km/s) ? Space motion of the star (4) integer*4 cirVel ! (km/s) ? Circular velocity (ortho-radial in * the galactocentric frame) integer*4 e_cirVel ! (km/s) ? Probable error on cirVel integer*4 Pi ! (km/s) ? Radial velocity in the galactocentric frame integer*4 e_Pi ! (km/s) ? Probable error on Pi character*5 pmRef ! References for proper motions (5) *Note (1): If no HD number is available, this designation represents * depending on byte 22: * "+" or "-" : sign of Bonner Durchmusterung (BD) or * Cape Photographic Durchmusterung (CPD) * For BD and CPD numbers, form is ZZNNNNNL where * ZZ = absolute value of declination zone * NNNNN = number within zone * L = blank, or "A", "B", etc. * "A" : Aitken Double Star Catalogue number * "I" : Index Catalogue (IC) number * "K" : Rspteyn (K) Selected Area number * "M" : Messier's (M) Catalogue number * "N" : New General Catalogue (NGC) number *Note (2): the following remark concerns the magnitude: * "P" indicates a photographic magnitude; * "V" refers to a variable; * "+" indicates a variable photographic * ":" indicates last digit is uncertain *Note (3): the absorption is most often from (B-V) measures. * A value of 3 for the ratio of total to selective absorption has * been assumed. The entry Av = 0.0 indicates that the computed value * was negative, but always equal to 0.0 to one decimal place. *Note (4): velocity not corrected for the solar motion *Note (5): References of proper motions: * --------------------------------------------------------------------- * Number Prob.Err. * # Stars (mas/yr) * --------------------------------------------------------------------- * 1 Bertiau, F. C., S. J. 1958 30 3 * Astrophys. J., 128, 533. * 2 Morgan, H. R. 1956, Astron. J., 61, 90. 304 3 * 3 Morgan, H. R. 1952, Astron. Papers Am. 51 3 * Ephemeris and Naut. Almanac XIII, part III. * 4 Trans. Astron. Obs. Yale University, 78 4 * 24, 1953; 25, 1954; 26, 1959; 27, 1959. * 5 Annals Cape Observatory, XVII, 1954; 35 7 * XVIII, 1954; XIX, 1958; XX, 1958. * 6 Boss, B. 1937, General Catalogue of 211 6 * 33 342 Stars for Epoch 1950 (Carnegie * Institution of Washington, Washington, D.C.) * 7 Trans. Astron. Obs. Yale University, 185 7 * 12, 1940; 13, 1943; 14, 1943; 16, 1945; * 17, 1945; 18, 1947; 19, 1948; 20, 1949; * 21, 1950; 22, 1950. * 8 Reiz, A., 1957, Ann. Lund Obs. 14,1 3 6 * 9 Morgan, H.R., 1933, Publ. U.S. Naval Obs. 1 6 * 2nd Ser. XIII, 163. * --------------------------------------------------------------------- c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'refs.dat' ! References integer*4 nr__1 parameter (nr__1=74) ! Number of records character*80 ar__1 ! Full-size record integer*4 RefNo ! [1,60] Reference number, repeated when * several lines character*76 Text ! Text of reference C============================================================================= C Loading file 'catalog.dat' ! The catalogue C Format for file interpretation 1 format( + I4,A1,1X,I2,1X,I5,1X,I6,A9,1X,I5,1X,I5,1X,I2,I3,1X,A1,I2,I2, + F6.1,F5.2,A1,1X,A12,1X,I3,A1,F4.2,1X,I3,A1,1X,I2,2X,I2,2X,I2, + 2X,I2,1X,I3,1X,I3,1X,I3,1X,I3,1X,I2,1X,I3,1X,I4,1X,I4,1X,I4, + 1X,I4,1X,I4,1X,I4,1X,I3,1X,I4,I3,1X,A5) C Effective file loading open(unit=1,status='old',file= +'catalog.dat') write(6,*) '....Loading file: catalog.dat' do i__=1,1440 read(1,'(A179)')ar__ read(ar__,1) + Num,pmPubl,r_RVel,GCRV,HD,Other,GLON,GLAT,RAh,RAdm,DE_,DEd, + DEm,RVel,Vmag,n_Vmag,SpType,AbsMag,n_AbsMag,Av,m_M,n_m_M, + r_Vmag,r_Sp,r_AbsMag,r_Av,pmRA,pmDE,pmGLON,pmGLAT,r,R_1,Tl,Tb, + xdot,ydot,zdot,cirVel,e_cirVel,Pi,e_Pi,pmRef if(ar__(7:8) .EQ. '') r_RVel = iNULL__ if(ar__(10:14) .EQ. '') GCRV = iNULL__ if(ar__(16:21) .EQ. '') HD = iNULL__ if(ar__(61:65) .EQ. '') Vmag = rNULL__ if(ar__(95:96) .EQ. '') r_Vmag = iNULL__ if(ar__(103:104) .EQ. '') r_AbsMag = iNULL__ if(ar__(107:108) .EQ. '') r_Av = iNULL__ if(ar__(110:112) .EQ. '') pmRA = iNULL__ if(ar__(114:116) .EQ. '') pmDE = iNULL__ if(ar__(118:120) .EQ. '') pmGLON = iNULL__ if(ar__(122:124) .EQ. '') pmGLAT = iNULL__ if(ar__(126:127) .EQ. '') r = iNULL__ if(ar__(129:131) .EQ. '') R_1 = iNULL__ if(ar__(133:136) .EQ. '') Tl = iNULL__ if(ar__(138:141) .EQ. '') Tb = iNULL__ if(ar__(143:146) .EQ. '') xdot = iNULL__ if(ar__(148:151) .EQ. '') ydot = iNULL__ if(ar__(153:156) .EQ. '') zdot = iNULL__ if(ar__(158:161) .EQ. '') cirVel = iNULL__ if(ar__(163:165) .EQ. '') e_cirVel = iNULL__ if(ar__(167:170) .EQ. '') Pi = iNULL__ if(ar__(171:173) .EQ. '') e_Pi = iNULL__ 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(DEd .GE. 0) DEdeg=DEd if(DEm .GE. 0) DEdeg=DEdeg+DEm/60. if(DE_.EQ.'-'.AND.DEdeg.GE.0) DEdeg=-DEdeg c ..............Just test output........... write(6,1) + Num,pmPubl,r_RVel,GCRV,HD,Other,GLON,GLAT,RAh,RAdm,DE_,DEd, + DEm,RVel,Vmag,n_Vmag,SpType,AbsMag,n_AbsMag,Av,m_M,n_m_M, + r_Vmag,r_Sp,r_AbsMag,r_Av,pmRA,pmDE,pmGLON,pmGLAT,r,R_1,Tl,Tb, + xdot,ydot,zdot,cirVel,e_cirVel,Pi,e_Pi,pmRef write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'refs.dat' ! References C Format for file interpretation 2 format(I2,2X,A76) C Effective file loading open(unit=1,status='old',file= +'refs.dat') write(6,*) '....Loading file: refs.dat' do i__=1,74 read(1,'(A80)')ar__1 read(ar__1,2)RefNo,Text c ..............Just test output........... write(6,2)RefNo,Text c .......End.of.Just test output........... end do close(1) C============================================================================= stop end