Conversion of standardized ReadMe file for
file /./ftp/cats/VI/144 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-Jun-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. VI/144 Nebular [OIII] collision strengths - SS3 (Storey+, 2015)
*================================================================================
*Effective collision strengths for excitation and de-excitation of nebular [OIII]
*optical and infrared lines with kappa distributed electron energies.
* Storey P.J., Sochi T.
* <Mon. Not. R. Astron. Soc. 449, 2974 (2015)>
* =2015MNRAS.449.2974S
* =2015yCat.6144....0S
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'levels.dat' ! Levels
integer*4 nr__
parameter (nr__=5) ! Number of records
character*107 ar__ ! Full-size record
integer*4 Index (nr__) ! [1/5] Level index
character*25 Level (nr__) ! Level designation
real*8 E (nr__) ! (cm-1) Experimental energy of level
character*9 File1 (nr__) ! File name Index->1 in subdirectory files (1)
character*9 File2 (nr__) ! File name Index->2, in subdirectory files (1)
character*9 File3 (nr__) ! File name Index->3, in subdirectory files (1)
character*9 File4 (nr__) ! File name Index->4, in subdirectory files (1)
character*9 File5 (nr__) ! File name Index->5, in subdirectory files (1)
*Note (1): Upsilon files (excitation from lower to upper state) are named
* up_mn.dat and Downsilon files i(de-excitation from upper to lower state)
* are named do_mn.dat, where m=1,2,3,4 and n=2,3,4,5 with m<n.
* The indices m and n refer respectively to the lower and upper level index.
* The Upsilon data are scaled by a multiplicative factor of exp(-dE_ij_/(kT))
* where dE_ij_ is the energy gap between the lower and upper levels while k
* and T are the Boltzmann constant and electron temperature respectively.
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'files/*' ! Individual effective collision strength files
integer*4 nr__1
parameter (nr__1=20) ! Number of records
character*1406 ar__1 ! Full-size record
real*8 kappa (nr__1) ! [1.6/1000000] {kappa} value (2)
real*4 logECS1 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.000 (100K) (1)
real*4 logECS2 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.025 (106K) (1)
real*4 logECS3 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.050 (112K) (1)
real*4 logECS4 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.075 (119K) (1)
real*4 logECS5 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.100 (126K) (1)
real*4 logECS6 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.125 (133K) (1)
real*4 logECS7 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.150 (141K) (1)
real*4 logECS8 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.175 (150K) (1)
real*4 logECS9 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.200 (158K) (1)
real*4 logECS10 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.225 (168K) (1)
real*4 logECS11 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.250 (178K) (1)
real*4 logECS12 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.275 (188K) (1)
real*4 logECS13 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.300 (200K) (1)
real*4 logECS14 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.325 (211K) (1)
real*4 logECS15 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.350 (224K) (1)
real*4 logECS16 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.275 (188K) (1)
real*4 logECS17 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.400 (251K) (1)
real*4 logECS18 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.425 (266K) (1)
real*4 logECS19 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.450 (282K) (1)
real*4 logECS20 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.475 (299K) (1)
real*4 logECS21 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.500 (316K) (1)
real*4 logECS22 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.525 (335K) (1)
real*4 logECS23 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.550 (355K) (1)
real*4 logECS24 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.575 (376K) (1)
real*4 logECS25 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.600 (398K) (1)
real*4 logECS26 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.625 (422K) (1)
real*4 logECS27 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.650 (447K) (1)
real*4 logECS28 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.675 (473K) (1)
real*4 logECS29 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.700 (501K) (1)
real*4 logECS30 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.725 (531K) (1)
real*4 logECS31 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.750 (562K) (1)
real*4 logECS32 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.775 (596K) (1)
real*4 logECS33 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.800 (631K) (1)
real*4 logECS34 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.825 (668K) (1)
real*4 logECS35 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.850 (708K) (1)
real*4 logECS36 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.875 (750K) (1)
real*4 logECS37 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.900 (794K) (1)
real*4 logECS38 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.925 (841K) (1)
real*4 logECS39 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.950 (891K) (1)
real*4 logECS40 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=2.975 (944K) (1)
real*4 logECS41 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.000 (1000K) (1)
real*4 logECS42 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.025 (1059K) (1)
real*4 logECS43 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.050 (1122K) (1)
real*4 logECS44 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.075 (1189K) (1)
real*4 logECS45 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.100 (1259K) (1)
real*4 logECS46 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.125 (1334K) (1)
real*4 logECS47 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.150 (1413K) (1)
real*4 logECS48 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.175 (1496K) (1)
real*4 logECS49 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.200 (1585K) (1)
real*4 logECS50 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.225 (1679K) (1)
real*4 logECS51 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.250 (1778K) (1)
real*4 logECS52 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.275 (1884K) (1)
real*4 logECS53 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.300 (1995K) (1)
real*4 logECS54 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.325 (2113K) (1)
real*4 logECS55 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.350 (2239K) (1)
real*4 logECS56 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.375 (2371K) (1)
real*4 logECS57 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.400 (2512K) (1)
real*4 logECS58 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.425 (2661K) (1)
real*4 logECS59 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.450 (2818K) (1)
real*4 logECS60 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.475 (2985K) (1)
real*4 logECS61 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.500 (3162K) (1)
real*4 logECS62 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.525 (3350K) (1)
real*4 logECS63 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.550 (3548K) (1)
real*4 logECS64 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.575 (3758K) (1)
real*4 logECS65 (nr__1) ! ([-]) ?=99999999 10-based logarithm of effective
* collision strength, logT=3.600 (3981K) (1)
real*4 logECS66 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.625 (4217K)
real*4 logECS67 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.650 (4467K)
real*4 logECS68 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.675 (4732K)
real*4 logECS69 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.700 (5012K)
real*4 logECS70 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.725 (5309K)
real*4 logECS71 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.750 (5623K)
real*4 logECS72 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.775 (5957K)
real*4 logECS73 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.800 (6310K)
real*4 logECS74 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.825 (6683K)
real*4 logECS75 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.850 (7079K)
real*4 logECS76 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.875 (7499K)
real*4 logECS77 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.900 (7943K)
real*4 logECS78 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.925 (8414K)
real*4 logECS79 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.950 (8913K)
real*4 logECS80 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=3.975 (9441K)
real*4 logECS81 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.000 (10000K)
real*4 logECS82 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.025 (10593K)
real*4 logECS83 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.050 (11220K)
real*4 logECS84 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.075 (11885K)
real*4 logECS85 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.100 (12589K)
real*4 logECS86 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.125 (13335K)
real*4 logECS87 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.150 (14125K)
real*4 logECS88 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.175 (14962K)
real*4 logECS89 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.200 (15849K)
real*4 logECS90 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.225 (16788K)
real*4 logECS91 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.250 (17783K)
real*4 logECS92 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.275 (18836K)
real*4 logECS93 (nr__1) ! ([-]) 10-based logarithm of effective
* collision strength, logT=4.300 (19953K)
*Note (1): Some values of the logarithmic scaled Upsilon are replaced by the
* '99999999' marker because they fall below certain limits and hence they are
* practically useless.
*Note (2): {kappa} is the parameter of the electron distribution function:
* f(E,T,{kappa}) given in Eq.(4) (becomes Maxwllian when {kappa}={infinity})
C=============================================================================
C Loading file 'levels.dat' ! Levels
C Format for file interpretation
1 format(I1,1X,A25,1X,F8.2,1X,A9,1X,A9,1X,A9,1X,A9,1X,A9)
C Effective file loading
open(unit=1,status='old',file=
+'levels.dat')
write(6,*) '....Loading file: levels.dat'
do i__=1,5
read(1,'(A107)')ar__
read(ar__,1)
+ Index(i__),Level(i__),E(i__),File1(i__),File2(i__),File3(i__),
+ File4(i__),File5(i__)
c ..............Just test output...........
write(6,1)
+ Index(i__),Level(i__),E(i__),File1(i__),File2(i__),File3(i__),
+ File4(i__),File5(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'files/*' ! Individual effective collision strength files
C Format for file interpretation
2 format(
+ F11.3,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,
+ 3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,
+ E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,
+ 3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,
+ E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,
+ 3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,
+ E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,
+ 3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,
+ E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,
+ 3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,
+ E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,
+ 3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,
+ E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,
+ 3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,E12.6,3X,
+ E12.6,3X,E12.6,3X,E12.6)
C Effective file loading
open(unit=1,status='old',file=
+'files/*')
write(6,*) '....Loading file: files/*'
do i__=1,20
read(1,'(A1406)')ar__1
read(ar__1,2)
+ kappa(i__),logECS1(i__),logECS2(i__),logECS3(i__),
+ logECS4(i__),logECS5(i__),logECS6(i__),logECS7(i__),
+ logECS8(i__),logECS9(i__),logECS10(i__),logECS11(i__),
+ logECS12(i__),logECS13(i__),logECS14(i__),logECS15(i__),
+ logECS16(i__),logECS17(i__),logECS18(i__),logECS19(i__),
+ logECS20(i__),logECS21(i__),logECS22(i__),logECS23(i__),
+ logECS24(i__),logECS25(i__),logECS26(i__),logECS27(i__),
+ logECS28(i__),logECS29(i__),logECS30(i__),logECS31(i__),
+ logECS32(i__),logECS33(i__),logECS34(i__),logECS35(i__),
+ logECS36(i__),logECS37(i__),logECS38(i__),logECS39(i__),
+ logECS40(i__),logECS41(i__),logECS42(i__),logECS43(i__),
+ logECS44(i__),logECS45(i__),logECS46(i__),logECS47(i__),
+ logECS48(i__),logECS49(i__),logECS50(i__),logECS51(i__),
+ logECS52(i__),logECS53(i__),logECS54(i__),logECS55(i__),
+ logECS56(i__),logECS57(i__),logECS58(i__),logECS59(i__),
+ logECS60(i__),logECS61(i__),logECS62(i__),logECS63(i__),
+ logECS64(i__),logECS65(i__),logECS66(i__),logECS67(i__),
+ logECS68(i__),logECS69(i__),logECS70(i__),logECS71(i__),
+ logECS72(i__),logECS73(i__),logECS74(i__),logECS75(i__),
+ logECS76(i__),logECS77(i__),logECS78(i__),logECS79(i__),
+ logECS80(i__),logECS81(i__),logECS82(i__),logECS83(i__),
+ logECS84(i__),logECS85(i__),logECS86(i__),logECS87(i__),
+ logECS88(i__),logECS89(i__),logECS90(i__),logECS91(i__),
+ logECS92(i__),logECS93(i__)
c ..............Just test output...........
write(6,2)
+ kappa(i__),logECS1(i__),logECS2(i__),logECS3(i__),
+ logECS4(i__),logECS5(i__),logECS6(i__),logECS7(i__),
+ logECS8(i__),logECS9(i__),logECS10(i__),logECS11(i__),
+ logECS12(i__),logECS13(i__),logECS14(i__),logECS15(i__),
+ logECS16(i__),logECS17(i__),logECS18(i__),logECS19(i__),
+ logECS20(i__),logECS21(i__),logECS22(i__),logECS23(i__),
+ logECS24(i__),logECS25(i__),logECS26(i__),logECS27(i__),
+ logECS28(i__),logECS29(i__),logECS30(i__),logECS31(i__),
+ logECS32(i__),logECS33(i__),logECS34(i__),logECS35(i__),
+ logECS36(i__),logECS37(i__),logECS38(i__),logECS39(i__),
+ logECS40(i__),logECS41(i__),logECS42(i__),logECS43(i__),
+ logECS44(i__),logECS45(i__),logECS46(i__),logECS47(i__),
+ logECS48(i__),logECS49(i__),logECS50(i__),logECS51(i__),
+ logECS52(i__),logECS53(i__),logECS54(i__),logECS55(i__),
+ logECS56(i__),logECS57(i__),logECS58(i__),logECS59(i__),
+ logECS60(i__),logECS61(i__),logECS62(i__),logECS63(i__),
+ logECS64(i__),logECS65(i__),logECS66(i__),logECS67(i__),
+ logECS68(i__),logECS69(i__),logECS70(i__),logECS71(i__),
+ logECS72(i__),logECS73(i__),logECS74(i__),logECS75(i__),
+ logECS76(i__),logECS77(i__),logECS78(i__),logECS79(i__),
+ logECS80(i__),logECS81(i__),logECS82(i__),logECS83(i__),
+ logECS84(i__),logECS85(i__),logECS86(i__),logECS87(i__),
+ logECS88(i__),logECS89(i__),logECS90(i__),logECS91(i__),
+ logECS92(i__),logECS93(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
stop
end