Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/516/A28 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/516/A28 Star catalogue of Tycho Brahe (1627) (Verbunt+, 2010) *================================================================================ *Three editions of the star catalogue of Tycho Brahe. *Machine-readable versions and comparison with the modern Hipparcos Catalogue. * Verbunt F., van Gent R.H. * <Astron. Astrophys. 516, A28 (2010)> * =2010A&A...516A..28V C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'keplere.dat' ! Emended version of Kepler (1627) edition of Tycho Brahe Star Catalogue integer*4 nr__ parameter (nr__=1007) ! Number of records character*95 ar__ ! Full-size record C 1601.0 position composed of: Elon.Z Elon.d Elon.m Elat.- Elat.d Elat.m real*8 RAdeg (nr__) ! (deg) Right Ascension 1601.0 real*8 DEdeg (nr__) ! (deg) Declination 1601.0 C ---------------------------------- ! (position vector(s) in degrees) integer*4 M (nr__) ! ?=0 Sequence number in Manuscript Catalogue integer*4 B (nr__) ! ?=0 Sequence number in Brahe 1602 edition integer*4 K (nr__) ! ?=0 Sequence number in Kepler 1627 edition integer*4 C (nr__) ! Sequence number of constellation in Kepler character*3 cst (nr__) ! Abbreviation of constellation name integer*4 N (nr__) ! Sequence number of star in constellation integer*4 Elon_Z (nr__) ! (30deg) [1,12] Zodiacal sign of ecliptic longitude (1) integer*4 Elon_d (nr__) ! (deg) [0,30] Degrees of ecliptic longitude (1) real*4 Elon_m (nr__) ! (arcmin) Arcminutes of ecliptic longitude (1) integer*4 Elat_d (nr__) ! (deg) Degrees of ecliptic latitude (2) real*4 Elat_m (nr__) ! (arcmin) Arcminutes of ecliptic latitude (2) character*1 Elat__ (nr__) ! [AB] Sign of ecliptic latitude, * Australis (-) or Borealis (+) (2) integer*4 VB (nr__) ! Magnitude as given by Brahe; 9 for `nebulous' character*1 n_VB (nr__) ! [.:] Magnitude qualifier (3) integer*4 HIP (nr__) ! ? Hipparcos number of identification integer*4 I (nr__) ! [1,6] Quality of identification (4) integer*4 D (nr__) ! [0,5] Comparison flag with Dreyer (5) integer*4 R (nr__) ! [0,5] comparison flag with Rawlins (5) real*4 Vmag (nr__) ! (mag) ?=0 Magnitude of Hipparcos identification real*4 Dlon (nr__) ! (min) ?=0 Difference in longitude: Hipparcos-Brahe real*4 Dlat (nr__) ! (arcmin) ?=0 Difference in latitude: Hipparcos-Brahe real*4 Delta (nr__) ! (arcmin) ?=0 Offset between Brahe star and identification character*1 v_K (nr__) ! K indicates variant from Kepler (1627) (6) character*1 v_P (nr__) ! P indicates variant from Brahe (1602) (6) character*1 v_M (nr__) ! M indicates variant from manuscript 1598 (6) character*1 v_I (nr__) ! C/P indicates variant meus catalogus/Piserus (6) *Note (1): The ecliptic longitude (for the equinox of AD 1601.0) is given by * {lambda} = (Z-1)30 + Elon.d + Elon.m/60 *Note (2): The ecliptic latitude (for the year AD 1601.0) is given by * {beta} = +/-(Elat.d + Elat.m/60); (+ for Borealis, - for Australis) *Note (3): Magnitude qualifier: * : = brighter; * . = fainter *Note (4): Flag 'I' as follows: * 1 = secure identification with nearest star * 2 = secure identification, even though not nearest star * 3 = probable identification * 4 = possible identification * 5 = not identified * 6 = double entry *Note (5): Comparison flags as follows: * 0 = no identification given by Dreyer/Rawlins * 1 = same identification given by Dreyer/Rawlins * 2 = identification in Dreyer/Rawlins to alternative identification * 3 = identification in Dreyer/Rawlins different from our identification * 4 = identification in Rawlins different due to corrected position * 5 = called `utter fake' by Rawlins *Note (6): in variants.dat file only c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'variant.dat' ! Variants on Kepler Emended version from other editions integer*4 nr__1 parameter (nr__1=82) ! Number of records character*95 ar__1 ! Full-size record C 1601.0 position composed of: Elon.Z Elon.d Elon.m Elat.- Elat.d Elat.m real*8 RAdeg_1 (nr__1) ! (deg) Right Ascension 1601.0 real*8 DEdeg_1 (nr__1) ! (deg) Declination 1601.0 C ---------------------------------- ! (position vector(s) in degrees) integer*4 M_1 (nr__1) ! ?=0 Sequence number in Manuscript Catalogue integer*4 B_1 (nr__1) ! ?=0 Sequence number in Brahe 1602 edition integer*4 K_1 (nr__1) ! ?=0 Sequence number in Kepler 1627 edition integer*4 C_1 (nr__1) ! Sequence number of constellation in Kepler character*3 cst_1 (nr__1) ! Abbreviation of constellation name integer*4 N_1 (nr__1) ! Sequence number of star in constellation integer*4 Elon_Z_1 (nr__1) ! (30deg) [1,12] Zodiacal sign of ecliptic longitude (1) integer*4 Elon_d_1 (nr__1) ! (deg) [0,30] Degrees of ecliptic longitude (1) real*4 Elon_m_1 (nr__1) ! (arcmin) Arcminutes of ecliptic longitude (1) integer*4 Elat_d_1 (nr__1) ! (deg) Degrees of ecliptic latitude (2) real*4 Elat_m_1 (nr__1) ! (arcmin) Arcminutes of ecliptic latitude (2) character*1 Elat___1 (nr__1) ! [AB] Sign of ecliptic latitude, * Australis (-) or Borealis (+) (2) integer*4 VB_1 (nr__1) ! Magnitude as given by Brahe; 9 for `nebulous' character*1 n_VB_1 (nr__1) ! [.:] Magnitude qualifier (3) integer*4 HIP_1 (nr__1) ! ? Hipparcos number of identification integer*4 I_1 (nr__1) ! [1,6] Quality of identification (4) integer*4 D_1 (nr__1) ! [0,5] Comparison flag with Dreyer (5) integer*4 R_1 (nr__1) ! [0,5] comparison flag with Rawlins (5) real*4 Vmag_1 (nr__1) ! (mag) ?=0 Magnitude of Hipparcos identification real*4 Dlon_1 (nr__1) ! (min) ?=0 Difference in longitude: Hipparcos-Brahe real*4 Dlat_1 (nr__1) ! (arcmin) ?=0 Difference in latitude: Hipparcos-Brahe real*4 Delta_1 (nr__1) ! (arcmin) ?=0 Offset between Brahe star and identification character*1 v_K_1 (nr__1) ! K indicates variant from Kepler (1627) (6) character*1 v_P_1 (nr__1) ! P indicates variant from Brahe (1602) (6) character*1 v_M_1 (nr__1) ! M indicates variant from manuscript 1598 (6) character*1 v_I_1 (nr__1) ! C/P indicates variant meus catalogus/Piserus (6) *Note (1): The ecliptic longitude (for the equinox of AD 1601.0) is given by * {lambda} = (Z-1)30 + Elon.d + Elon.m/60 *Note (2): The ecliptic latitude (for the year AD 1601.0) is given by * {beta} = +/-(Elat.d + Elat.m/60); (+ for Borealis, - for Australis) *Note (3): Magnitude qualifier: * : = brighter; * . = fainter *Note (4): Flag 'I' as follows: * 1 = secure identification with nearest star * 2 = secure identification, even though not nearest star * 3 = probable identification * 4 = possible identification * 5 = not identified * 6 = double entry *Note (5): Comparison flags as follows: * 0 = no identification given by Dreyer/Rawlins * 1 = same identification given by Dreyer/Rawlins * 2 = identification in Dreyer/Rawlins to alternative identification * 3 = identification in Dreyer/Rawlins different from our identification * 4 = identification in Rawlins different due to corrected position * 5 = called `utter fake' by Rawlins *Note (6): in variants.dat file only c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'names.dat' ! Descriptions of the stars, from the Manuscript version of the catalogue integer*4 nr__2 parameter (nr__2=1007) ! Number of records character*95 ar__2 ! Full-size record integer*4 M_2 (nr__2) ! ?=0 Sequence number in Manuscript Catalogue integer*4 B_2 (nr__2) ! ?=0 Sequence number in Brahe 1602 edition integer*4 K_2 (nr__2) ! ?=0 Sequence number in Kepler 1627 edition character*80 Name (nr__2) ! Latin description of star in Manuscript 1598 (1) *Note (1): Mathematical symbols (square, triangle) from the manuscripts are * indicated with LaTeX form ($\box$, $\triangle$); zodiac symbols from * the manuscript are indicated with the wasysym form (\aries, \taurus, * \gemini, \cancer, etc.) C============================================================================= C Loading file 'keplere.dat' ! Emended version of Kepler (1627) edition of * Tycho Brahe Star Catalogue C Format for file interpretation 1 format( + I4,1X,I3,1X,I4,1X,I2,2X,A3,1X,I2,1X,I2,1X,I2,1X,F4.1,1X,I2,1X, + F4.1,1X,A1,1X,I1,A1,1X,I6,2X,I1,2X,I1,1X,I1,1X,F4.1,1X,F6.1, + 1X,F6.1,1X,F6.1,2X,A1,A1,A1,A1) C Effective file loading open(unit=1,status='old',file= +'keplere.dat') write(6,*) '....Loading file: keplere.dat' do i__=1,1007 read(1,'(A95)')ar__ read(ar__,1) + M(i__),B(i__),K(i__),C(i__),cst(i__),N(i__),Elon_Z(i__), + Elon_d(i__),Elon_m(i__),Elat_d(i__),Elat_m(i__),Elat__(i__), + VB(i__),n_VB(i__),HIP(i__),I(i__),D(i__),R(i__),Vmag(i__), + Dlon(i__),Dlat(i__),Delta(i__),v_K(i__),v_P(i__),v_M(i__), + v_I(i__) if(ar__(50:55) .EQ. '') HIP(i__) = iNULL__ 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) c ..............Just test output........... write(6,1) + M(i__),B(i__),K(i__),C(i__),cst(i__),N(i__),Elon_Z(i__), + Elon_d(i__),Elon_m(i__),Elat_d(i__),Elat_m(i__),Elat__(i__), + VB(i__),n_VB(i__),HIP(i__),I(i__),D(i__),R(i__),Vmag(i__), + Dlon(i__),Dlat(i__),Delta(i__),v_K(i__),v_P(i__),v_M(i__), + v_I(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 'variant.dat' ! Variants on Kepler Emended version * from other editions C Format for file interpretation 2 format( + I4,1X,I3,1X,I4,1X,I2,2X,A3,1X,I2,1X,I2,1X,I2,1X,F4.1,1X,I2,1X, + F4.1,1X,A1,1X,I1,A1,1X,I6,2X,I1,2X,I1,1X,I1,1X,F4.1,1X,F6.1, + 1X,F6.1,1X,F6.1,2X,A1,A1,A1,A1) C Effective file loading open(unit=1,status='old',file= +'variant.dat') write(6,*) '....Loading file: variant.dat' do i__=1,82 read(1,'(A95)')ar__1 read(ar__1,2) + M_1(i__),B_1(i__),K_1(i__),C_1(i__),cst_1(i__),N_1(i__), + Elon_Z_1(i__),Elon_d_1(i__),Elon_m_1(i__),Elat_d_1(i__), + Elat_m_1(i__),Elat___1(i__),VB_1(i__),n_VB_1(i__),HIP_1(i__), + I_1(i__),D_1(i__),R_1(i__),Vmag_1(i__),Dlon_1(i__), + Dlat_1(i__),Delta_1(i__),v_K_1(i__),v_P_1(i__),v_M_1(i__), + v_I_1(i__) if(ar__1(50:55) .EQ. '') HIP_1(i__) = iNULL__ RAdeg_1(i__) = rNULL__ DEdeg_1(i__) = rNULL__ c Derive coordinates RAdeg_1 and DEdeg_1 from input data c (RAdeg_1 and DEdeg_1 are set to rNULL__ when unknown) c ..............Just test output........... write(6,2) + M_1(i__),B_1(i__),K_1(i__),C_1(i__),cst_1(i__),N_1(i__), + Elon_Z_1(i__),Elon_d_1(i__),Elon_m_1(i__),Elat_d_1(i__), + Elat_m_1(i__),Elat___1(i__),VB_1(i__),n_VB_1(i__),HIP_1(i__), + I_1(i__),D_1(i__),R_1(i__),Vmag_1(i__),Dlon_1(i__), + Dlat_1(i__),Delta_1(i__),v_K_1(i__),v_P_1(i__),v_M_1(i__), + v_I_1(i__) write(6,'(6H Pos: 2F8.4)') RAdeg_1(i__),DEdeg_1(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'names.dat' ! Descriptions of the stars, from the * Manuscript version of the catalogue C Format for file interpretation 3 format(I4,1X,I3,1X,I4,2X,A80) C Effective file loading open(unit=1,status='old',file= +'names.dat') write(6,*) '....Loading file: names.dat' do i__=1,1007 read(1,'(A95)')ar__2 read(ar__2,3)M_2(i__),B_2(i__),K_2(i__),Name(i__) c ..............Just test output........... write(6,3)M_2(i__),B_2(i__),K_2(i__),Name(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end