Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/383/1062 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 2026-Oct-14
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/383/1062 Optical positions of 55 radio stars at Yunnan Obs. (Hu+, 2002)
*================================================================================
*Optical positions of 55 radio stars from astrolabe observations of
*Yunnan Observatory
* Hu H., Wang R.
* <Astron. Astrophys. 383, 1062 (2002)>
* =2002A&A...383.1062H
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table1.dat' ! 55 radio star positions (Mean epoch of
observations; equator and equinox J2000)
integer*4 nr__
parameter (nr__=55) ! Number of records
character*81 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*14 Name (nr__) ! Name of star
integer*4 Num (nr__) ! ? Number in the astrometric catalogue of
* radio stars (Cat. <V/67>)
integer*4 HIP (nr__) ! ? Number in the Hipparcos Catalogue <I/239>
real*4 mvis (nr__) ! (mag) Observed mean visual magnitude
integer*4 RAh (nr__) ! (h) Right ascension for equator and equinox
* J2000.0 and epoch Ep-1900
integer*4 RAm (nr__) ! (min) Right ascension for equator and equinox
* J2000.0 and epoch Ep-1900
real*4 RAs (nr__) ! (s) Right ascension for equator and equinox
* J2000.0 and epoch Ep-1900
real*4 e_RAs (nr__) ! (s) Mean errors of right ascension
character*1 DE_ (nr__) ! Declination sign (J2000.0)
integer*4 DEd (nr__) ! (deg) ? Declination for equator and equinox
* J2000.0 and epoch Ep-1900 (1)
integer*4 DEm (nr__) ! (arcmin) ? Declination for equator and equinox
* J2000.0 and epoch Ep-1900 (1)
real*4 DEs (nr__) ! (arcsec) ? Declination for equator and equinox
* J2000.0 and epoch Ep-1900 (1)
real*4 e_DEs (nr__) ! (arcsec) ? Mean errors of declination
integer*4 NtransE (nr__) ! Number of the observed transits in east
integer*4 NtransW (nr__) ! Number of the observed transits in west
real*4 Ep_1900 (nr__) ! (yr) Mean epoch of observations minus 1900.00
*Note (1): 21 stars have no declination, as it is indicated in the
* section 2 of the paper, i.e. "Since for cosq<0.3 (i.e. abs(cosq)<0.3)
* the declinations are obtained by the astrolabe with a rather low
* precision, they are not given in the catalogue".
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table2.dat' ! The external accuracy of the 55 radio star
positions
integer*4 nr__1
parameter (nr__1=55) ! Number of records
character*56 ar__1 ! Full-size record
character*14 Name_1 (nr__1) ! Name of star
integer*4 Num_1 (nr__1) ! ? Number in the astrometric catalogue of
* radio stars (<V/67>)
integer*4 HIP_1 (nr__1) ! ? Number in the Hipparcos Catalogue (<I/239>)
real*4 mvis_1 (nr__1) ! (mag) Observed mean visual magnitude.
integer*4 DRAH_Y (nr__1) ! (0.01arcsec) ? Differences HIC-YPA in right ascension (1)
integer*4 DDEH_Y (nr__1) ! (0.01arcsec) ? Differences HIC-YPA in declination (1)
integer*4 DRAB_Y (nr__1) ! (0.01arcsec) ? Differences BORD-YPA in right ascension (1)
integer*4 DDEB_Y (nr__1) ! (0.01arcsec) ? Differences BORD-YPA in declination (1)
integer*4 DRAU_Y (nr__1) ! (0.01arcsec) ? Differences USNO-YPA in right ascension (1)
integer*4 DDEU_Y (nr__1) ! (0.01arcsec) ? Differences USNO-YPA in declination (1)
*Note (1): Position differences:
* HIC: Hipparcos Input Catalogue, Version 2 (Turon et al., 1993, Cat. <I/196>)
* BORD: Optical positions of 221 radio stars (Requieme et al., 1991
* Cat. <J/A+AS/89/311>)
* USNO: The USNO-A2.0 Catalogue (Monet et al., 1998, Cat. <I/252>)
* YPA: this work
* Mean values in mas (0.001"):
* ----------------------------------------------------------------------
* HIC-YPA BORD-YPA USNO-YPA
* RA DE RA DE RA DE
* ----------------------------------------------------------------------
* Mean difference -4 8 11 -40 -12 -9
* Standard deviation
* of the mean difference 14 19 15 25 17 29
* Standard deviation
* of the difference 95 103 101 128 99 127
* ----------------------------------------------------------------------
C=============================================================================
C Loading file 'table1.dat' ! 55 radio star positions (Mean epoch of
* observations; equator and equinox J2000)
C Format for file interpretation
1 format(
+ A14,1X,I4,1X,I6,1X,F5.2,1X,I2,1X,I2,1X,F6.3,1X,F5.3,1X,A1,I2,
+ 1X,I2,1X,F5.2,1X,F4.2,1X,I2,1X,I2,1X,F5.2)
C Effective file loading
open(unit=1,status='old',file=
+'table1.dat')
write(6,*) '....Loading file: table1.dat'
do i__=1,55
read(1,'(A81)')ar__
read(ar__,1)
+ Name(i__),Num(i__),HIP(i__),mvis(i__),RAh(i__),RAm(i__),
+ RAs(i__),e_RAs(i__),DE_(i__),DEd(i__),DEm(i__),DEs(i__),
+ e_DEs(i__),NtransE(i__),NtransW(i__),Ep_1900(i__)
if(ar__(16:19) .EQ. '') Num(i__) = iNULL__
if(ar__(21:26) .EQ. '') HIP(i__) = iNULL__
if(ar__(54:55) .EQ. '') DEd(i__) = iNULL__
if(ar__(57:58) .EQ. '') DEm(i__) = iNULL__
if(ar__(60:64) .EQ. '') DEs(i__) = rNULL__
if(ar__(66:69) .EQ. '') e_DEs(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)
+ Name(i__),Num(i__),HIP(i__),mvis(i__),RAh(i__),RAm(i__),
+ RAs(i__),e_RAs(i__),DE_(i__),DEd(i__),DEm(i__),DEs(i__),
+ e_DEs(i__),NtransE(i__),NtransW(i__),Ep_1900(i__)
write(6,'(6H Pos: 2F8.4)') RAdeg(i__),DEdeg(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'table2.dat' ! The external accuracy of the 55 radio star
* positions
C Format for file interpretation
2 format(
+ A14,1X,I4,1X,I6,1X,F5.2,1X,I3,1X,I3,1X,I3,1X,I3,1X,I3,1X,I3)
C Effective file loading
open(unit=1,status='old',file=
+'table2.dat')
write(6,*) '....Loading file: table2.dat'
do i__=1,55
read(1,'(A56)')ar__1
read(ar__1,2)
+ Name_1(i__),Num_1(i__),HIP_1(i__),mvis_1(i__),DRAH_Y(i__),
+ DDEH_Y(i__),DRAB_Y(i__),DDEB_Y(i__),DRAU_Y(i__),DDEU_Y(i__)
if(ar__1(16:19) .EQ. '') Num_1(i__) = iNULL__
if(ar__1(21:26) .EQ. '') HIP_1(i__) = iNULL__
if(ar__1(34:36) .EQ. '') DRAH_Y(i__) = iNULL__
if(ar__1(38:40) .EQ. '') DDEH_Y(i__) = iNULL__
if(ar__1(42:44) .EQ. '') DRAB_Y(i__) = iNULL__
if(ar__1(46:48) .EQ. '') DDEB_Y(i__) = iNULL__
if(ar__1(50:52) .EQ. '') DRAU_Y(i__) = iNULL__
if(ar__1(54:56) .EQ. '') DDEU_Y(i__) = iNULL__
c ..............Just test output...........
write(6,2)
+ Name_1(i__),Num_1(i__),HIP_1(i__),mvis_1(i__),DRAH_Y(i__),
+ DDEH_Y(i__),DRAB_Y(i__),DDEB_Y(i__),DRAU_Y(i__),DDEU_Y(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
stop
end