CDS.headStuff2
FORTRAN Generation
Conversion of standardized ReadMe file for
catalog 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-26 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/503/639 NIR spectral of M-T dwarfs (Testi, 2009) *================================================================================ *A low-resolution near-infrared spectral library of M-, L-, and T-dwarfs. * Testi L. * <Astron. Astrophys. 503, 639 (2009)> * =2009A&A...503..639T C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'stars.dat' ! Observed M-, L-, and T-dwarfs integer*4 nr__ parameter (nr__=54) ! Number of records character*126 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*25 Name (nr__) ! Star name integer*4 RAh (nr__) ! (h) Right ascension (J2000) integer*4 RAm (nr__) ! (min) Right ascension (J2000) real*4 RAs (nr__) ! (s) Right ascension (J2000) character*1 DE_ (nr__) ! Declination sign (J2000) integer*4 DEd (nr__) ! (deg) Declination (J2000) integer*4 DEm (nr__) ! (arcmin) Declination (J2000) integer*4 DEs (nr__) ! (arcsec) Declination (J2000) character*4 SpType (nr__) ! MK spectral type (1) character*10 Obs_Date (nr__) ! ("DD/MM/YYYY") Observation date integer*4 Ref (nr__) ! [1/5] Reference (2) character*24 SName (nr__) ! Simbad name character*6 Note (nr__) ! Note character*30 FileName (nr__) ! Name of the file containing the spectra * in sp subdirectory *Note (1): For M- and L-dwarfs we list the optical spectral types (from the * reference in column 4), for T-dwarfs we list the NIR spectral types * (from Burgasser et al., 2004, Cat. <J/AJ/127/2856>) *Note (2): References as follows: * 1 = Burgasser et al. (2004, Cat. <J/AJ/127/2856>) * 2 = Henry et al. (1994AJ....108.1437H) * 3 = Kirkpatrick et al. (1995AJ....109..797K) * 4 = Kirkpatrick et al. (1999ApJ...519..802K) * 5 = Kirkpatrick et al. (2000AJ....120..447K) c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'sp/*' ! Individual spectra integer*4 nr__1 parameter (nr__1=54) ! Number of records character*19 ar__1 ! Full-size record real*4 lambda (nr__1) ! (um) Wavelength real*8 Flux (nr__1) ! Flux normalized to the average flux * between 1.235 and 1.305um C============================================================================= C Loading file 'stars.dat' ! Observed M-, L-, and T-dwarfs C Format for file interpretation 1 format( + A25,1X,I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,1X,A4,1X,A10,1X, + I1,1X,A24,1X,A6,A30) C Effective file loading open(unit=1,status='old',file= +'stars.dat') write(6,*) '....Loading file: stars.dat' do i__=1,54 read(1,'(A126)')ar__ read(ar__,1) + Name(i__),RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__), + DEm(i__),DEs(i__),SpType(i__),Obs_Date(i__),Ref(i__), + SName(i__),Note(i__),FileName(i__) 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__),RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__), + DEm(i__),DEs(i__),SpType(i__),Obs_Date(i__),Ref(i__), + SName(i__),Note(i__),FileName(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 'sp/*' ! Individual spectra C Format for file interpretation 2 format(2X,F6.4,1X,F10.7) C Effective file loading open(unit=1,status='old',file= +'sp/*') write(6,*) '....Loading file: sp/*' do i__=1,54 read(1,'(A19)')ar__1 read(ar__1,2)lambda(i__),Flux(i__) c ..............Just test output........... write(6,2)lambda(i__),Flux(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end