Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/415/993 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/415/993 FeII, ZNI and SI abundances on halo stars (Nissen+, 2004)
*================================================================================
*Sulphur and zinc abundances in Galactic stars and damped Ly-alpha systems.
* Nissen P.E., Chen Y.Q., Asplund M., Pettini M.
* <Astron. Astrophys. 415, 993 (2004)>
* =2004A&A...415..993N
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'stars.dat' ! Star positions and magnitudes (from Simbad)
integer*4 nr__
parameter (nr__=34) ! Number of records
character*70 ar__ ! Full-size record
C J2000.0 position composed of: RAh RAm RAs DE- DEd DEm DEs
real*8 RAdeg (nr__) ! (deg) Right Ascension J2000.0
real*8 DEdeg (nr__) ! (deg) Declination J2000.0
C ---------------------------------- ! (position vector(s) in degrees)
character*11 Name (nr__) ! Object name
integer*4 RAh (nr__) ! (h) Right ascension (J2000.0)
integer*4 RAm (nr__) ! (min) Right ascension (J2000.0)
real*4 RAs (nr__) ! (s) Right ascension (J2000.0)
character*1 DE_ (nr__) ! Declination sign (J2000.0)
integer*4 DEd (nr__) ! (deg) Declination (J2000.0)
integer*4 DEm (nr__) ! (arcmin) Declination (J2000.0)
integer*4 DEs (nr__) ! (arcsec) Declination (J2000.0)
real*4 Bmag (nr__) ! (mag) ? B magnitude
real*4 Vmag (nr__) ! (mag) ? V magnitude
character*21 SpType (nr__) ! MK Spectral type
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea1.dat' ! Equivalent widths
integer*4 nr__1
parameter (nr__1=25) ! Number of records
character*187 ar__1 ! Full-size record
character*5 Element (nr__1) ! Chemical element and ionization stage
real*8 Lambda (nr__1) ! (0.1nm) Wavelength of spectral line
real*4 EW1 (nr__1) ! (0.1pm) ? Equivalent widths for BD-13 3442
real*4 EW2 (nr__1) ! (0.1pm) ? Equivalent widths for CD-30 18140
real*4 EW3 (nr__1) ! (0.1pm) ? Equivalent widths for CD-35 14849
real*4 EW4 (nr__1) ! (0.1pm) ? Equivalent widths for CD-42 14278
real*4 EW5 (nr__1) ! (0.1pm) ? Equivalent widths for HD 103723
real*4 EW6 (nr__1) ! (0.1pm) ? Equivalent widths for HD 105004
real*4 EW7 (nr__1) ! (0.1pm) ? Equivalent widths for HD 106038
real*4 EW8 (nr__1) ! (0.1pm) ? Equivalent widths for HD 108177
real*4 EW9 (nr__1) ! (0.1pm) ? Equivalent widths for HD 110621
real*4 EW10 (nr__1) ! (0.1pm) ? Equivalent widths for HD 121004
real*4 EW11 (nr__1) ! (0.1pm) ? Equivalent widths for HD 140283
real*4 EW12 (nr__1) ! (0.1pm) ? Equivalent widths for HD 146296
real*4 EW13 (nr__1) ! (0.1pm) ? Equivalent widths for HD 148816
real*4 EW14 (nr__1) ! (0.1pm) ? Equivalent widths for HD 160617
real*4 EW15 (nr__1) ! (0.1pm) ? Equivalent widths for HD 179626
real*4 EW16 (nr__1) ! (0.1pm) ? Equivalent widths for HD 181743
real*4 EW17 (nr__1) ! (0.1pm) ? Equivalent widths for HD 188031
real*4 EW18 (nr__1) ! (0.1pm) ? Equivalent widths for HD 193901
real*4 EW19 (nr__1) ! (0.1pm) ? Equivalent widths for HD 194598
real*4 EW20 (nr__1) ! (0.1pm) ? Equivalent widths for HD 215801
real*4 EW21 (nr__1) ! (0.1pm) ? Equivalent widths for LP 815-043
real*4 EW22 (nr__1) ! (0.1pm) ? Equivalent widths for G 011-044
real*4 EW23 (nr__1) ! (0.1pm) ? Equivalent widths for G 013-009
real*4 EW24 (nr__1) ! (0.1pm) ? Equivalent widths for G 016-013
real*4 EW25 (nr__1) ! (0.1pm) ? Equivalent widths for G 018-039
real*4 EW26 (nr__1) ! (0.1pm) ? Equivalent widths for G 020-008
real*4 EW27 (nr__1) ! (0.1pm) ? Equivalent widths for G 024-003
real*4 EW28 (nr__1) ! (0.1pm) ? Equivalent widths for G 029-023
real*4 EW29 (nr__1) ! (0.1pm) ? Equivalent widths for G 053-041
real*4 EW30 (nr__1) ! (0.1pm) ? Equivalent widths for G 064-012
real*4 EW31 (nr__1) ! (0.1pm) ? Equivalent widths for G 064-037
real*4 EW32 (nr__1) ! (0.1pm) ? Equivalent widths for G 066-030
real*4 EW33 (nr__1) ! (0.1pm) ? Equivalent widths for G 126-062
real*4 EW34 (nr__1) ! (0.1pm) ? Equivalent widths for G 186-026
C=============================================================================
C Loading file 'stars.dat' ! Star positions and magnitudes (from Simbad)
C Format for file interpretation
1 format(
+ A11,3X,I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,3X,F5.2,1X,F5.2,
+ 1X,A21)
C Effective file loading
open(unit=1,status='old',file=
+'stars.dat')
write(6,*) '....Loading file: stars.dat'
do i__=1,34
read(1,'(A70)')ar__
read(ar__,1)
+ Name(i__),RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__),
+ DEm(i__),DEs(i__),Bmag(i__),Vmag(i__),SpType(i__)
if(ar__(38:42) .EQ. '') Bmag(i__) = rNULL__
if(ar__(44:48) .EQ. '') Vmag(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__),RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__),
+ DEm(i__),DEs(i__),Bmag(i__),Vmag(i__),SpType(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 'tablea1.dat' ! Equivalent widths
C Format for file interpretation
2 format(
+ A5,1X,F7.2,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,
+ F4.1,1X,F4.1,1X,F4.1,1X,F5.1,1X,F4.1,1X,F4.1,1X,F5.1,1X,F4.1,
+ 1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,
+ F4.1,1X,F4.1,1X,F5.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,
+ 1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1,1X,F4.1)
C Effective file loading
open(unit=1,status='old',file=
+'tablea1.dat')
write(6,*) '....Loading file: tablea1.dat'
do i__=1,25
read(1,'(A187)')ar__1
read(ar__1,2)
+ Element(i__),Lambda(i__),EW1(i__),EW2(i__),EW3(i__),EW4(i__),
+ EW5(i__),EW6(i__),EW7(i__),EW8(i__),EW9(i__),EW10(i__),
+ EW11(i__),EW12(i__),EW13(i__),EW14(i__),EW15(i__),EW16(i__),
+ EW17(i__),EW18(i__),EW19(i__),EW20(i__),EW21(i__),EW22(i__),
+ EW23(i__),EW24(i__),EW25(i__),EW26(i__),EW27(i__),EW28(i__),
+ EW29(i__),EW30(i__),EW31(i__),EW32(i__),EW33(i__),EW34(i__)
if(ar__1(15:18) .EQ. '') EW1(i__) = rNULL__
if(ar__1(20:23) .EQ. '') EW2(i__) = rNULL__
if(ar__1(25:28) .EQ. '') EW3(i__) = rNULL__
if(ar__1(30:33) .EQ. '') EW4(i__) = rNULL__
if(ar__1(35:38) .EQ. '') EW5(i__) = rNULL__
if(ar__1(40:43) .EQ. '') EW6(i__) = rNULL__
if(ar__1(45:48) .EQ. '') EW7(i__) = rNULL__
if(ar__1(50:53) .EQ. '') EW8(i__) = rNULL__
if(ar__1(55:58) .EQ. '') EW9(i__) = rNULL__
if(ar__1(60:64) .EQ. '') EW10(i__) = rNULL__
if(ar__1(66:69) .EQ. '') EW11(i__) = rNULL__
if(ar__1(71:74) .EQ. '') EW12(i__) = rNULL__
if(ar__1(76:80) .EQ. '') EW13(i__) = rNULL__
if(ar__1(82:85) .EQ. '') EW14(i__) = rNULL__
if(ar__1(87:90) .EQ. '') EW15(i__) = rNULL__
if(ar__1(92:95) .EQ. '') EW16(i__) = rNULL__
if(ar__1(97:100) .EQ. '') EW17(i__) = rNULL__
if(ar__1(102:105) .EQ. '') EW18(i__) = rNULL__
if(ar__1(107:110) .EQ. '') EW19(i__) = rNULL__
if(ar__1(112:115) .EQ. '') EW20(i__) = rNULL__
if(ar__1(117:120) .EQ. '') EW21(i__) = rNULL__
if(ar__1(122:125) .EQ. '') EW22(i__) = rNULL__
if(ar__1(127:130) .EQ. '') EW23(i__) = rNULL__
if(ar__1(132:136) .EQ. '') EW24(i__) = rNULL__
if(ar__1(138:141) .EQ. '') EW25(i__) = rNULL__
if(ar__1(143:146) .EQ. '') EW26(i__) = rNULL__
if(ar__1(148:151) .EQ. '') EW27(i__) = rNULL__
if(ar__1(153:156) .EQ. '') EW28(i__) = rNULL__
if(ar__1(158:161) .EQ. '') EW29(i__) = rNULL__
if(ar__1(163:166) .EQ. '') EW30(i__) = rNULL__
if(ar__1(168:171) .EQ. '') EW31(i__) = rNULL__
if(ar__1(173:176) .EQ. '') EW32(i__) = rNULL__
if(ar__1(178:181) .EQ. '') EW33(i__) = rNULL__
if(ar__1(183:186) .EQ. '') EW34(i__) = rNULL__
c ..............Just test output...........
write(6,2)
+ Element(i__),Lambda(i__),EW1(i__),EW2(i__),EW3(i__),EW4(i__),
+ EW5(i__),EW6(i__),EW7(i__),EW8(i__),EW9(i__),EW10(i__),
+ EW11(i__),EW12(i__),EW13(i__),EW14(i__),EW15(i__),EW16(i__),
+ EW17(i__),EW18(i__),EW19(i__),EW20(i__),EW21(i__),EW22(i__),
+ EW23(i__),EW24(i__),EW25(i__),EW26(i__),EW27(i__),EW28(i__),
+ EW29(i__),EW30(i__),EW31(i__),EW32(i__),EW33(i__),EW34(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
stop
end