Conversion of standardized ReadMe file for
file /./ftp/cats/I/80 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/80 Catalog of 5268 Standard Stars, Normal System N30 (Morgan 1952) *================================================================================ *Catalog of 5,268 Standard Stars Based on the Normal System N30 * Morgan H.R. * <Astron. Papers Amer. Ephemeris 13, Part III (1952)> C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'n30.dat' ! The N30 catalog of 5268 standard stars integer*4 nr__ parameter (nr__=5268) ! Number of records character*90 ar__ ! Full-size record C B1950.0 position composed of: RAh RAm RAs DE- DEd DEm DEs (Epoch=1950.0) real*8 RAdeg (nr__) ! (deg) Right Ascension B1950.0, Epoch=1950.0 real*8 DEdeg (nr__) ! (deg) Declination B1950.0, Epoch=1950.0 C ---------------------------------- ! (position vector(s) in degrees) integer*4 N30 (nr__) ! N30 running number character*8 DM (nr__) ! !DM number (Present for all stars) integer*4 GC (nr__) ! [1/33342]? GC number (blank if not present) integer*4 HPmag (nr__) ! (0.01mag) *Harvard photometric magnitude character*4 HDSp (nr__) ! *Henry Draper (HD) spectral type integer*4 RAh (nr__) ! (h) *Right ascension (equinox B1950.0) in hours integer*4 RAm (nr__) ! (min) *RA in minutes real*4 RAs (nr__) ! (s) *RA in seconds integer*4 RA3rd (nr__) ! (0.01s) *Third term in right ascension integer*4 pmRA (nr__) ! (0.01s/ha) Centennial proper motion in RA integer*4 D_pmRA (nr__) ! (0.01s/ha) ? Centennial secular variation in pmRA integer*4 EpRA_1900 (nr__) ! (0.1yr) Mean epoch of RA (0.1 yr) (1900+) integer*4 w_RAs (nr__) ! *weight of RA character*1 DE_ (nr__) ! sign integer*4 DEd (nr__) ! (deg) *Declination (equinox B1950.0) in degrees integer*4 DEm (nr__) ! (arcmin) *DEC in arcminutes real*4 DEs (nr__) ! (arcsec) *DEC in arcseconds integer*4 DEC3rd (nr__) ! (0.1arcsec) *Third term in declination integer*4 pmDE (nr__) ! (marcsec/a) Centennial proper motion in declination integer*4 D_pmDE (nr__) ! (marcsec/a) ? Centennial secular variation in pmDE integer*4 EpDE_1900 (nr__) ! (0.1yr) Mean epoch of DEC (0.1 yr) (1900+) integer*4 w_DEs (nr__) ! *weight of DEC character*1 rem (nr__) ! [* ] "*" if there is a remark in remarks.dat *Note on HPmag: * For double stars, if the position is for one component, the magnitude of * that component is given and the magnitude, distance and position angle * of the companion are given in the notes (remarks.dat). If the position * is for the mean, center of light, or center of gravity, the combined * magnitude is given and the magnitudes, distance and position angle of * the components are given in the notes. Where the position is for the * center of gravity, the orbital corrections used in the reduction of the * observation were taken from the GC, Vol. I, Ap. II. For double stars of * distances 1" to 2", there is an uncertainty as to part observed, * depending upon the relative magnitudes of the components. If the * components are separated and differ considerably in magnitude, then the * use of screens cuts out the fainter star. There are a number of such * stars and in older work the observations were reduced as the mean, or * center of light. Where it seems probable that the new position is for * the brighter star and the GC gives a mean, a note is given. The * magnitudes of variable stars are given as a blank followed by three * zeroes. *Note on HDSp: * Composite spectra are given as combinations; e.g. KOAO or KO+A. A few * peculiar composite spectra require > 4 characters and the p's are * omitted in the fields, but given in the notes. *Note on RAh, RAm, RAs, DEd, DEm, DEs: * Right ascension for equinox and epoch 1950.0 were brought up from epoch * of observation using Newcomb's precession and the proper motions in this * catalog. *Note on RA3rd, DEC3rd: * The first and second terms are not included on the original tape. *Note on w_RAs: * Sum of combining weights used in forming the normal position in RA. *Note on w_DEs: * Sum of combining weights used in forming the normal position in Dec. c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'remarks.dat' ! Remarks integer*4 nr__1 parameter (nr__1=277) ! Number of records character*80 ar__1 ! Full-size record integer*4 N30_1 (nr__1) ! N30 running number character*74 rem_1 (nr__1) ! Remark(s) C============================================================================= C Loading file 'n30.dat' ! The N30 catalog of 5268 standard stars C Format for file interpretation 1 format( + I4,A8,I5,I4,A4,I2,I2,F6.3,I7,I5,I7,I3,I3,A1,I2,I2,F5.2,I5,I5, + I3,I3,I3,A1) C Effective file loading open(unit=1,status='old',file= +'n30.dat') write(6,*) '....Loading file: n30.dat' do i__=1,5268 read(1,'(A90)')ar__ read(ar__,1) + N30(i__),DM(i__),GC(i__),HPmag(i__),HDSp(i__),RAh(i__), + RAm(i__),RAs(i__),RA3rd(i__),pmRA(i__),D_pmRA(i__), + EpRA_1900(i__),w_RAs(i__),DE_(i__),DEd(i__),DEm(i__),DEs(i__), + DEC3rd(i__),pmDE(i__),D_pmDE(i__),EpDE_1900(i__),w_DEs(i__), + rem(i__) if(ar__(13:17) .EQ. '') GC(i__) = iNULL__ if(ar__(48:54) .EQ. '') D_pmRA(i__) = iNULL__ if(ar__(81:83) .EQ. '') D_pmDE(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) 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) + N30(i__),DM(i__),GC(i__),HPmag(i__),HDSp(i__),RAh(i__), + RAm(i__),RAs(i__),RA3rd(i__),pmRA(i__),D_pmRA(i__), + EpRA_1900(i__),w_RAs(i__),DE_(i__),DEd(i__),DEm(i__),DEs(i__), + DEC3rd(i__),pmDE(i__),D_pmDE(i__),EpDE_1900(i__),w_DEs(i__), + rem(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 'remarks.dat' ! Remarks C Format for file interpretation 2 format(I4,2X,A74) C Effective file loading open(unit=1,status='old',file= +'remarks.dat') write(6,*) '....Loading file: remarks.dat' do i__=1,277 read(1,'(A80)')ar__1 read(ar__1,2)N30_1(i__),rem_1(i__) c ..............Just test output........... write(6,2)N30_1(i__),rem_1(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end