Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/680/A98 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-Jun-08
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/680/A98 A LOFAR sample of OCRS in dwarf galaxies (Vohl+, 2023)
*================================================================================
*A LOFAR sample of luminous compact sources coincident with nearby dwarf
*galaxies.
* Vohl D., Vedantham H.K., Hessels J.W.T., Bassa C.G., Cook D.O., Kaplan D.L.,
* Shimwell T.W., Zhang C.
* <Astron. Astrophys. 680, A98 (2023)>
* =2023A&A...680A..98V (SIMBAD/NED BibCode)
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table1.dat' ! Properties of the selected candidates
integer*4 nr__
parameter (nr__=29) ! Number of records
character*126 ar__ ! Full-size record
character*23 Source ! Source name in LoTSS DR2
* (ILT JHHMMSS.ss+DDMMSS.s)
character*26 Host ! Host galaxy name in CLU
real*4 ProjOff ! (arcsec) Projected offset between the radio source
* and H{alpha} source coordinates in arcsec
real*4 e_ProjOff ! (arcsec) Projected offset in arcsec uncertainty
integer*4 ProjOffpc ! (pc) Projected offset between the radio source
* and H{alpha} source coordinates (pc)
real*4 e_ProjOffpc ! (pc) Projected offset in pc uncertainty
character*7 z ! Redshift
character*1 n_z ! [kmn] Distance method (1)
real*4 Sint ! (mJy) Integrated flux density at 144MHz
real*4 e_Sint ! (mJy) Integrated flux density at 144MHz
* uncertainty
real*4 logL ! ([W/Hz]) Radio luminosity at 144MHz
real*4 logSFR ! ([Msun/yr]) Star formation rate
real*4 e_logSFR ! ([Msun/yr]) [] Star formation rate uncertainty
real*4 sigma ! ? Standard deviation above the L-SFR
* relation
real*4 alpha ! ? Radio spectral index
real*4 Rg ! ? Radio loudness
*Note (1): Distance method as follows:
* k = kinematic
* m = median (redshift-independent)
* n = narrowband (H{alpha})
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table3.dat' ! Fluxes for candidates matched in at least one
ancillary radio survey
integer*4 nr__1
parameter (nr__1=12) ! Number of records
character*98 ar__1 ! Full-size record
character*23 Source_1 ! Source name in LoTSS DR2
* (ILT JHHMMSS.ss+DDMMSS.s)
real*4 Sint_LoTSS ! (mJy) LoTSS 144MHz integrated flux density
real*4 e_Sint_LoTSS ! (mJy) LoTSS 144MHz integrated flux density
* uncertainty
real*4 Sint_RACS ! (mJy) ?=- RACS (Rapid ASKAP Continuum Survey)
* 700-1800MHz integrated flux density
real*4 e_Sint_RACS ! (mJy) ?=- RACS 700-1800MHz integrated flux density
* uncertainty
real*4 Sint_FIRST ! (mJy) ?=- FIRST 1.4GHz integrated flux density
real*4 e_Sint_FIRST ! (mJy) ?=- FIRST 1.4GHz integrated flux density
* uncertainty
real*4 Sint_NVSS ! (mJy) ?=- NVSS 1.4GHz integrated flux density
real*4 e_Sint_NVSS ! (mJy) ?=- NVSS 1.4GHz integrated flux density
* uncertainty
real*4 Sint_VLASS ! (mJy) ?=- VLASS 3GHz integrated flux density
real*4 e_Sint_VLASS ! (mJy) ?=- VLASS 3GHz integrated flux density
* uncertainty
character*1 n_Sint_VLASS ! [*] Note on Sint_VLASS (1)
real*4 alpha_1 ! Radio spectral index
real*4 e_alpha ! Radio spectral index uncertainty
real*4 alpha_hf ! ?=- Radio spectral index fitted between
* 1.4 and 3GHz
real*4 e_alpha_hf ! ?=- Radio spectral index fitted between
* 1.4 and 3GHz uncertainty
character*1 n_alpha_hf ! [*] Note on alpha-hf (2)
*Note (1): Note as follows:
* * = value is estimated based on cutout image from CIRADA Image Cutout Web
* Service
*Note (2): Note as follows:
* * = spectral index includes estimates from CIRADA Cutouts
C=============================================================================
C Loading file 'table1.dat' ! Properties of the selected candidates
C Format for file interpretation
1 format(
+ A23,1X,A26,1X,F3.1,1X,F3.1,1X,I4,1X,F6.4,1X,A7,1X,A1,1X,F5.2,
+ 1X,F4.2,1X,F5.2,F5.2,1X,F5.2,1X,F5.2,1X,F5.2,1X,F5.2)
C Effective file loading
open(unit=1,status='old',file=
+'table1.dat')
write(6,*) '....Loading file: table1.dat'
do i__=1,29
read(1,'(A126)')ar__
read(ar__,1)
+ Source,Host,ProjOff,e_ProjOff,ProjOffpc,e_ProjOffpc,z,n_z,
+ Sint,e_Sint,logL,logSFR,e_logSFR,sigma,alpha,Rg
if(ar__(110:114) .EQ. '') sigma = rNULL__
if(ar__(116:120) .EQ. '') alpha = rNULL__
if(ar__(122:126) .EQ. '') Rg = rNULL__
c ..............Just test output...........
write(6,1)
+ Source,Host,ProjOff,e_ProjOff,ProjOffpc,e_ProjOffpc,z,n_z,
+ Sint,e_Sint,logL,logSFR,e_logSFR,sigma,alpha,Rg
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'table3.dat' ! Fluxes for candidates matched in at least one
* ancillary radio survey
C Format for file interpretation
2 format(
+ A23,1X,F5.2,1X,F4.2,1X,F4.2,1X,F4.2,1X,F5.2,1X,F4.2,1X,F5.2,
+ 1X,F4.2,1X,F4.2,1X,F4.2,A1,1X,F4.1,1X,F4.2,1X,F4.1,1X,F4.2,A1)
C Effective file loading
open(unit=1,status='old',file=
+'table3.dat')
write(6,*) '....Loading file: table3.dat'
do i__=1,12
read(1,'(A98)')ar__1
read(ar__1,2)
+ Source_1,Sint_LoTSS,e_Sint_LoTSS,Sint_RACS,e_Sint_RACS,
+ Sint_FIRST,e_Sint_FIRST,Sint_NVSS,e_Sint_NVSS,Sint_VLASS,
+ e_Sint_VLASS,n_Sint_VLASS,alpha_1,e_alpha,alpha_hf,e_alpha_hf,
+ n_alpha_hf
if (idig(ar__1(36:39)).EQ.0) Sint_RACS = rNULL__
if (idig(ar__1(41:44)).EQ.0) e_Sint_RACS = rNULL__
if (idig(ar__1(46:50)).EQ.0) Sint_FIRST = rNULL__
if (idig(ar__1(52:55)).EQ.0) e_Sint_FIRST = rNULL__
if (idig(ar__1(57:61)).EQ.0) Sint_NVSS = rNULL__
if (idig(ar__1(63:66)).EQ.0) e_Sint_NVSS = rNULL__
if (idig(ar__1(68:71)).EQ.0) Sint_VLASS = rNULL__
if (idig(ar__1(73:76)).EQ.0) e_Sint_VLASS = rNULL__
if (idig(ar__1(89:92)).EQ.0) alpha_hf = rNULL__
if (idig(ar__1(94:97)).EQ.0) e_alpha_hf = rNULL__
c ..............Just test output...........
write(6,2)
+ Source_1,Sint_LoTSS,e_Sint_LoTSS,Sint_RACS,e_Sint_RACS,
+ Sint_FIRST,e_Sint_FIRST,Sint_NVSS,e_Sint_NVSS,Sint_VLASS,
+ e_Sint_VLASS,n_Sint_VLASS,alpha_1,e_alpha,alpha_hf,e_alpha_hf,
+ n_alpha_hf
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