Conversion of standardized ReadMe file for
file /./ftp/cats/I/300 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-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. I/300 PM2000 Bordeaux Proper Motion catalogue (Ducourant+, 2006) *================================================================================ *The PM2000 Bordeaux Proper Motion catalogue (+11{deg}<{delta}<+18{deg}) * Ducourant C., Le Campion J.F., Rapaport M., Camargo J.I.B., Soubiran C., * Perie J.P., Teixeira R., Daigne G., Triaud A., Requieme Y., Fresneau A., * Colin J. * <Astron. Astrophys. 448, 1235 (2006)> * =2006A&A...448.1235D (SIMBAD/NED BibCode) C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'pm2000.dat' ! PM2000 catalogue integer*4 nr__ parameter (nr__=2670974) ! Number of records character*302 ar__ ! Full-size record C J2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg (nr__) ! (deg) Right Ascension J2000 real*8 DEdeg (nr__) ! (deg) Declination J2000 C ---------------------------------- ! (position vector(s) in degrees) character*1 n_PM2000 (nr__) ! [*] * for objects whose proper motion is * based on a Carte du ciel measurement integer*4 PM2000 (nr__) ! [1,2670974]+ PM2000 identificator integer*4 RAh (nr__) ! (h) Mean Right Ascension J2000 at epoch EpRA integer*4 RAm (nr__) ! (min) Mean Right Ascension J2000 at epoch EpRA real*8 RAs (nr__) ! (s) Mean Right Ascension J2000 at epoch EpRA character*1 DE_ (nr__) ! Mean Declination J2000 sign at epoch EpDE integer*4 DEd (nr__) ! (deg) Mean Declination J2000 at epoch EpDE integer*4 DEm (nr__) ! (arcmin) Mean Declination J2000 at epoch EpDE real*4 DEs (nr__) ! (arcsec) Mean Declination J2000 at epoch EpDE real*8 e_RAs (nr__) ! (arcsec) rms uncertainty on RA at epoch EpRA*cos(Dec) real*8 e_DEs (nr__) ! (arcsec) rms uncertainty on DE at epoch EpDE real*8 pmRA (nr__) ! (mas/yr) Proper motion in RA (*cos(Dec)) real*8 pmDE (nr__) ! (mas/yr) Proper motion in Dec real*8 e_pmRA (nr__) ! (mas/yr) rms uncertainty on pmRA (*cos(Dec)) real*8 e_pmDE (nr__) ! (mas/yr) rms uncertainty on pmDE real*4 Vmag (nr__) ! (mag) Apparent mag in Meridian band (1) real*4 e_Vmag (nr__) ! (mag) rms uncertainty on Vmag real*8 EpRA (nr__) ! (yr) Central epoch for RA real*8 EpDE (nr__) ! (yr) Central epoch for DE integer*4 NmRA (nr__) ! Nb of meridian observations in RA solution integer*4 NmDE (nr__) ! Nb of meridian observations in DE solution integer*4 NYRA (nr__) ! Nb of YS observations used in RA solution integer*4 NYDE (nr__) ! Nb of YS observations used in DE solution integer*4 NURA (nr__) ! Nb of USNO-A2.0 obs. in RA solution integer*4 NUDE (nr__) ! Nb of USNO-A2.0 obs. in DE solution integer*4 NCCRA (nr__) ! Nb of Carte du Ciel obs. in RA solution integer*4 NCCDE (nr__) ! Nb of Carte du Ciel obs. in DE solution integer*4 NACRA (nr__) ! Nb of AC2000.2 obs.in RA solution integer*4 NACDE (nr__) ! Nb of AC2000.2 obs. in DE solution real*8 Ep1 (nr__) ! (yr) Most ancien epoch in the data real*4 V_Ks (nr__) ! (mag) ?=99.999 V-Ks colour index (from 2MASS) (2) real*8 gRA (nr__) ! Goodness of fit in RA (3) real*4 gDE (nr__) ! Goodness of fit in DE (3) character*17 v2MASS (nr__) ! 2MASS Identificator real*4 Jmag (nr__) ! (mag) ? 2MASS J apparent magnitude real*4 e_Jmag (nr__) ! (mag) ? 2MASS J total magnitude uncertainty real*4 Hmag (nr__) ! (mag) ? 2MASS H apparent magnitude real*4 e_Hmag (nr__) ! (mag) ? 2MASS H total magnitude uncertainty real*4 Ksmag (nr__) ! (mag) ? 2MASS Ks apparent magnitude real*4 e_Ksmag (nr__) ! (mag) ? 2MASS Ks total magnitude uncertainty integer*4 TYC1 (nr__) ! ? TYC1 Identificator for Tycho stars integer*4 TYC2 (nr__) ! ? TYC2 Identificator for Tycho stars integer*4 TYC3 (nr__) ! ? TYC3 Identificator for Tycho stars real*4 Btmag (nr__) ! (mag) ? Tycho-2 Bt apparent magnitude real*4 e_Btmag (nr__) ! (mag) ? Tycho-2 standard error on Btmag real*4 Vtmag (nr__) ! (mag) ? Tycho-2 Vt apparent magnitude real*4 e_Vtmag (nr__) ! (mag) ? Tycho-2 standard error on Vtmag character*1 f_TYC1 (nr__) ! [T] Flag for TYCHO1 stars *Note (1): The bandpass is defined by two combined filters (GC495 and BG38) as * the wavelength range 520-680nm; This is different from Tycho Vt. *Note (2): V-Ks = 99.999 when no K measurement was available in 2MASS. *Note (3): This goodness of fit is the ratio of the scatter-based and the * model-based error. C============================================================================= C Loading file 'pm2000.dat' ! PM2000 catalogue C Format for file interpretation 1 format( + A1,I7,1X,I2,1X,I2,1X,F7.4,1X,A1,I2,1X,I2,1X,F6.3,F8.3,F8.3, + F9.1,F9.1,F8.1,F8.1,1X,F6.3,2X,F6.3,2X,F7.2,2X,F7.2,1X,I3,1X, + I3,2X,I2,1X,I2,2X,I2,1X,I2,2X,I2,1X,I2,2X,I2,1X,I2,7X,F7.2,1X, + F6.3,1X,F7.3,2X,F6.3,2X,A17,2X,F6.3,1X,F6.3,3X,F6.3,1X,F6.3, + 3X,F6.3,1X,F6.3,2X,I4,1X,I5,1X,I1,2X,F6.3,F6.3,1X,F6.3,F6.3, + 2X,A1) C Effective file loading open(unit=1,status='old',file= +'pm2000.dat') write(6,*) '....Loading file: pm2000.dat' do i__=1,2670974 read(1,'(A302)')ar__ read(ar__,1) + n_PM2000(i__),PM2000(i__),RAh(i__),RAm(i__),RAs(i__),DE_(i__), + DEd(i__),DEm(i__),DEs(i__),e_RAs(i__),e_DEs(i__),pmRA(i__), + pmDE(i__),e_pmRA(i__),e_pmDE(i__),Vmag(i__),e_Vmag(i__), + EpRA(i__),EpDE(i__),NmRA(i__),NmDE(i__),NYRA(i__),NYDE(i__), + NURA(i__),NUDE(i__),NCCRA(i__),NCCDE(i__),NACRA(i__), + NACDE(i__),Ep1(i__),V_Ks(i__),gRA(i__),gDE(i__),v2MASS(i__), + Jmag(i__),e_Jmag(i__),Hmag(i__),e_Hmag(i__),Ksmag(i__), + e_Ksmag(i__),TYC1(i__),TYC2(i__),TYC3(i__),Btmag(i__), + e_Btmag(i__),Vtmag(i__),e_Vtmag(i__),f_TYC1(i__) if(ar__(214:219) .EQ. '') Jmag(i__) = rNULL__ if(ar__(221:226) .EQ. '') e_Jmag(i__) = rNULL__ if(ar__(230:235) .EQ. '') Hmag(i__) = rNULL__ if(ar__(237:242) .EQ. '') e_Hmag(i__) = rNULL__ if(ar__(246:251) .EQ. '') Ksmag(i__) = rNULL__ if(ar__(253:258) .EQ. '') e_Ksmag(i__) = rNULL__ if(ar__(261:264) .EQ. '') TYC1(i__) = iNULL__ if(ar__(266:270) .EQ. '') TYC2(i__) = iNULL__ if(ar__(272:272) .EQ. '') TYC3(i__) = iNULL__ if(ar__(275:280) .EQ. '') Btmag(i__) = rNULL__ if(ar__(281:286) .EQ. '') e_Btmag(i__) = rNULL__ if(ar__(288:293) .EQ. '') Vtmag(i__) = rNULL__ if(ar__(294:299) .EQ. '') e_Vtmag(i__) = rNULL__ RAdeg(i__) = rNULL__ DEdeg(i__) = rNULL__ c Derive coordinates RAdeg and DEdeg from input data c (RAdeg and DEdeg are set to rNULL__ when unknown) if(RAh(i__) .GT. -180) RAdeg(i__)=RAh(i__)*15. if(RAm(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAm(i__)/4. if(RAs(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAs(i__)/240. if(DEd(i__) .GE. 0) DEdeg(i__)=DEd(i__) if(DEm(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEm(i__)/60. if(DEs(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEs(i__)/3600. if(DE_(i__).EQ.'-'.AND.DEdeg(i__).GE.0) DEdeg(i__)=-DEdeg(i__) c ..............Just test output........... write(6,1) + n_PM2000(i__),PM2000(i__),RAh(i__),RAm(i__),RAs(i__),DE_(i__), + DEd(i__),DEm(i__),DEs(i__),e_RAs(i__),e_DEs(i__),pmRA(i__), + pmDE(i__),e_pmRA(i__),e_pmDE(i__),Vmag(i__),e_Vmag(i__), + EpRA(i__),EpDE(i__),NmRA(i__),NmDE(i__),NYRA(i__),NYDE(i__), + NURA(i__),NUDE(i__),NCCRA(i__),NCCDE(i__),NACRA(i__), + NACDE(i__),Ep1(i__),V_Ks(i__),gRA(i__),gDE(i__),v2MASS(i__), + Jmag(i__),e_Jmag(i__),Hmag(i__),e_Hmag(i__),Ksmag(i__), + e_Ksmag(i__),TYC1(i__),TYC2(i__),TYC3(i__),Btmag(i__), + e_Btmag(i__),Vtmag(i__),e_Vtmag(i__),f_TYC1(i__) write(6,'(6H Pos: 2F8.4)') RAdeg(i__),DEdeg(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end