Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/610/A57 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-Apr-20 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/610/A57 Inelastic O+H collision data (Barklem, 2018) *================================================================================ *Excitation and charge transfer in low-energy hydrogen atom collisions with *neutral oxygen. * Barklem P.S. * <Astron. Astrophys. 610, A57 (2018)> * =2018A&A...610A..57B (SIMBAD/NED BibCode) C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'states.dat' ! States and their energies integer*4 nr__ parameter (nr__=21) ! Number of records character*27 ar__ ! Full-size record integer*4 Index (nr__) ! [1/21] Index character*12 Label (nr__) ! Term label real*8 E (nr__) ! (cm-1) Term energy in 1/cm c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'list.dat' ! List of files in subdirectory files integer*4 nr__1 parameter (nr__1=60) ! Number of records character*97 ar__1 ! Full-size record character*13 FileName (nr__1) ! Name of the file in subdirectory files character*83 Title (nr__1) ! Title of the file c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'files/*' ! Individual rate coefficients files integer*4 nr__2 parameter (nr__2=60) ! Number of records character*273 ar__2 ! Full-size record real*4 Ratec1 (nr__2) ! (cm+3/s) Rate coefficient for index = 1 (1) real*4 Ratec2 (nr__2) ! (cm+3/s) Rate coefficient for index = 2 (1) real*4 Ratec3 (nr__2) ! (cm+3/s) Rate coefficient for index = 3 (1) real*4 Ratec4 (nr__2) ! (cm+3/s) Rate coefficient for index = 4 (1) real*4 Ratec5 (nr__2) ! (cm+3/s) Rate coefficient for index = 5 (1) real*4 Ratec6 (nr__2) ! (cm+3/s) Rate coefficient for index = 6 (1) real*4 Ratec7 (nr__2) ! (cm+3/s) Rate coefficient for index = 7 (1) real*4 Ratec8 (nr__2) ! (cm+3/s) Rate coefficient for index = 8 (1) real*4 Ratec9 (nr__2) ! (cm+3/s) Rate coefficient for index = 9 (1) real*4 Ratec10 (nr__2) ! (cm+3/s) Rate coefficient for index = 10 (1) real*4 Ratec11 (nr__2) ! (cm+3/s) Rate coefficient for index = 11 (1) real*4 Ratec12 (nr__2) ! (cm+3/s) Rate coefficient for index = 12 (1) real*4 Ratec13 (nr__2) ! (cm+3/s) Rate coefficient for index = 13 (1) real*4 Ratec14 (nr__2) ! (cm+3/s) Rate coefficient for index = 14 (1) real*4 Ratec15 (nr__2) ! (cm+3/s) Rate coefficient for index = 15 (1) real*4 Ratec16 (nr__2) ! (cm+3/s) Rate coefficient for index = 16 (1) real*4 Ratec17 (nr__2) ! (cm+3/s) Rate coefficient for index = 17 (1) real*4 Ratec18 (nr__2) ! (cm+3/s) Rate coefficient for index = 18 (1) real*4 Ratec19 (nr__2) ! (cm+3/s) Rate coefficient for index = 19 (1) real*4 Ratec20 (nr__2) ! (cm+3/s) Rate coefficient for index = 20 (1) real*4 Ratec21 (nr__2) ! (cm+3/s) Rate coefficient for index = 21 (1) *Note (1): The files are in the form * (row,column) = (final state, initial state), * as defined by the labels in states.dat. C============================================================================= C Loading file 'states.dat' ! States and their energies C Format for file interpretation 1 format(I3,A12,F12.3) C Effective file loading open(unit=1,status='old',file= +'states.dat') write(6,*) '....Loading file: states.dat' do i__=1,21 read(1,'(A27)')ar__ read(ar__,1)Index(i__),Label(i__),E(i__) c ..............Just test output........... write(6,1)Index(i__),Label(i__),E(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'list.dat' ! List of files in subdirectory files C Format for file interpretation 2 format(A13,1X,A83) C Effective file loading open(unit=1,status='old',file= +'list.dat') write(6,*) '....Loading file: list.dat' do i__=1,60 read(1,'(A97)')ar__1 read(ar__1,2)FileName(i__),Title(i__) c ..............Just test output........... write(6,2)FileName(i__),Title(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'files/*' ! Individual rate coefficients files C Format for file interpretation 3 format( + 1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X, + E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4, + 1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X,E12.4,1X, + E12.4,1X,E12.4) C Effective file loading open(unit=1,status='old',file= +'files/*') write(6,*) '....Loading file: files/*' do i__=1,60 read(1,'(A273)')ar__2 read(ar__2,3) + Ratec1(i__),Ratec2(i__),Ratec3(i__),Ratec4(i__),Ratec5(i__), + Ratec6(i__),Ratec7(i__),Ratec8(i__),Ratec9(i__),Ratec10(i__), + Ratec11(i__),Ratec12(i__),Ratec13(i__),Ratec14(i__), + Ratec15(i__),Ratec16(i__),Ratec17(i__),Ratec18(i__), + Ratec19(i__),Ratec20(i__),Ratec21(i__) c ..............Just test output........... write(6,3) + Ratec1(i__),Ratec2(i__),Ratec3(i__),Ratec4(i__),Ratec5(i__), + Ratec6(i__),Ratec7(i__),Ratec8(i__),Ratec9(i__),Ratec10(i__), + Ratec11(i__),Ratec12(i__),Ratec13(i__),Ratec14(i__), + Ratec15(i__),Ratec16(i__),Ratec17(i__),Ratec18(i__), + Ratec19(i__),Ratec20(i__),Ratec21(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end