Conversion of standardized ReadMe file for
file /./ftp/cats/I/274 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-28 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. I/274 CCDM (Catalog of Components of Double & Multiple stars) (Dommanget+ 2002) *================================================================================ *Catalogue of the Components of Double and Multiple Stars (CCDM) * Dommanget J., Nys O. * <Observations et Travaux 54, 5 (2002)> C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'ccdm.dat' ! The Catalogue of Components of Double and Multiple integer*4 nr__ parameter (nr__=105838) ! Number of records character*132 ar__ ! Full-size record character*10 CCDM ! (Catalogue of the Components of the * Double and Multiple stars) identifier (1) character*1 rComp ! [B-Z?] Reference component (blank if A) (6) character*1 Comp ! [A-Z?] Concerned component (6) character*1 Note1 ! [*&] *=orbit in Dommanget's personal catalog * &=orbit WDS 1994 (2) character*1 Note2 ! [@%] @ = astrometric binary * % = astrometric binary from Hipparcos character*7 Disc ! Name of the pair (Discoverer and Number) (3) real*8 dRAs ! (s) ? Remainder of RA in second of time (J2000) real*8 dDEs ! (arcsec) ? Remainder of DE in arcsecond (J2000) integer*4 r_dRAs ! ? Source code for positions, in refpos.dat integer*4 Year ! (yr) ? Year of measured relative position character*3 theta ! (deg) Position angle (degrees) (4) real*4 rho ! (arcsec) ? angular separation of Comp along theta integer*4 Obs ! ? for component A: number of components; * other component: number of measurements real*4 Vmag ! (mag) ? magnitude character*2 Sp ! Spectral type character*1 pmNote ! [*@$#] Origin of the proper motion (7) integer*4 pmRA ! (mas/yr) ? annual proper motion in 0"001 integer*4 pmDE ! (mas/yr) ? annual proper motion in 0"001 character*10 DM ! First identification = DM * (Harvard system) (5) character*10 Name2 ! Second identification (5) character*6 HD ! HD identifier character*2 m_HD ! [/0-9 ?*] second HD (Example: 131843/4) (8) character*6 ADS_BDS ! ADS (A) or BDS identifier (B) character*1 m_ADS_BDS ! [aN] suffix (a) to an inserted ADS identifier, * or a note (N) exists in the Index. character*1 n_IDS ! [*W] The * means that the Index identifier was * built for a new component or system; * the W indicates a WDS (1994) identifier character*11 IDS ! Original Index (1976.5) or WDS (1994) * identifier, based on equinox 1900 integer*4 HIC ! ? Hipparcos Input Catalogue (Turon et al., * Cat. <I/196>) identifier (also HIP <I/239>) *Note (1): The CCDM identifier is made with RA(2000) limited to 0.1 minute * of time (HHMMm) and Dec(2000) limited to 1 minute of a degree (+DDMM). * Full details about the construction of the CCDM identifier are given * in the publication. *Note (2): The personal catalogue of J.Dommanget (1982; partially updated * to 1994) to which were added the Hipparcos stars in the * Information Circulars of IAU Commission 26. *Note (3): In addition to the discoverer's names listed in the WDS * (see e.g. files refs.dat in Cat. <I/237>), the list of the new names * are in the "Description" section above *Note (4): The following letters are sometimes used to indicate an * approximate location of the secondary component: * 'N' (to the North) * 'NF'(to the North and following) (first quadrant) * 'F' (following) * 'SF'(to the South and following) (second quadrant) * 'S' (to the South) * 'SP'(to the South and preceding) (third quadrant) * 'P' (preceding) * 'NP'(to the North and preceding) (fourth quadrant) *Note (5): a suffix code indicates the catalogue, as: * .0 = BD .6 = AGK2/3 * .2 = CD .8 = SAO * .4 = CPD * The suffixes "a" and "b" following some DM designations * appear in place of the dot. *Note (6): * In one record (CCDM 07366-1428) the components are marked by ?? *Note (7): the origin of the proper motions is flagged by: * *: not the pm from the Index; * @: pm from the HIC (Hipparcos Input Catalog <I/196>); * $: pm = relative pm(B/A); * #: pm unknown, but much different from pm of the other components *Note (8): the question mark (?) indicates a doubtful HD identifier, * and the asterisk (*) indicates a possible inversion of HD identifiers. c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'refpos.dat' ! Reference for positions and proper motions integer*4 nr__1 parameter (nr__1=37) ! Number of records character*88 ar__1 ! Full-size record integer*4 RefNum ! Reference number character*39 posRef ! Reference for astrometric position character*10 Epoch ! Epoch of position (1) character*31 pmRef ! Reference for proper motions. *Note (1): the mean epoch was retained for epoch ranges followed * by an asterisk (*), e.g. 1889-1898* C============================================================================= C Loading file 'ccdm.dat' ! The Catalogue of Components of Double and Multiple C Format for file interpretation 1 format( + 1X,A10,A1,A1,A1,A1,A7,1X,F7.2,F7.1,1X,I2,1X,I4,1X,A3,F6.1,1X, + I2,1X,F4.1,1X,A2,A1,I5,I5,A10,A10,1X,A6,A2,A6,A1,A1,A11,1X,I6) C Effective file loading open(unit=1,status='old',file= +'ccdm.dat') write(6,*) '....Loading file: ccdm.dat' do i__=1,105838 read(1,'(A132)')ar__ read(ar__,1) + CCDM,rComp,Comp,Note1,Note2,Disc,dRAs,dDEs,r_dRAs,Year,theta, + rho,Obs,Vmag,Sp,pmNote,pmRA,pmDE,DM,Name2,HD,m_HD,ADS_BDS, + m_ADS_BDS,n_IDS,IDS,HIC if(ar__(24:30) .EQ. '') dRAs = rNULL__ if(ar__(31:37) .EQ. '') dDEs = rNULL__ if(ar__(39:40) .EQ. '') r_dRAs = iNULL__ if(ar__(42:45) .EQ. '') Year = iNULL__ if(ar__(50:55) .EQ. '') rho = rNULL__ if(ar__(57:58) .EQ. '') Obs = iNULL__ if(ar__(60:63) .EQ. '') Vmag = rNULL__ if(ar__(68:72) .EQ. '') pmRA = iNULL__ if(ar__(73:77) .EQ. '') pmDE = iNULL__ if(ar__(127:132) .EQ. '') HIC = iNULL__ c ..............Just test output........... write(6,1) + CCDM,rComp,Comp,Note1,Note2,Disc,dRAs,dDEs,r_dRAs,Year,theta, + rho,Obs,Vmag,Sp,pmNote,pmRA,pmDE,DM,Name2,HD,m_HD,ADS_BDS, + m_ADS_BDS,n_IDS,IDS,HIC c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'refpos.dat' ! Reference for positions and proper motions C Format for file interpretation 2 format(I2,2X,A39,1X,A10,3X,A31) C Effective file loading open(unit=1,status='old',file= +'refpos.dat') write(6,*) '....Loading file: refpos.dat' do i__=1,37 read(1,'(A88)')ar__1 read(ar__1,2)RefNum,posRef,Epoch,pmRef c ..............Just test output........... write(6,2)RefNum,posRef,Epoch,pmRef c .......End.of.Just test output........... end do close(1) C============================================================================= stop end