Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/618/A121 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-May-17
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/618/A121 Azimuthal anisotropy of stellar galactic disks (Chemin, 2018)
*================================================================================
*A mass-velocity anisotropy relation in galactic stellar disks.
* Chemin L.
* <Astron. Astrophys. 618, A121 (2018)>
* =2018A&A...618A.121C (SIMBAD/NED BibCode)
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table1.dat' ! Disk galaxies from the CALIFA sample
integer*4 nr__
parameter (nr__=93) ! Number of records
character*71 ar__ ! Full-size record
character*13 Galaxy ! Galaxy name
integer*4 Nbin ! Number of radial bins in anisotropy profile
real*4 B05h ! ?=- Azimuthal anisotropy (at R=h/2)
real*4 e_B05h ! ?=- Error on azimuthal anisotropy (at R=h/2)
real*4 B1h ! ?=- Azimuthal anisotropy at R=h
real*4 e_B1h ! ?=- Error on azimuthal anisotropy at R=h
real*4 B2h ! ?=- Azimuthal anisotropy at R=2h
real*4 e_B2h ! ?=- Error on azimuthal anisotropy at R=2h
real*4 Bre ! ?=- Azimuthal anisotropy at R=Re
real*4 e_Bre ! ?=- Error on azimuthal anisotropy at R=Re
real*4 Bmed ! Median azimuthal anisotropy from profile
real*4 e_Bmed ! Error on median azimuthal anisotropy
C=============================================================================
C Loading file 'table1.dat' ! Disk galaxies from the CALIFA sample
C Format for file interpretation
1 format(
+ A13,1X,I2,1X,F5.2,1X,F4.2,1X,F5.2,1X,F4.2,1X,F5.2,1X,F4.2,1X,
+ F5.2,1X,F4.2,1X,F5.2,1X,F4.2)
C Effective file loading
open(unit=1,status='old',file=
+'table1.dat')
write(6,*) '....Loading file: table1.dat'
do i__=1,93
read(1,'(A71)')ar__
read(ar__,1)
+ Galaxy,Nbin,B05h,e_B05h,B1h,e_B1h,B2h,e_B2h,Bre,e_Bre,Bmed,
+ e_Bmed
if (idig(ar__(18:22)).EQ.0) B05h = rNULL__
if (idig(ar__(24:27)).EQ.0) e_B05h = rNULL__
if (idig(ar__(29:33)).EQ.0) B1h = rNULL__
if (idig(ar__(35:38)).EQ.0) e_B1h = rNULL__
if (idig(ar__(40:44)).EQ.0) B2h = rNULL__
if (idig(ar__(46:49)).EQ.0) e_B2h = rNULL__
if (idig(ar__(51:55)).EQ.0) Bre = rNULL__
if (idig(ar__(57:60)).EQ.0) e_Bre = rNULL__
c ..............Just test output...........
write(6,1)
+ Galaxy,Nbin,B05h,e_B05h,B1h,e_B1h,B2h,e_B2h,Bre,e_Bre,Bmed,
+ e_Bmed
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