Conversion of standardized ReadMe file for
file /./ftp/cats/J/ApJS/221/24 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 2026-Sep-10
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/ApJS/221/24 SDSS-III APOGEE H-band spectral line lists (Shetrone+, 2015)
*================================================================================
*The SDSS-III APOGEE spectral line list for H-band spectroscopy.
* Shetrone M., Bizyaev D., Lawler J.E., Allende Prieto C., Johnson J.A.,
* Smith V.V., Cunha K., Holtzman J., Garcia Perez A.E., Meszaros SZ.,
* Sobeck J., Zamora O., Garcia-Hernandez D.A., Souto D., Chojnowski D.,
* Koesterke L., Majewski S., Zasowski G.
* <Astrophys. J. Suppl. Ser., 221, 24 (2015)>
* =2015ApJS..221...24S (SIMBAD/NED BibCode)
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table6.dat' ! Missing lines
integer*4 nr__
parameter (nr__=445) ! Number of records
character*23 ar__ ! Full-size record
real*8 lambda ! (0.1nm) [15174.1/16945.8] Vacuum wavelength in Angstroms
integer*4 EW ! (10-13m) [10/219]? Equivalent width in milli-Angstroms
character*1 f_EW ! Flag on EqWid (e=emission or N=N/A)
character*10 Notes ! [ ,a-k] Additional notes (1)
*Note (1): Note as follows:
* a = Seen in the cool APOGEE giant spectra residual;
* b = Seen in the hot APOGEE spectra residual;
* c = Between APOGEE detectors;
* d = all FTS stars;
* e = only M FTS stars;
* f = found only in HD199799;
* g = see Hasselquist et al. 2016 in prep.;
* h = Seen in cool APOGEE dwarf spectra residuals
* i = Seen in APOGEE Be spectra, see Chojnowski et al. (2015, J/AJ/149/7)
* j = This may be a DIB feature, see Zasowski et al. (2015ApJ...798...35Z)
* k = This may be a DIB feature, see Geballe et al. (2011Natur.479..200G).
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table7.dat' ! *ASPCAP DR12 (20131216) line list
integer*4 nr__1
parameter (nr__1=134457) ! Number of records
character*186 ar__1 ! Full-size record
real*8 lambda_1 ! (nm) [1500.4/1700.5] Vacuum wavelength
real*8 orggf ! ([-]) [-16.8/1.2]? Original log(gf) value
real*8 newgf ! ([-]) [-9.5/1.1]? Improved literature or
* laboratory log(gf)
real*4 e_newgf ! ([-]) [0.01/1]? Error in newgf, when available
character*3 r_newgf ! Source for newgf
real*8 astgf ! ([-]) [-14.7/1.3]? Astrophysical log(gf)
character*3 r_astgf ! Source for astrogf
real*8 specid ! [1/608.18] Species identifier
real*8 EP1 ! (cm-1) [0/771723.1] Lower Energy Level
real*4 J1 ! [0/159] J value for EP1
character*11 EP1id ! EP1 level identification
real*8 EP2 ! (cm-2) [6200.7/778194.1] Upper Energy Level
real*4 J2 ! [0/160] J value for EP2
character*11 EP2id ! EP2 level identification
real*4 Rad ! [0/11.1]? Damping Rad
real*4 Sta ! [-8/0]? Damping Stark
real*4 vdW ! [-8.4/0]? Damping vdW
integer*4 unlte ! [0/99]? NLTE level number upper
integer*4 lnlte ! [0/99]? NLTE level number lower
integer*4 iso1 ! [0/65]? First isotope number
real*4 hyp ! ([-]) [-9.999/0]? Hyperfine component log fractional
* strength
integer*4 iso2 ! [0/65]? Second isotope number
real*4 isof ! ([-]) [-4/0]? Log isotopic abundance fraction
integer*4 hE1 ! (mK) [-520/425]? Hyperfine shift for 1st level to be
* added to E1
integer*4 hE2 ! (mK) [-603/469]? Hyperfine shift for 1st level to be
* added to E2
character*1 F0 ! [F] Hyperfine F symbol
integer*4 F1 ! [0/9]? Hyperfine F for the first level
character*1 Note1 ! [?z] Note on character of hyperfine data
* for first level (z=none; ?=guessed)
character*1 S ! [-] The symbol "-" for legibility
integer*4 F2 ! [0/9]? Hyperfine F' for the second level
character*1 note2 ! [?z] Note on character of hyperfine data for
* second level (z=none; ?=guessed)
integer*4 g1 ! [-720/3934]? Lande g for first level times 1000
integer*4 g2 ! [-689/4006]? Lande g for second level times 1000
character*3 vdWorg ! Source for the original vdW damping
real*4 vdWast ! [-8.1/-5.2]? Astrophysical vdW damping
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table8.dat' ! *ASPCAP INT (20120216) line list
integer*4 nr__2
parameter (nr__2=134230) ! Number of records
character*186 ar__2 ! Full-size record
real*8 lambda_2 ! (nm) [1500.4/1700.5] Vacuum wavelength
real*8 orggf_1 ! ([-]) [-16.8/1.2]? Original log(gf) value
real*8 newgf_1 ! ([-]) [-9.5/1.1]? Improved literature or
* laboratory log(gf)
real*4 e_newgf_1 ! ([-]) [0.01/1]? Error in newgf, when available
character*3 r_newgf_1 ! Source for newgf
real*8 astgf_1 ! ([-]) [-14.7/1.3]? Astrophysical log(gf)
character*3 r_astgf_1 ! Source for astrogf
real*8 specid_1 ! [1/608.18] Species identifier
real*8 EP1_1 ! (cm-1) [0/771723.1] Lower Energy Level
real*4 J1_1 ! [0/159] J value for EP1
character*11 EP1id_1 ! EP1 level identification
real*8 EP2_1 ! (cm-2) [6200.7/778194.1] Upper Energy Level
real*4 J2_1 ! [0/160] J value for EP2
character*11 EP2id_1 ! EP2 level identification
real*4 Rad_1 ! [0/11.1]? Damping Rad
real*4 Sta_1 ! [-8/0]? Damping Stark
real*4 vdW_1 ! [-8.4/0]? Damping vdW
integer*4 unlte_1 ! [0/99]? NLTE level number upper
integer*4 lnlte_1 ! [0/99]? NLTE level number lower
integer*4 iso1_1 ! [0/65]? First isotope number
real*4 hyp_1 ! ([-]) [-9.999/0]? Hyperfine component log fractional
* strength
integer*4 iso2_1 ! [0/65]? Second isotope number
real*4 isof_1 ! ([-]) [-4/0]? Log isotopic abundance fraction
integer*4 hE1_1 ! (mK) [-520/425]? Hyperfine shift for 1st level to be
* added to E1
integer*4 hE2_1 ! (mK) [-603/469]? Hyperfine shift for 1st level to be
* added to E2
character*1 F0_1 ! [F] Hyperfine F symbol
integer*4 F1_1 ! [0/9]? Hyperfine F for the first level
character*1 Note1_1 ! [?z] Note on character of hyperfine data
* for first level (z=none; ?=guessed)
character*1 S_1 ! [-] The symbol "-" for legibility
integer*4 F2_1 ! [0/9]? Hyperfine F' for the second level
character*1 note2_1 ! [?z] Note on character of hyperfine data for
* second level (z=none; ?=guessed)
integer*4 g1_1 ! [-720/3934]? Lande g for first level times 1000
integer*4 g2_1 ! [-689/4006]? Lande g for second level times 1000
character*3 vdWorg_1 ! Source for the original vdW damping
real*4 vdWast_1 ! [-8.1/-5.2]? Astrophysical vdW damping
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table9.dat' ! *ASPCAP DR10 (20110510) line list
integer*4 nr__3
parameter (nr__3=134052) ! Number of records
character*186 ar__3 ! Full-size record
real*8 lambda_3 ! (nm) [1500.4/1700.5] Vacuum wavelength
real*8 orggf_2 ! ([-]) [-16.8/1.2]? Original log(gf) value
real*8 newgf_2 ! ([-]) [-9.5/1.1]? Improved literature or
* laboratory log(gf)
real*4 e_newgf_2 ! ([-]) [0.01/1]? Error in newgf, when available
character*3 r_newgf_2 ! Source for newgf
real*8 astgf_2 ! ([-]) [-14.7/1.3]? Astrophysical log(gf)
character*3 r_astgf_2 ! Source for astrogf
real*8 specid_2 ! [1/608.18] Species identifier
real*8 EP1_2 ! (cm-1) [0/771723.1] Lower Energy Level
real*4 J1_2 ! [0/159] J value for EP1
character*11 EP1id_2 ! EP1 level identification
real*8 EP2_2 ! (cm-2) [6200.7/778194.1] Upper Energy Level
real*4 J2_2 ! [0/160] J value for EP2
character*11 EP2id_2 ! EP2 level identification
real*4 Rad_2 ! [0/11.1]? Damping Rad
real*4 Sta_2 ! [-8/0]? Damping Stark
real*4 vdW_2 ! [-8.4/0]? Damping vdW
integer*4 unlte_2 ! [0/99]? NLTE level number upper
integer*4 lnlte_2 ! [0/99]? NLTE level number lower
integer*4 iso1_2 ! [0/65]? First isotope number
real*4 hyp_2 ! ([-]) [-9.999/0]? Hyperfine component log fractional
* strength
integer*4 iso2_2 ! [0/65]? Second isotope number
real*4 isof_2 ! ([-]) [-4/0]? Log isotopic abundance fraction
integer*4 hE1_2 ! (mK) [-520/425]? Hyperfine shift for 1st level to be
* added to E1
integer*4 hE2_2 ! (mK) [-603/469]? Hyperfine shift for 1st level to be
* added to E2
character*1 F0_2 ! [F] Hyperfine F symbol
integer*4 F1_2 ! [0/9]? Hyperfine F for the first level
character*1 Note1_2 ! [?z] Note on character of hyperfine data
* for first level (z=none; ?=guessed)
character*1 S_2 ! [-] The symbol "-" for legibility
integer*4 F2_2 ! [0/9]? Hyperfine F' for the second level
character*1 note2_2 ! [?z] Note on character of hyperfine data for
* second level (z=none; ?=guessed)
integer*4 g1_2 ! [-720/3934]? Lande g for first level times 1000
integer*4 g2_2 ! [-689/4006]? Lande g for second level times 1000
character*3 vdWorg_2 ! Source for the original vdW damping
real*4 vdWast_2 ! [-8.1/-5.2]? Astrophysical vdW damping
C=============================================================================
C Loading file 'table6.dat' ! Missing lines
C Format for file interpretation
1 format(F7.1,1X,I3,A1,1X,A10)
C Effective file loading
open(unit=1,status='old',file=
+'table6.dat')
write(6,*) '....Loading file: table6.dat'
do i__=1,445
read(1,'(A23)')ar__
read(ar__,1)lambda,EW,f_EW,Notes
if(ar__(9:11) .EQ. '') EW = iNULL__
c ..............Just test output...........
write(6,1)lambda,EW,f_EW,Notes
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'table7.dat' ! *ASPCAP DR12 (20131216) line list
C Format for file interpretation
2 format(
+ F9.4,1X,F7.3,1X,F7.3,1X,F4.2,1X,A3,F7.3,1X,A3,1X,F8.2,F12.3,
+ F5.1,A11,F12.3,F5.1,A11,F6.2,F6.2,F6.2,1X,I2,I2,I3,F6.3,I3,
+ F6.3,I5,I5,A1,I1,A1,A1,I1,A1,I5,I5,A3,F6.2)
C Effective file loading
open(unit=1,status='old',file=
+'table7.dat')
write(6,*) '....Loading file: table7.dat'
do i__=1,134457
read(1,'(A186)')ar__1
read(ar__1,2)
+ lambda_1,orggf,newgf,e_newgf,r_newgf,astgf,r_astgf,specid,EP1,
+ J1,EP1id,EP2,J2,EP2id,Rad,Sta,vdW,unlte,lnlte,iso1,hyp,iso2,
+ isof,hE1,hE2,F0,F1,Note1,S,F2,note2,g1,g2,vdWorg,vdWast
if(ar__1(11:17) .EQ. '') orggf = rNULL__
if(ar__1(19:25) .EQ. '') newgf = rNULL__
if(ar__1(27:30) .EQ. '') e_newgf = rNULL__
if(ar__1(35:41) .EQ. '') astgf = rNULL__
if(ar__1(111:116) .EQ. '') Rad = rNULL__
if(ar__1(117:122) .EQ. '') Sta = rNULL__
if(ar__1(123:128) .EQ. '') vdW = rNULL__
if(ar__1(130:131) .EQ. '') unlte = iNULL__
if(ar__1(132:133) .EQ. '') lnlte = iNULL__
if(ar__1(134:136) .EQ. '') iso1 = iNULL__
if(ar__1(137:142) .EQ. '') hyp = rNULL__
if(ar__1(143:145) .EQ. '') iso2 = iNULL__
if(ar__1(146:151) .EQ. '') isof = rNULL__
if(ar__1(152:156) .EQ. '') hE1 = iNULL__
if(ar__1(157:161) .EQ. '') hE2 = iNULL__
if(ar__1(163:163) .EQ. '') F1 = iNULL__
if(ar__1(166:166) .EQ. '') F2 = iNULL__
if(ar__1(168:172) .EQ. '') g1 = iNULL__
if(ar__1(173:177) .EQ. '') g2 = iNULL__
if(ar__1(181:186) .EQ. '') vdWast = rNULL__
c ..............Just test output...........
write(6,2)
+ lambda_1,orggf,newgf,e_newgf,r_newgf,astgf,r_astgf,specid,EP1,
+ J1,EP1id,EP2,J2,EP2id,Rad,Sta,vdW,unlte,lnlte,iso1,hyp,iso2,
+ isof,hE1,hE2,F0,F1,Note1,S,F2,note2,g1,g2,vdWorg,vdWast
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'table8.dat' ! *ASPCAP INT (20120216) line list
C Format for file interpretation
3 format(
+ F9.4,1X,F7.3,1X,F7.3,1X,F4.2,1X,A3,F7.3,1X,A3,1X,F8.2,F12.3,
+ F5.1,A11,F12.3,F5.1,A11,F6.2,F6.2,F6.2,1X,I2,I2,I3,F6.3,I3,
+ F6.3,I5,I5,A1,I1,A1,A1,I1,A1,I5,I5,A3,F6.2)
C Effective file loading
open(unit=1,status='old',file=
+'table8.dat')
write(6,*) '....Loading file: table8.dat'
do i__=1,134230
read(1,'(A186)')ar__2
read(ar__2,3)
+ lambda_2,orggf_1,newgf_1,e_newgf_1,r_newgf_1,astgf_1,
+ r_astgf_1,specid_1,EP1_1,J1_1,EP1id_1,EP2_1,J2_1,EP2id_1,
+ Rad_1,Sta_1,vdW_1,unlte_1,lnlte_1,iso1_1,hyp_1,iso2_1,isof_1,
+ hE1_1,hE2_1,F0_1,F1_1,Note1_1,S_1,F2_1,note2_1,g1_1,g2_1,
+ vdWorg_1,vdWast_1
if(ar__2(11:17) .EQ. '') orggf_1 = rNULL__
if(ar__2(19:25) .EQ. '') newgf_1 = rNULL__
if(ar__2(27:30) .EQ. '') e_newgf_1 = rNULL__
if(ar__2(35:41) .EQ. '') astgf_1 = rNULL__
if(ar__2(111:116) .EQ. '') Rad_1 = rNULL__
if(ar__2(117:122) .EQ. '') Sta_1 = rNULL__
if(ar__2(123:128) .EQ. '') vdW_1 = rNULL__
if(ar__2(130:131) .EQ. '') unlte_1 = iNULL__
if(ar__2(132:133) .EQ. '') lnlte_1 = iNULL__
if(ar__2(134:136) .EQ. '') iso1_1 = iNULL__
if(ar__2(137:142) .EQ. '') hyp_1 = rNULL__
if(ar__2(143:145) .EQ. '') iso2_1 = iNULL__
if(ar__2(146:151) .EQ. '') isof_1 = rNULL__
if(ar__2(152:156) .EQ. '') hE1_1 = iNULL__
if(ar__2(157:161) .EQ. '') hE2_1 = iNULL__
if(ar__2(163:163) .EQ. '') F1_1 = iNULL__
if(ar__2(166:166) .EQ. '') F2_1 = iNULL__
if(ar__2(168:172) .EQ. '') g1_1 = iNULL__
if(ar__2(173:177) .EQ. '') g2_1 = iNULL__
if(ar__2(181:186) .EQ. '') vdWast_1 = rNULL__
c ..............Just test output...........
write(6,3)
+ lambda_2,orggf_1,newgf_1,e_newgf_1,r_newgf_1,astgf_1,
+ r_astgf_1,specid_1,EP1_1,J1_1,EP1id_1,EP2_1,J2_1,EP2id_1,
+ Rad_1,Sta_1,vdW_1,unlte_1,lnlte_1,iso1_1,hyp_1,iso2_1,isof_1,
+ hE1_1,hE2_1,F0_1,F1_1,Note1_1,S_1,F2_1,note2_1,g1_1,g2_1,
+ vdWorg_1,vdWast_1
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'table9.dat' ! *ASPCAP DR10 (20110510) line list
C Format for file interpretation
4 format(
+ F9.4,1X,F7.3,1X,F7.3,1X,F4.2,1X,A3,F7.3,1X,A3,1X,F8.2,F12.3,
+ F5.1,A11,F12.3,F5.1,A11,F6.2,F6.2,F6.2,1X,I2,I2,I3,F6.3,I3,
+ F6.3,I5,I5,A1,I1,A1,A1,I1,A1,I5,I5,A3,F6.2)
C Effective file loading
open(unit=1,status='old',file=
+'table9.dat')
write(6,*) '....Loading file: table9.dat'
do i__=1,134052
read(1,'(A186)')ar__3
read(ar__3,4)
+ lambda_3,orggf_2,newgf_2,e_newgf_2,r_newgf_2,astgf_2,
+ r_astgf_2,specid_2,EP1_2,J1_2,EP1id_2,EP2_2,J2_2,EP2id_2,
+ Rad_2,Sta_2,vdW_2,unlte_2,lnlte_2,iso1_2,hyp_2,iso2_2,isof_2,
+ hE1_2,hE2_2,F0_2,F1_2,Note1_2,S_2,F2_2,note2_2,g1_2,g2_2,
+ vdWorg_2,vdWast_2
if(ar__3(11:17) .EQ. '') orggf_2 = rNULL__
if(ar__3(19:25) .EQ. '') newgf_2 = rNULL__
if(ar__3(27:30) .EQ. '') e_newgf_2 = rNULL__
if(ar__3(35:41) .EQ. '') astgf_2 = rNULL__
if(ar__3(111:116) .EQ. '') Rad_2 = rNULL__
if(ar__3(117:122) .EQ. '') Sta_2 = rNULL__
if(ar__3(123:128) .EQ. '') vdW_2 = rNULL__
if(ar__3(130:131) .EQ. '') unlte_2 = iNULL__
if(ar__3(132:133) .EQ. '') lnlte_2 = iNULL__
if(ar__3(134:136) .EQ. '') iso1_2 = iNULL__
if(ar__3(137:142) .EQ. '') hyp_2 = rNULL__
if(ar__3(143:145) .EQ. '') iso2_2 = iNULL__
if(ar__3(146:151) .EQ. '') isof_2 = rNULL__
if(ar__3(152:156) .EQ. '') hE1_2 = iNULL__
if(ar__3(157:161) .EQ. '') hE2_2 = iNULL__
if(ar__3(163:163) .EQ. '') F1_2 = iNULL__
if(ar__3(166:166) .EQ. '') F2_2 = iNULL__
if(ar__3(168:172) .EQ. '') g1_2 = iNULL__
if(ar__3(173:177) .EQ. '') g2_2 = iNULL__
if(ar__3(181:186) .EQ. '') vdWast_2 = rNULL__
c ..............Just test output...........
write(6,4)
+ lambda_3,orggf_2,newgf_2,e_newgf_2,r_newgf_2,astgf_2,
+ r_astgf_2,specid_2,EP1_2,J1_2,EP1id_2,EP2_2,J2_2,EP2id_2,
+ Rad_2,Sta_2,vdW_2,unlte_2,lnlte_2,iso1_2,hyp_2,iso2_2,isof_2,
+ hE1_2,hE2_2,F0_2,F1_2,Note1_2,S_2,F2_2,note2_2,g1_2,g2_2,
+ vdWorg_2,vdWast_2
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
stop
end