Conversion of standardized ReadMe file for
file /./ftp/cats/J/AN/347/70071 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-May-15
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/AN/347/70071 Circumstellar atomic radiation-driven dynamics (Lehtmets+, 2026)
*================================================================================
*Investigating Circumstellar Atomic Radiation-driven Dynamics.
* Lehtmets A., Kama M., Fossati L., Aret A.
* <Astron. Nachr. 347, e70071 (2026)>
* =2026AN....34770071L (SIMBAD/NED BibCode)
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea1.dat' ! Chosen parameters for calculation of beta ratios
and velocity boosts
integer*4 nr__
parameter (nr__=9) ! Number of records
character*23 ar__ ! Full-size record
integer*4 Age (nr__) ! (Myr) [20] Stellar age
real*4 Mass (nr__) ! (Msun) [0.75/6.20] Stellar mass
real*4 Radius (nr__) ! (Rsun) [0.576/2.370] Stellar radius
integer*4 Teff (nr__) ! (K) [4000/19000] Stellar effective temperature
real*4 logg (nr__) ! ([cm/s2]) [4.5] Stellar surface gravity in
* logarithmic scale
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea2.dat' ! Beta ratios of all investigated atoms and ions
across 9 different stellar effective temperatures
integer*4 nr__1
parameter (nr__1=76) ! Number of records
character*253 ar__1 ! Full-size record
character*6 Ion (nr__1) ! Ion name (e.g. H_I, He_II)
real*4 B1 (nr__1) ! Beta ratio value at 4000 K
real*4 ea_B1 (nr__1) ! Beta ratio absolute error at 4000 K
real*4 er_B1 (nr__1) ! (%) Beta ratio relative error (%) at 4000 K
real*4 B2 (nr__1) ! Beta ratio value at 4500 K
real*4 ea_B2 (nr__1) ! Beta ratio absolute error at 4500 K
real*4 er_B2 (nr__1) ! (%) Beta ratio relative error (%) at 4500 K
real*4 B3 (nr__1) ! Beta ratio value at 5000 K
real*4 ea_B3 (nr__1) ! Beta ratio absolute error at 5000 K
real*4 er_B3 (nr__1) ! (%) Beta ratio relative error at 5000 K
real*4 B4 (nr__1) ! Beta ratio value at 6000 K
real*4 ea_B4 (nr__1) ! Beta ratio absolute error at 6000 K
real*4 er_B4 (nr__1) ! (%) Beta ratio relative error (%) at 6000 K
real*4 B5 (nr__1) ! Beta ratio value at 8000 K
real*4 ea_B5 (nr__1) ! Beta ratio absolute error at 8000 K
real*4 er_B5 (nr__1) ! (%) Beta ratio relative error (%) at 8000 K
real*4 B6 (nr__1) ! Beta ratio value at 10000 K
real*4 ea_B6 (nr__1) ! Beta ratio absolute error at 10000 K
real*4 er_B6 (nr__1) ! (%) Beta ratio relative error (%) at 10000 K
real*4 B7 (nr__1) ! Beta ratio value at 13000 K
real*4 ea_B7 (nr__1) ! Beta ratio absolute error at 13000 K
real*4 er_B7 (nr__1) ! (%) Beta ratio relative error (%) at 13000 K
real*4 B8 (nr__1) ! Beta ratio value at 17000 K
real*4 ea_B8 (nr__1) ! Beta ratio absolute error at 17000 K
real*4 er_B8 (nr__1) ! (%) Beta ratio relative error (%) at 17000 K
real*4 B9 (nr__1) ! Beta ratio value at 19000 K
real*4 ea_B9 (nr__1) ! Beta ratio absolute error at 19000 K
real*4 er_B9 (nr__1) ! (%) Beta ratio relative error (%) at 19000 K
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea3.dat' ! Ionisation rates of neutral atoms
integer*4 nr__2
parameter (nr__2=28) ! Number of records
character*85 ar__2 ! Full-size record
character*4 Ion_1 (nr__2) ! Ion name (e.g. H_I, He_I)
real*4 I1 (nr__2) ! (10+10s-1) Ionisation rate value at 4000 K
real*4 I2 (nr__2) ! (10+10s-1) Ionisation rate value at 4500 K
real*4 I3 (nr__2) ! (10+10s-1) Ionisation rate value at 5000 K
real*4 I4 (nr__2) ! (10+10s-1) Ionisation rate value at 6000 K
real*4 I5 (nr__2) ! (10+10s-1) Ionisation rate value at 8000 K
real*4 I6 (nr__2) ! (10+10s-1) Ionisation rate value at 10000 K
real*4 I7 (nr__2) ! (10+10s-1) Ionisation rate value at 13000 K
real*4 I8 (nr__2) ! (10+10s-1) Ionisation rate value at 17000 K
real*4 I9 (nr__2) ! (10+10s-1) Ionisation rate value at 19000 K
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea4.dat' ! Velocity boosts of neutral atoms
integer*4 nr__3
parameter (nr__3=28) ! Number of records
character*121 ar__3 ! Full-size record
character*4 Ion_2 (nr__3) ! Ion name (e.g. H_I, He_I)
real*8 Vb1 (nr__3) ! (km/s) ?=- Velocity boosts value at 4000 K (1)
real*8 Vb2 (nr__3) ! (km/s) ?=- Velocity boosts value at 4500 K (1)
real*8 Vb3 (nr__3) ! (km/s) ?=- Velocity boosts value at 5000 K (1)
real*8 Vb4 (nr__3) ! (km/s) ?=- Velocity boosts value at 6000 K (1)
real*8 Vb5 (nr__3) ! (km/s) ?=- Velocity boosts value at 8000 K (1)
real*8 Vb6 (nr__3) ! (km/s) ?=- Velocity boosts value at 10000 K (1)
real*8 Vb7 (nr__3) ! (km/s) ?=- Velocity boosts value at 13000 K (1)
real*8 Vb8 (nr__3) ! (km/s) ?=- Velocity boosts value at 17000 K (1)
real*8 Vb9 (nr__3) ! (km/s) ?=- Velocity boosts value at 19000 K (1)
*Note (1): "---" means that the beta ratio for that species and at that
* stellar effective temperature is under 0.5.
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea5.dat' ! Beta ratio values from this work with photospheric
emission and modified stellar EUV compared to
Fernandez et al., 2006ApJ...643...509K results
at 8000K stellar effective temperature
integer*4 nr__4
parameter (nr__4=81) ! Number of records
character*118 ar__4 ! Full-size record
character*6 Ion_3 (nr__4) ! Ion name (e.g. H_I, He_II)
real*4 BPE (nr__4) ! ?=- Beta ratio value from this work with
* photospheric emission (1)
real*4 e_BPE (nr__4) ! ?=- Beta ratio value from this work with
* photospheric emission error (1)
real*4 BMS (nr__4) ! ?=- Beta ratio value from this work with
* modified Stellar EUV (1)
real*4 e_BMS (nr__4) ! ?=- Beta ratio value from this work with
* modified Stellar EUV error (1)
real*8 BF06 (nr__4) ! ?=- Beta ratio value from Fernandez et al.,
* 2006ApJ...643...509K (1)
real*4 e_BF06 (nr__4) ! ?=- Beta ratio value from Fernandez et al.,
* 2006ApJ...643...509K error (1)
*Note (1): '0' means that the value is lower than 10^-30^,
* '---' means that there is no available linelist data.
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea6.dat' ! Velocity boost values from this work with
photospheric emission and modified stellar EUV
compared to Fernandez et al., 2006ApJ...643...509K
results at 8000K stellar effective temperature
integer*4 nr__5
parameter (nr__5=19) ! Number of records
character*41 ar__5 ! Full-size record
character*4 Ion_4 (nr__5) ! Ion name (e.g. H_I, He_I)
real*8 VbPE (nr__5) ! (km/s) Velocity boost value from this work with
* photospheric emission
real*8 VbMS (nr__5) ! (km/s) Velocity boost value from this work with
* modified stellar EUV
real*8 VbF06 (nr__5) ! (km/s) Velocity boost value from
* Fernandez et al., 2006ApJ...643...509K
C=============================================================================
C Loading file 'tablea1.dat' ! Chosen parameters for calculation of beta ratios
* and velocity boosts
C Format for file interpretation
1 format(I2,1X,F4.2,1X,F5.3,1X,I5,1X,F3.1)
C Effective file loading
open(unit=1,status='old',file=
+'tablea1.dat')
write(6,*) '....Loading file: tablea1.dat'
do i__=1,9
read(1,'(A23)')ar__
read(ar__,1)
+ Age(i__),Mass(i__),Radius(i__),Teff(i__),logg(i__)
c ..............Just test output...........
write(6,1)
+ Age(i__),Mass(i__),Radius(i__),Teff(i__),logg(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'tablea2.dat' ! Beta ratios of all investigated atoms and ions
* across 9 different stellar effective temperatures
C Format for file interpretation
2 format(
+ A6,1X,E9.2,1X,E9.2,1X,E8.2,1X,E9.2,1X,E9.2,1X,E8.2,1X,E8.2,1X,
+ E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,
+ 1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,
+ E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2)
C Effective file loading
open(unit=1,status='old',file=
+'tablea2.dat')
write(6,*) '....Loading file: tablea2.dat'
do i__=1,76
read(1,'(A253)')ar__1
read(ar__1,2)
+ Ion(i__),B1(i__),ea_B1(i__),er_B1(i__),B2(i__),ea_B2(i__),
+ er_B2(i__),B3(i__),ea_B3(i__),er_B3(i__),B4(i__),ea_B4(i__),
+ er_B4(i__),B5(i__),ea_B5(i__),er_B5(i__),B6(i__),ea_B6(i__),
+ er_B6(i__),B7(i__),ea_B7(i__),er_B7(i__),B8(i__),ea_B8(i__),
+ er_B8(i__),B9(i__),ea_B9(i__),er_B9(i__)
c ..............Just test output...........
write(6,2)
+ Ion(i__),B1(i__),ea_B1(i__),er_B1(i__),B2(i__),ea_B2(i__),
+ er_B2(i__),B3(i__),ea_B3(i__),er_B3(i__),B4(i__),ea_B4(i__),
+ er_B4(i__),B5(i__),ea_B5(i__),er_B5(i__),B6(i__),ea_B6(i__),
+ er_B6(i__),B7(i__),ea_B7(i__),er_B7(i__),B8(i__),ea_B8(i__),
+ er_B8(i__),B9(i__),ea_B9(i__),er_B9(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'tablea3.dat' ! Ionisation rates of neutral atoms
C Format for file interpretation
3 format(
+ A4,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,E8.2,1X,
+ E8.2,1X,E8.2)
C Effective file loading
open(unit=1,status='old',file=
+'tablea3.dat')
write(6,*) '....Loading file: tablea3.dat'
do i__=1,28
read(1,'(A85)')ar__2
read(ar__2,3)
+ Ion_1(i__),I1(i__),I2(i__),I3(i__),I4(i__),I5(i__),I6(i__),
+ I7(i__),I8(i__),I9(i__)
c ..............Just test output...........
write(6,3)
+ Ion_1(i__),I1(i__),I2(i__),I3(i__),I4(i__),I5(i__),I6(i__),
+ I7(i__),I8(i__),I9(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'tablea4.dat' ! Velocity boosts of neutral atoms
C Format for file interpretation
4 format(
+ A4,1X,F10.6,1X,F11.7,F12.7,1X,F15.10,F14.9,1X,F13.8,1X,F13.8,
+ 1X,F12.7,F11.6)
C Effective file loading
open(unit=1,status='old',file=
+'tablea4.dat')
write(6,*) '....Loading file: tablea4.dat'
do i__=1,28
read(1,'(A121)')ar__3
read(ar__3,4)
+ Ion_2(i__),Vb1(i__),Vb2(i__),Vb3(i__),Vb4(i__),Vb5(i__),
+ Vb6(i__),Vb7(i__),Vb8(i__),Vb9(i__)
if (idig(ar__3(6:15)).EQ.0) Vb1(i__) = rNULL__
if (idig(ar__3(17:27)).EQ.0) Vb2(i__) = rNULL__
if (idig(ar__3(28:39)).EQ.0) Vb3(i__) = rNULL__
if (idig(ar__3(41:55)).EQ.0) Vb4(i__) = rNULL__
if (idig(ar__3(56:69)).EQ.0) Vb5(i__) = rNULL__
if (idig(ar__3(71:83)).EQ.0) Vb6(i__) = rNULL__
if (idig(ar__3(85:97)).EQ.0) Vb7(i__) = rNULL__
if (idig(ar__3(99:110)).EQ.0) Vb8(i__) = rNULL__
if (idig(ar__3(111:121)).EQ.0) Vb9(i__) = rNULL__
c ..............Just test output...........
write(6,4)
+ Ion_2(i__),Vb1(i__),Vb2(i__),Vb3(i__),Vb4(i__),Vb5(i__),
+ Vb6(i__),Vb7(i__),Vb8(i__),Vb9(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'tablea5.dat' ! Beta ratio values from this work with photospheric
* emission and modified stellar EUV compared to
* Fernandez et al., 2006ApJ...643...509K results
* at 8000K stellar effective temperature
C Format for file interpretation
5 format(
+ A6,1X,E20.16,1X,E20.15,1X,E20.15,1X,E20.15,1X,F15.10,1X,E11.7)
C Effective file loading
open(unit=1,status='old',file=
+'tablea5.dat')
write(6,*) '....Loading file: tablea5.dat'
do i__=1,81
read(1,'(A118)')ar__4
read(ar__4,5)
+ Ion_3(i__),BPE(i__),e_BPE(i__),BMS(i__),e_BMS(i__),BF06(i__),
+ e_BF06(i__)
if (idig(ar__4(8:27)).EQ.0) BPE(i__) = rNULL__
if (idig(ar__4(29:48)).EQ.0) e_BPE(i__) = rNULL__
if (idig(ar__4(50:69)).EQ.0) BMS(i__) = rNULL__
if (idig(ar__4(71:90)).EQ.0) e_BMS(i__) = rNULL__
if (idig(ar__4(92:106)).EQ.0) BF06(i__) = rNULL__
if (idig(ar__4(108:118)).EQ.0) e_BF06(i__) = rNULL__
c ..............Just test output...........
write(6,5)
+ Ion_3(i__),BPE(i__),e_BPE(i__),BMS(i__),e_BMS(i__),BF06(i__),
+ e_BF06(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'tablea6.dat' ! Velocity boost values from this work with
* photospheric emission and modified stellar EUV
* compared to Fernandez et al., 2006ApJ...643...509K
* results at 8000K stellar effective temperature
C Format for file interpretation
6 format(A4,1X,F14.9,1X,F13.8,1X,F7.4)
C Effective file loading
open(unit=1,status='old',file=
+'tablea6.dat')
write(6,*) '....Loading file: tablea6.dat'
do i__=1,19
read(1,'(A41)')ar__5
read(ar__5,6)Ion_4(i__),VbPE(i__),VbMS(i__),VbF06(i__)
c ..............Just test output...........
write(6,6)Ion_4(i__),VbPE(i__),VbMS(i__),VbF06(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