Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/541/A143 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-Mar-28 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/541/A143 NLTE Corrections of the Ca lines (Spite+, 2012) *================================================================================ *NLTE determination of the calcium abundance and 3D corrections in *extremely metal-poor stars. * Spite M., Andrievsky S.M., Spite F., Caffau E., Korotin S.A., Bonifacio P., * Ludwig H.-G., Francois P., Cayrel R. * <Astron. Astrophys. 541, A143 (2012)> * =2012A&A...541A.143S C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'tablea1.dat' ! NLTE corrections for a grid of models with [Fe/H]=+0.0 integer*4 nr__ parameter (nr__=1407) ! Number of records character*36 ar__ ! Full-size record real*8 lambda (nr__) ! (0.1nm) [3900/12000] Wavelength of the line ({AA}) character*5 Ion (nr__) ! Species (Ca I or Ca II) integer*4 T (nr__) ! (K) [4750/7000] Temperature integer*4 logg (nr__) ! ([cm/s2]) [1/4] Surface gravity real*4 v_Fe_H_ (nr__) ! ([Sun]) [-3.5/0] Metallicity real*4 v_Ca_Fe_ (nr__) ! ([Sun]) [0/0.3] Ca abundance real*4 Corr (nr__) ! ?=- NLTE corrections (NLTE-LTE) c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'tablea2.dat' ! NLTE corrections for a grid of models with [Fe/H]=-1.0 integer*4 nr__1 parameter (nr__1=402) ! Number of records character*36 ar__1 ! Full-size record real*8 lambda_1 (nr__1) ! (0.1nm) [3900/12000] Wavelength of the line ({AA}) character*5 Ion_1 (nr__1) ! Species (Ca I or Ca II) integer*4 T_1 (nr__1) ! (K) [4750/7000] Temperature integer*4 logg_1 (nr__1) ! ([cm/s2]) [1/4] Surface gravity real*4 v_Fe_H__1 (nr__1) ! ([Sun]) [-3.5/0] Metallicity real*4 v_Ca_Fe__1 (nr__1) ! ([Sun]) [0/0.3] Ca abundance real*4 Corr_1 (nr__1) ! ?=- NLTE corrections (NLTE-LTE) c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'tablea3.dat' ! NLTE corrections for a grid of models with [Fe/H]=-2.0 integer*4 nr__2 parameter (nr__2=1608) ! Number of records character*36 ar__2 ! Full-size record real*8 lambda_2 (nr__2) ! (0.1nm) [3900/12000] Wavelength of the line ({AA}) character*5 Ion_2 (nr__2) ! Species (Ca I or Ca II) integer*4 T_2 (nr__2) ! (K) [4750/7000] Temperature integer*4 logg_2 (nr__2) ! ([cm/s2]) [1/4] Surface gravity real*4 v_Fe_H__2 (nr__2) ! ([Sun]) [-3.5/0] Metallicity real*4 v_Ca_Fe__2 (nr__2) ! ([Sun]) [0/0.3] Ca abundance real*4 Corr_2 (nr__2) ! ?=- NLTE corrections (NLTE-LTE) c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'tablea4.dat' ! NLTE corrections for a grid of models with [Fe/H]=-3.0 integer*4 nr__3 parameter (nr__3=1206) ! Number of records character*36 ar__3 ! Full-size record real*8 lambda_3 (nr__3) ! (0.1nm) [3900/12000] Wavelength of the line ({AA}) character*5 Ion_3 (nr__3) ! Species (Ca I or Ca II) integer*4 T_3 (nr__3) ! (K) [4750/7000] Temperature integer*4 logg_3 (nr__3) ! ([cm/s2]) [1/4] Surface gravity real*4 v_Fe_H__3 (nr__3) ! ([Sun]) [-3.5/0] Metallicity real*4 v_Ca_Fe__3 (nr__3) ! ([Sun]) [0/0.3] Ca abundance real*4 Corr_3 (nr__3) ! ?=- NLTE corrections (NLTE-LTE) c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'tablea5.dat' ! NLTE corrections for a grid of models with [Fe/H]=-3.5 integer*4 nr__4 parameter (nr__4=1273) ! Number of records character*36 ar__4 ! Full-size record real*8 lambda_4 (nr__4) ! (0.1nm) [3900/12000] Wavelength of the line ({AA}) character*5 Ion_4 (nr__4) ! Species (Ca I or Ca II) integer*4 T_4 (nr__4) ! (K) [4750/7000] Temperature integer*4 logg_4 (nr__4) ! ([cm/s2]) [1/4] Surface gravity real*4 v_Fe_H__4 (nr__4) ! ([Sun]) [-3.5/0] Metallicity real*4 v_Ca_Fe__4 (nr__4) ! ([Sun]) [0/0.3] Ca abundance real*4 Corr_4 (nr__4) ! ?=- NLTE corrections (NLTE-LTE) C============================================================================= C Loading file 'tablea1.dat' ! NLTE corrections for a grid of models with [Fe/H]=+0.0 C Format for file interpretation 1 format(F8.2,1X,A5,1X,I4,1X,I1,1X,F4.1,1X,F3.1,1X,F5.2) C Effective file loading open(unit=1,status='old',file= +'tablea1.dat') write(6,*) '....Loading file: tablea1.dat' do i__=1,1407 read(1,'(A36)')ar__ read(ar__,1) + lambda(i__),Ion(i__),T(i__),logg(i__),v_Fe_H_(i__), + v_Ca_Fe_(i__),Corr(i__) if (idig(ar__(32:36)).EQ.0) Corr(i__) = rNULL__ c ..............Just test output........... write(6,1) + lambda(i__),Ion(i__),T(i__),logg(i__),v_Fe_H_(i__), + v_Ca_Fe_(i__),Corr(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'tablea2.dat' ! NLTE corrections for a grid of models with [Fe/H]=-1.0 C Format for file interpretation 2 format(F8.2,1X,A5,1X,I4,1X,I1,1X,F4.1,1X,F3.1,1X,F5.2) C Effective file loading open(unit=1,status='old',file= +'tablea2.dat') write(6,*) '....Loading file: tablea2.dat' do i__=1,402 read(1,'(A36)')ar__1 read(ar__1,2) + lambda_1(i__),Ion_1(i__),T_1(i__),logg_1(i__),v_Fe_H__1(i__), + v_Ca_Fe__1(i__),Corr_1(i__) if (idig(ar__1(32:36)).EQ.0) Corr_1(i__) = rNULL__ c ..............Just test output........... write(6,2) + lambda_1(i__),Ion_1(i__),T_1(i__),logg_1(i__),v_Fe_H__1(i__), + v_Ca_Fe__1(i__),Corr_1(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'tablea3.dat' ! NLTE corrections for a grid of models with [Fe/H]=-2.0 C Format for file interpretation 3 format(F8.2,1X,A5,1X,I4,1X,I1,1X,F4.1,1X,F3.1,1X,F5.2) C Effective file loading open(unit=1,status='old',file= +'tablea3.dat') write(6,*) '....Loading file: tablea3.dat' do i__=1,1608 read(1,'(A36)')ar__2 read(ar__2,3) + lambda_2(i__),Ion_2(i__),T_2(i__),logg_2(i__),v_Fe_H__2(i__), + v_Ca_Fe__2(i__),Corr_2(i__) if (idig(ar__2(32:36)).EQ.0) Corr_2(i__) = rNULL__ c ..............Just test output........... write(6,3) + lambda_2(i__),Ion_2(i__),T_2(i__),logg_2(i__),v_Fe_H__2(i__), + v_Ca_Fe__2(i__),Corr_2(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'tablea4.dat' ! NLTE corrections for a grid of models with [Fe/H]=-3.0 C Format for file interpretation 4 format(F8.2,1X,A5,1X,I4,1X,I1,1X,F4.1,1X,F3.1,1X,F5.2) C Effective file loading open(unit=1,status='old',file= +'tablea4.dat') write(6,*) '....Loading file: tablea4.dat' do i__=1,1206 read(1,'(A36)')ar__3 read(ar__3,4) + lambda_3(i__),Ion_3(i__),T_3(i__),logg_3(i__),v_Fe_H__3(i__), + v_Ca_Fe__3(i__),Corr_3(i__) if (idig(ar__3(32:36)).EQ.0) Corr_3(i__) = rNULL__ c ..............Just test output........... write(6,4) + lambda_3(i__),Ion_3(i__),T_3(i__),logg_3(i__),v_Fe_H__3(i__), + v_Ca_Fe__3(i__),Corr_3(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'tablea5.dat' ! NLTE corrections for a grid of models with [Fe/H]=-3.5 C Format for file interpretation 5 format(F8.2,1X,A5,1X,I4,1X,I1,1X,F4.1,1X,F3.1,1X,F5.2) C Effective file loading open(unit=1,status='old',file= +'tablea5.dat') write(6,*) '....Loading file: tablea5.dat' do i__=1,1273 read(1,'(A36)')ar__4 read(ar__4,5) + lambda_4(i__),Ion_4(i__),T_4(i__),logg_4(i__),v_Fe_H__4(i__), + v_Ca_Fe__4(i__),Corr_4(i__) if (idig(ar__4(32:36)).EQ.0) Corr_4(i__) = rNULL__ c ..............Just test output........... write(6,5) + lambda_4(i__),Ion_4(i__),T_4(i__),logg_4(i__),v_Fe_H__4(i__), + v_Ca_Fe__4(i__),Corr_4(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end C Locate position of first digit in string; or return 0 integer function idig(c) character*(*) c character*1 c1 integer lc,i lc=len(c) idig=0 do i=1,lc if(c(i:i).ne.' ') go to 1 end do 1 if(i.gt.lc) return c1=c(i:i) if(c1.eq.'.'.or.c1.eq.'-'.or.c1.eq.'+') i=i+1 if(i.gt.lc) return c1=c(i:i) if(c1.ge.'0'.and.c1.le.'9') idig=i return end