Conversion of standardized ReadMe file for
file /./ftp/cats/III/202 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. III/202 Spectrophotometric Catalogue of Stars (Kharitonov+, 1988) *================================================================================ *Spectrophotometric Catalogue of Stars * Kharitonov A.V., Tereshchenko V.M., Knyazeva L.N. * <Alma-Ata, Nauka, p. 484 (1988)> C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'catalog.dat' ! Energy distribution (W/(m2.m)) integer*4 nr__ parameter (nr__=1147) ! Number of records character*695 ar__ ! Full-size record C B2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg ! (deg) Right Ascension B2000 real*8 DEdeg ! (deg) Declination B2000 C ---------------------------------- ! (position vector(s) in degrees) integer*4 No ! [1/1147]+ Running number integer*4 RAh ! (h) Right Ascension B2000 (hours) (1) integer*4 RAm ! (min) Right Ascension B2000 (minutes) (1) real*4 RAs ! (s) Right Ascension B2000 (seconds) (1) character*1 DE_ ! Declination B2000 (sign) (1) integer*4 DEd ! (deg) Declination B2000 (degrees) (1) integer*4 DEm ! (arcmin) Declination B2000 (minutes) (1) integer*4 DEs ! (arcsec) ? Declination B2000 (seconds) (1) character*8 HR ! Name in Bright Star catalogue character*9 HD ! Name in HD catalogue real*4 Vmag ! (mag) Magnitude character*17 Sp ! Spectral type integer*4 E (88) ! (10nW/m2/cm) Energy flux for wavelengths 3225 to 7575{AA}. * step 50{AA}, expressed in * 10^-5^erg/(cm^2^.s.cm) *Note (1): the positions were not present in the original catalog; * they were taken from SIMBAD C============================================================================= C Loading file 'catalog.dat' ! Energy distribution (W/(m2.m)) C Format for file interpretation 1 format( + I4,1X,I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,1X,A8,2X,A9,1X, + F5.2,5X,A17,6X,88I7) C Effective file loading open(unit=1,status='old',file= +'catalog.dat') write(6,*) '....Loading file: catalog.dat' do i__=1,1147 read(1,'(A695)')ar__ read(ar__,1) + No,RAh,RAm,RAs,DE_,DEd,DEm,DEs,HR,HD,Vmag,Sp,(E(j__,),j__=1, + 88) if(ar__(24:25) .EQ. '') DEs = iNULL__ 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) + No,RAh,RAm,RAs,DE_,DEd,DEm,DEs,HR,HD,Vmag,Sp,(E(j__,),j__=1, + 88) write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg c .......End.of.Just test output........... end do close(1) C============================================================================= stop end