Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/416/811 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-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. J/A+A/416/811 V and R CCD photometry of visual binaries (Abad+, 2004) *================================================================================ *Reduction of CCD Observations of Visual Binaries, using the "Tepui" *Function as PSF. * Abad C., Docobo J.A., Lanchares V., Lahulla J.F., Abelleira P., * Blanco J., Alvarez C. * <Astron. Astrophys. 416, 811 (2004)> * =2004A&A...416..811A C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table1.dat' ! Main catalogue integer*4 nr__ parameter (nr__=307) ! Number of records character*80 ar__ ! Full-size record character*10 WDS (nr__) ! WDS designation, JHHMMm+DDMM, based on J2000 * position (Mason et al., 2001, Cat. <I/281>) character*13 Name (nr__) ! Binary name, (Mason et al., 2001, Cat. <I/281>) integer*4 ADS (nr__) ! ADS number (Aiken, 1932ADS...C......0A) real*4 theta (nr__) ! (deg) Position angle real*4 e_theta (nr__) ! (deg) rms uncertainty on theta real*4 rho (nr__) ! (arcsec) Separation angle real*4 e_rho (nr__) ! (arcsec) rms uncertainty on rho real*4 Dmag (nr__) ! (mag) ? Difference of magnitude of the components * in R or V band real*4 e_Dmag (nr__) ! (mag) ? rms uncertainty on Dmag character*1 Band (nr__) ! [RV] Filter used integer*4 o_Dmag (nr__) ! Number of observation c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table2.dat' ! Supplement catalogue integer*4 nr__1 parameter (nr__1=18) ! Number of records character*80 ar__1 ! Full-size record C J2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg (nr__1) ! (deg) Right Ascension J2000 real*8 DEdeg (nr__1) ! (deg) Declination J2000 C ---------------------------------- ! (position vector(s) in degrees) integer*4 RAh (nr__1) ! (h) Right ascension (J2000) (1) integer*4 RAm (nr__1) ! (min) Right ascension (J2000) (1) real*4 RAs (nr__1) ! (s) Right ascension (J2000) (1) character*1 DE_ (nr__1) ! Declination sign (J2000) (1) integer*4 DEd (nr__1) ! (deg) Declination (J2000) (1) integer*4 DEm (nr__1) ! (arcmin) Declination (J2000) (1) real*4 DEs (nr__1) ! (arcsec) Declination (J2000) (1) real*4 Rmag (nr__1) ! (mag) ? Magnitude of the A component (1) real*4 theta_1 (nr__1) ! (deg) Position angle real*4 e_theta_1 (nr__1) ! (deg) rms uncertainty on theta real*4 rho_1 (nr__1) ! (arcsec) Separation angle real*4 e_rho_1 (nr__1) ! (arcsec) rms uncertainty on rho real*4 Dmag_1 (nr__1) ! (mag) ? Difference magnitude of the components * in R or V band real*4 e_Dmag_1 (nr__1) ! (mag) ? rms uncertainty on Dmag character*1 Band_1 (nr__1) ! [RV] Filter used integer*4 o_Dmag_1 (nr__1) ! Number of observation *Note (1): From USNO-A2.0 (Cat. <I/252>) catalogue C============================================================================= C Loading file 'table1.dat' ! Main catalogue C Format for file interpretation 1 format( + A10,3X,A13,3X,I5,3X,F5.1,2X,F4.2,2X,F5.2,2X,F5.3,2X,F5.2,2X, + F4.2,2X,A1,1X,I1) C Effective file loading open(unit=1,status='old',file= +'table1.dat') write(6,*) '....Loading file: table1.dat' do i__=1,307 read(1,'(A80)')ar__ read(ar__,1) + WDS(i__),Name(i__),ADS(i__),theta(i__),e_theta(i__),rho(i__), + e_rho(i__),Dmag(i__),e_Dmag(i__),Band(i__),o_Dmag(i__) if(ar__(65:69) .EQ. '') Dmag(i__) = rNULL__ if(ar__(72:75) .EQ. '') e_Dmag(i__) = rNULL__ c ..............Just test output........... write(6,1) + WDS(i__),Name(i__),ADS(i__),theta(i__),e_theta(i__),rho(i__), + e_rho(i__),Dmag(i__),e_Dmag(i__),Band(i__),o_Dmag(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table2.dat' ! Supplement catalogue C Format for file interpretation 2 format( + I2,1X,I2,1X,F6.3,2X,A1,I2,1X,I2,1X,F5.2,2X,F4.1,5X,F5.1,2X, + F4.2,2X,F5.2,2X,F5.3,2X,F5.2,2X,F4.2,2X,A1,1X,I1) C Effective file loading open(unit=1,status='old',file= +'table2.dat') write(6,*) '....Loading file: table2.dat' do i__=1,18 read(1,'(A80)')ar__1 read(ar__1,2) + RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__),DEm(i__), + DEs(i__),Rmag(i__),theta_1(i__),e_theta_1(i__),rho_1(i__), + e_rho_1(i__),Dmag_1(i__),e_Dmag_1(i__),Band_1(i__), + o_Dmag_1(i__) if(ar__1(29:32) .EQ. '') Rmag(i__) = rNULL__ if(ar__1(65:69) .EQ. '') Dmag_1(i__) = rNULL__ if(ar__1(72:75) .EQ. '') e_Dmag_1(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,2) + RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__),DEm(i__), + DEs(i__),Rmag(i__),theta_1(i__),e_theta_1(i__),rho_1(i__), + e_rho_1(i__),Dmag_1(i__),e_Dmag_1(i__),Band_1(i__), + o_Dmag_1(i__) write(6,'(6H Pos: 2F8.4)') RAdeg(i__),DEdeg(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end