Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/521/A4 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/A+A/521/A4 CPMDS catalogue (Gavras+, 2010) *================================================================================ *The CPMDS catalogue of common-proper-motion double stars in the Bordeaux Carte *du Ciel zone. * Gavras P., Sinachopoulos D., Le Campion J.F., Ducourant C. * <Astron. Astrophys. 521, A4 (2010)> * =2010A&A...521A...4G C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table2.dat' ! The CPMDS catalogue. Common proper motion double stars with angular separation smaller than 2arcmin integer*4 nr__ parameter (nr__=2572) ! Number of records character*184 ar__ ! Full-size record C J2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg ! (deg) Right Ascension J2000 real*8 DEdeg ! (deg) Declination J2000 C ---------------------------------- ! (position vector(s) in degrees) integer*4 RAh ! (h) Primary right ascension (hours) (J2000) integer*4 RAm ! (min) Primary right ascension (minutes) (J2000) real*4 RAs ! (s) Primary right ascension (seconds) (J2000) character*1 DE_ ! Primary declination (sign) (J2000) integer*4 DEd ! (deg) Primary declination (degrees) (J2000) integer*4 DEm ! (arcmin) Primary declination (minutes) (J2000) real*4 DEs ! (arcsec) Primary declination (seconds) (J2000) integer*4 ID1 ! PM2000 (Cat. I/300) ID of the primary integer*4 ID2 ! PM2000 (Cat. I/300) ID of the secondary real*4 rho ! (arcsec) Angular separation real*4 e_rho ! (arcsec) Error of angular separation real*4 theta ! (deg) Position angle of components real*4 e_theta ! (deg) Error of position angle real*4 mag1 ! (mag) PM2000 V magnitude of the primary component real*4 mag2 ! (mag) PM2000 V magnitude of the secondary component real*4 pmRA1 ! (mas/yr) Proper motion of primary in RA(*cos(DE)) real*4 pmDE1 ! (mas/yr) Proper motion of primary in DE real*4 e_pmRA1 ! (mas/yr) Uncertainty on pmRA1 (*cos(DE)) real*4 e_pmDE1 ! (mas/yr) Uncertainty on pmDEp integer*4 o_pmRA1 ! Number of observations used in pmRA1 integer*4 o_pmDE1 ! Number of observations used in pmDE1 real*4 pmRA2 ! (mas/yr) Proper motion of secondary in RA(*cos(DE)) real*4 pmDE2 ! (mas/yr) Proper motion of secondary in DE real*4 e_pmRA2 ! (mas/yr) Uncertainty on the pmRA2 (*cos(DE)) real*4 e_pmDE2 ! (mas/yr) Uncertainty on the pmDES integer*4 o_pmRA2 ! Number of observations used in pmRA2 integer*4 o_pmDE2 ! Number of observations used in pmDE2 real*8 Epoch ! Epoch of observations character*3 Cl ! Class of the pair based of an H-R diagram real*4 beta ! Probability of commiting type II error c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table3.dat' ! The annex of CPMDS. Cpm double stars with angular separation between 2 and 5arcmin integer*4 nr__1 parameter (nr__1=259) ! Number of records character*184 ar__1 ! Full-size record C J2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg_1 ! (deg) Right Ascension J2000 real*8 DEdeg_1 ! (deg) Declination J2000 C ---------------------------------- ! (position vector(s) in degrees) integer*4 RAh_1 ! (h) Primary right ascension (hours) (J2000) integer*4 RAm_1 ! (min) Primary right ascension (minutes) (J2000) real*4 RAs_1 ! (s) Primary right ascension (seconds) (J2000) character*1 DE__1 ! Primary declination (sign) (J2000) integer*4 DEd_1 ! (deg) Primary declination (degrees) (J2000) integer*4 DEm_1 ! (arcmin) Primary declination (minutes) (J2000) real*4 DEs_1 ! (arcsec) Primary declination (seconds) (J2000) integer*4 ID1_1 ! PM2000 (Cat. I/300) ID of the primary integer*4 ID2_1 ! PM2000 (Cat. I/300) ID of the secondary real*4 rho_1 ! (arcsec) Angular separation real*4 e_rho_1 ! (arcsec) Error of angular separation real*4 theta_1 ! (deg) Position angle of components real*4 e_theta_1 ! (deg) Error of position angle real*4 mag1_1 ! (mag) PM2000 V magnitude of the primary component real*4 mag2_1 ! (mag) PM2000 V magnitude of the secondary component real*4 pmRA1_1 ! (mas/yr) Proper motion of primary in RA(*cos(DE)) real*4 pmDE1_1 ! (mas/yr) Proper motion of primary in DE real*4 e_pmRA1_1 ! (mas/yr) Uncertainty on pmRA1 (*cos(DE)) real*4 e_pmDE1_1 ! (mas/yr) Uncertainty on pmDEp integer*4 o_pmRA1_1 ! Number of observations used in pmRA1 integer*4 o_pmDE1_1 ! Number of observations used in pmDE1 real*4 pmRA2_1 ! (mas/yr) Proper motion of secondary in RA(*cos(DE)) real*4 pmDE2_1 ! (mas/yr) Proper motion of secondary in DE real*4 e_pmRA2_1 ! (mas/yr) Uncertainty on the pmRA2 (*cos(DE)) real*4 e_pmDE2_1 ! (mas/yr) Uncertainty on the pmDES integer*4 o_pmRA2_1 ! Number of observations used in pmRA2 integer*4 o_pmDE2_1 ! Number of observations used in pmDE2 real*8 Epoch_1 ! Epoch of observations character*3 Cl_1 ! Class of the pair based of an H-R diagram real*4 beta_1 ! Probability of commiting type II error c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table4.dat' ! Remeasurement of 926 WDS double stars integer*4 nr__2 parameter (nr__2=926) ! Number of records character*97 ar__2 ! Full-size record C J2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg_2 ! (deg) Right Ascension J2000 real*8 DEdeg_2 ! (deg) Declination J2000 C ---------------------------------- ! (position vector(s) in degrees) integer*4 RAh_2 ! (h) Right ascension (hours) (J2000) integer*4 RAm_2 ! (min) Right ascension (minutes) (J2000) real*4 RAs_2 ! (s) Right ascension (seconds) (J2000) character*1 DE__2 ! Declination (sign) (J2000) integer*4 DEd_2 ! (deg) Declination (degrees) (J2000) integer*4 DEm_2 ! (arcmin) Declination (minutes) (J2000) integer*4 DEs_2 ! (arcsec) Declination (seconds) (J2000) character*10 WDS ! WDS ID of the pair character*5 m_WDS ! Multiplicty index on WDS real*8 rho_2 ! (arcsec) Angular separation real*4 e_rho_2 ! (arcsec) Error of angular separation real*4 theta_2 ! (deg) Position angle of components real*4 e_theta_2 ! (deg) Error of position angle real*4 mag1_2 ! (mag) PM2000 V magnitude of the primary component real*4 mag2_2 ! (mag) PM2000 V magnitude of the secondary component real*4 Epoch_2 ! Epoch of observations integer*4 Nobs ! Number of observations used C============================================================================= C Loading file 'table2.dat' ! The CPMDS catalogue. Common proper motion double * stars with angular separation smaller than 2arcmin C Format for file interpretation 1 format( + I2,1X,I2,1X,F6.3,2X,A1,I2,1X,I2,1X,F5.2,2X,I7,1X,I7,4X,F6.2, + 2X,F4.2,2X,F6.2,2X,F4.2,3X,F6.3,1X,F6.3,2X,F6.1,2X,F6.1,1X, + F4.1,1X,F4.1,2X,I3,2X,I3,2X,F6.1,2X,F6.1,1X,F4.1,1X,F4.1,2X, + I3,2X,I3,4X,F7.2,1X,A3,4X,F4.2) C Effective file loading open(unit=1,status='old',file= +'table2.dat') write(6,*) '....Loading file: table2.dat' do i__=1,2572 read(1,'(A184)')ar__ read(ar__,1) + RAh,RAm,RAs,DE_,DEd,DEm,DEs,ID1,ID2,rho,e_rho,theta,e_theta, + mag1,mag2,pmRA1,pmDE1,e_pmRA1,e_pmDE1,o_pmRA1,o_pmDE1,pmRA2, + pmDE2,e_pmRA2,e_pmDE2,o_pmRA2,o_pmDE2,Epoch,Cl,beta 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. if(DE_.EQ.'-'.AND.DEdeg.GE.0) DEdeg=-DEdeg c ..............Just test output........... write(6,1) + RAh,RAm,RAs,DE_,DEd,DEm,DEs,ID1,ID2,rho,e_rho,theta,e_theta, + mag1,mag2,pmRA1,pmDE1,e_pmRA1,e_pmDE1,o_pmRA1,o_pmDE1,pmRA2, + pmDE2,e_pmRA2,e_pmDE2,o_pmRA2,o_pmDE2,Epoch,Cl,beta write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table3.dat' ! The annex of CPMDS. Cpm double stars with angular * separation between 2 and 5arcmin C Format for file interpretation 2 format( + I2,1X,I2,1X,F6.3,2X,A1,I2,1X,I2,1X,F5.2,2X,I7,1X,I7,4X,F6.2, + 2X,F4.2,2X,F6.2,2X,F4.2,3X,F6.3,1X,F6.3,2X,F6.1,2X,F6.1,1X, + F4.1,1X,F4.1,2X,I3,2X,I3,2X,F6.1,2X,F6.1,1X,F4.1,1X,F4.1,2X, + I3,2X,I3,4X,F7.2,1X,A3,4X,F4.2) C Effective file loading open(unit=1,status='old',file= +'table3.dat') write(6,*) '....Loading file: table3.dat' do i__=1,259 read(1,'(A184)')ar__1 read(ar__1,2) + RAh_1,RAm_1,RAs_1,DE__1,DEd_1,DEm_1,DEs_1,ID1_1,ID2_1,rho_1, + e_rho_1,theta_1,e_theta_1,mag1_1,mag2_1,pmRA1_1,pmDE1_1, + e_pmRA1_1,e_pmDE1_1,o_pmRA1_1,o_pmDE1_1,pmRA2_1,pmDE2_1, + e_pmRA2_1,e_pmDE2_1,o_pmRA2_1,o_pmDE2_1,Epoch_1,Cl_1,beta_1 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. if(DE__1.EQ.'-'.AND.DEdeg_1.GE.0) DEdeg_1=-DEdeg_1 c ..............Just test output........... write(6,2) + RAh_1,RAm_1,RAs_1,DE__1,DEd_1,DEm_1,DEs_1,ID1_1,ID2_1,rho_1, + e_rho_1,theta_1,e_theta_1,mag1_1,mag2_1,pmRA1_1,pmDE1_1, + e_pmRA1_1,e_pmDE1_1,o_pmRA1_1,o_pmDE1_1,pmRA2_1,pmDE2_1, + e_pmRA2_1,e_pmDE2_1,o_pmRA2_1,o_pmDE2_1,Epoch_1,Cl_1,beta_1 write(6,'(6H Pos: 2F8.4)') RAdeg_1,DEdeg_1 c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table4.dat' ! Remeasurement of 926 WDS double stars C Format for file interpretation 3 format( + I2,1X,I2,1X,F4.1,2X,A1,I2,1X,I2,1X,I2,4X,A10,A5,1X,F7.3,1X, + F5.3,5X,F6.2,1X,F4.2,4X,F4.1,1X,F4.1,3X,F6.1,3X,I2) C Effective file loading open(unit=1,status='old',file= +'table4.dat') write(6,*) '....Loading file: table4.dat' do i__=1,926 read(1,'(A97)')ar__2 read(ar__2,3) + RAh_2,RAm_2,RAs_2,DE__2,DEd_2,DEm_2,DEs_2,WDS,m_WDS,rho_2, + e_rho_2,theta_2,e_theta_2,mag1_2,mag2_2,Epoch_2,Nobs RAdeg_2 = rNULL__ DEdeg_2 = rNULL__ c Derive coordinates RAdeg_2 and DEdeg_2 from input data c (RAdeg_2 and DEdeg_2 are set to rNULL__ when unknown) if(RAh_2 .GT. -180) RAdeg_2=RAh_2*15. if(RAm_2 .GT. -180) RAdeg_2=RAdeg_2+RAm_2/4. if(RAs_2 .GT. -180) RAdeg_2=RAdeg_2+RAs_2/240. if(DEd_2 .GE. 0) DEdeg_2=DEd_2 if(DEm_2 .GE. 0) DEdeg_2=DEdeg_2+DEm_2/60. if(DEs_2 .GE. 0) DEdeg_2=DEdeg_2+DEs_2/3600. if(DE__2.EQ.'-'.AND.DEdeg_2.GE.0) DEdeg_2=-DEdeg_2 c ..............Just test output........... write(6,3) + RAh_2,RAm_2,RAs_2,DE__2,DEd_2,DEm_2,DEs_2,WDS,m_WDS,rho_2, + e_rho_2,theta_2,e_theta_2,mag1_2,mag2_2,Epoch_2,Nobs write(6,'(6H Pos: 2F8.4)') RAdeg_2,DEdeg_2 c .......End.of.Just test output........... end do close(1) C============================================================================= stop end