Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/598/A76 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 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/598/A76 Six infrared dark clouds multi-wavelength obs. (Zhang+, 2017) *================================================================================ *A multi-wavelength observation and investigation towards six infrared dark *clouds. * Zhang C.-P., Yuan J.-H., Li G.-X., Zhou J.-J., Wang J.-J. * <Astron. Astrophys. 598, A76 (2017)> * =2017A&A...598A..76Z (SIMBAD/NED BibCode) C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table2.dat' ! Parameters (coordinate, distance, mass, density, etc.) of the selected cores in the IRDCs integer*4 nr__ parameter (nr__=47) ! Number of records character*127 ar__ ! Full-size record C J2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg ! (deg) Right Ascension J2000 real*8 DEdeg ! (deg) Declination J2000 C ---------------------------------- ! (position vector(s) in degrees) character*6 Core ! Core name (GNN-NN) (G1) integer*4 RAh ! (h) Right ascension (J2000) integer*4 RAm ! (min) Right ascension (J2000) real*4 RAs ! (s) Right ascension (J2000) character*1 DE_ ! Declination sign (J2000) integer*4 DEd ! (deg) Declination (J2000) integer*4 DEm ! (arcmin) Declination (J2000) integer*4 DEs ! (arcsec) Declination (J2000) real*4 Dist ! (kpc) Distance (2) real*4 Rcore ! (pc) Code radius real*4 Tdust ! (K) Dust temperature real*4 e_Tdust ! (K) rms uncertainty on Tdust real*4 I870um ! (Jy/beam) Integrated flux at 870um real*4 e_I870um ! (Jy/beam) rms uncertainty on I870um real*4 S870um ! (Jy) Flux density at 870um real*4 e_S870um ! (Jy) rms uncertainty on S870um real*4 DVN2H_ ! (km/s) N_2_H^+^ FWHM real*4 e_DVN2H_ ! (km/s) rms uncertainty on DVN2H+ real*4 tauN2H_ ! N_2_H^+^ optical depth real*4 e_tauN2H_ ! rms uncertainty on tauN2H+ integer*4 Mvir ! (Msun) Virial mass integer*4 e_Mvir ! (Msun) rms uncertainty on Mvir integer*4 M870um ! (Msun) Mass at 870um integer*4 e_M870um ! (Msun) rms uncertainty on M970um integer*4 M1_1mm ! (Msun) ?=- Mass at 1.1mm real*4 alphaVir ! Virial alpha parameter (Mvir/M870um) real*4 e_alphaVir ! rms uncertainty on alphaVir real*4 n870um ! (10+4cm-3) Volume density at 870um (M870um/(2Rcore)^3^)) real*4 e_n870um ! (10+4cm-3) rms uncertainty on n870um *Note (2): The distances refer to the works from Rathborne et al. * (2006, Cat. J/ApJ/641/389) and Simon et al. (2006, Cat. J/ApJ/653/1325). c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table3.dat' ! Gaussian fitting parameters (integrated intensity, velocity, FWHM, and intensity of HCO^+^, HNC, and C^18^O) with masking absorption dip towards the selected cores in the IRDCs integer*4 nr__1 parameter (nr__1=45) ! Number of records character*136 ar__1 ! Full-size record character*6 Core_1 ! Code name (GNN-NN) (G1) real*4 SHCO_ ! (K.km/s) HCO^+^ flux density real*4 e_SHCO_ ! (K.km/s) rms uncertainty on SHCO+ real*4 VHCO_ ! (km/s) HCO^+^ velocity real*4 e_VHCO_ ! (km/s) rms uncertainty on VHCO+ real*4 DHCO_ ! (km/s) HCO^+^ FWHM real*4 e_DHCO_ ! (km/s) rms uncertainty on DHCO+ real*4 IHCO_ ! (K) HCO^+^ integrated flux real*4 e_IHCO_ ! (K) rms uncertainty on IHCO+ real*4 SHNC ! (K.km/s) HNC flux density real*4 e_SHNC ! (K.km/s) rms uncertainty on SHNC real*4 VHNC ! (km/s) HNC velocity real*4 e_VHNC ! (km/s) rms uncertainty on VHNC real*4 DHNC ! (km/s) HNC FWHM real*4 e_DHNC ! (km/s) rms uncertainty on DHNC real*4 IHNC ! (K) HNC integrated flux real*4 e_IHNC ! (K) rms uncertainty on IHNC real*4 SC18O ! (K.km/s) C^18^O flux density real*4 e_SC18O ! (K.km/s) rms uncertainty on SC18O real*4 VC18O ! (km/s) C^18^O velocity real*4 e_VC18O ! (km/s) rms uncertainty on VC18O real*4 DC18O ! (km/s) C^18^O FWHM real*4 e_DC18O ! (km/s) rms uncertainty on DC18O real*4 IC18O ! (K) C^18^O integrated flux real*4 e_IC18O ! (K) rms uncertainty on IC18O c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table4.dat' ! Parameters of the detected DCO^+^, SiO, and DCN in the IRDCs integer*4 nr__2 parameter (nr__2=6) ! Number of records character*85 ar__2 ! Full-size record character*6 Core_2 ! Code name (GNN-NN) real*4 Vel ! (km/s) Velocity real*4 e_Vel ! (km/s) rms uncertainty on Velocity real*4 DV_DCO_ ! (km/s) DCO^+^ FWHM real*4 e_DV_DCO_ ! (km/s) rms uncertainty on DV(DCO+) real*4 TMB_DCO_ ! (K) DCO^+^ main beam temperature real*4 e_TMB_DCO_ ! (K) rms uncertainty on TMB(DCO+) real*4 DV_SiO ! (km/s) SiO FWHM real*4 e_DV_SiO ! (km/s) rms uncertainty on DV(SiO) real*4 TMB_SiO ! (K) SiO main beam temperature real*4 e_TMB_SiO ! (K) rms uncertainty on TMB(SiO) real*4 DV_DCN ! (km/s) ?=- DCN FWHM real*4 e_DV_DCN ! (km/s) ? rms uncertainty on DV(DCN) real*4 TMB_DCN ! (K) ?=- DCN main beam temperature real*4 e_TMB_DCN ! (K) ? rms uncertainty on TMB(DCN) c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'list.dat' ! List of datacubes integer*4 nr__3 parameter (nr__3=24) ! Number of records character*109 ar__3 ! Full-size record C J2000 position composed of: RAdeg DEdeg real*8 RAdeg_1 ! (deg) Right Ascension of center (J2000) real*8 DEdeg_1 ! (deg) Declination of center (J2000) integer*4 Nx ! Number of pixels along X-axis integer*4 Ny ! Number of pixels along Y-axis integer*4 Nz ! Number of slices real*8 bVel ! (m/s) Lower value of velocity interval real*8 BVel_1 ! (m/s) Upper value of velocity interval real*8 dVel ! (m/s) Velocity resolution integer*4 size ! (Kibyte) Size of FITS file character*14 FileName ! Name of FITS file, in subdirectory fits character*29 Title ! Title of the FITS file C============================================================================= C Loading file 'table2.dat' ! Parameters (coordinate, distance, mass, density, * etc.) of the selected cores in the IRDCs C Format for file interpretation 1 format( + A6,1X,I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,1X,F3.1,1X,F4.2, + 1X,F4.1,1X,F3.1,1X,F5.2,1X,F4.2,1X,F5.2,1X,F4.2,1X,F4.2,1X, + F4.2,1X,F4.2,1X,F4.2,1X,I3,1X,I2,1X,I4,1X,I3,1X,I4,1X,F4.2,1X, + F4.2,1X,F4.1,1X,F3.1) C Effective file loading open(unit=1,status='old',file= +'table2.dat') write(6,*) '....Loading file: table2.dat' do i__=1,47 read(1,'(A127)')ar__ read(ar__,1) + Core,RAh,RAm,RAs,DE_,DEd,DEm,DEs,Dist,Rcore,Tdust,e_Tdust, + I870um,e_I870um,S870um,e_S870um,DVN2H_,e_DVN2H_,tauN2H_, + e_tauN2H_,Mvir,e_Mvir,M870um,e_M870um,M1_1mm,alphaVir, + e_alphaVir,n870um,e_n870um if (M1_1mm .EQ. 45) M1_1mm = iNULL__ RAdeg = rNULL__ DEdeg = rNULL__ c Derive coordinates RAdeg and DEdeg from input data c (RAdeg and DEdeg are set to rNULL__ when unknown) if(RAh .GT. -180) RAdeg=RAh*15. if(RAm .GT. -180) RAdeg=RAdeg+RAm/4. if(RAs .GT. -180) RAdeg=RAdeg+RAs/240. if(DEd .GE. 0) DEdeg=DEd if(DEm .GE. 0) DEdeg=DEdeg+DEm/60. if(DEs .GE. 0) DEdeg=DEdeg+DEs/3600. if(DE_.EQ.'-'.AND.DEdeg.GE.0) DEdeg=-DEdeg c ..............Just test output........... write(6,1) + Core,RAh,RAm,RAs,DE_,DEd,DEm,DEs,Dist,Rcore,Tdust,e_Tdust, + I870um,e_I870um,S870um,e_S870um,DVN2H_,e_DVN2H_,tauN2H_, + e_tauN2H_,Mvir,e_Mvir,M870um,e_M870um,M1_1mm,alphaVir, + e_alphaVir,n870um,e_n870um write(6,'(6H Pos: 2F8.4)') RAdeg,DEdeg c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table3.dat' ! Gaussian fitting parameters (integrated * intensity, velocity, FWHM, and intensity of * HCO^+^, HNC, and C^18^O) with masking absorption * dip towards the selected cores in the IRDCs C Format for file interpretation 2 format( + A6,1X,F5.2,1X,F4.2,1X,F6.2,1X,F4.2,1X,F5.2,1X,F4.2,1X,F4.2,1X, + F4.2,1X,F5.2,1X,F4.2,1X,F6.2,1X,F4.2,1X,F4.2,1X,F4.2,1X,F4.2, + 1X,F4.2,1X,F5.2,1X,F4.2,1X,F6.2,1X,F4.2,1X,F4.2,1X,F4.2,1X, + F4.2,1X,F4.2) C Effective file loading open(unit=1,status='old',file= +'table3.dat') write(6,*) '....Loading file: table3.dat' do i__=1,45 read(1,'(A136)')ar__1 read(ar__1,2) + Core_1,SHCO_,e_SHCO_,VHCO_,e_VHCO_,DHCO_,e_DHCO_,IHCO_, + e_IHCO_,SHNC,e_SHNC,VHNC,e_VHNC,DHNC,e_DHNC,IHNC,e_IHNC,SC18O, + e_SC18O,VC18O,e_VC18O,DC18O,e_DC18O,IC18O,e_IC18O c ..............Just test output........... write(6,2) + Core_1,SHCO_,e_SHCO_,VHCO_,e_VHCO_,DHCO_,e_DHCO_,IHCO_, + e_IHCO_,SHNC,e_SHNC,VHNC,e_VHNC,DHNC,e_DHNC,IHNC,e_IHNC,SC18O, + e_SC18O,VC18O,e_VC18O,DC18O,e_DC18O,IC18O,e_IC18O c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table4.dat' ! Parameters of the detected DCO^+^, SiO, and DCN * in the IRDCs C Format for file interpretation 3 format( + A6,1X,F5.2,1X,F4.2,1X,F4.2,1X,F4.2,1X,F5.3,1X,F5.3,1X,F5.2,1X, + F4.2,1X,F5.3,1X,F5.3,1X,F5.2,1X,F4.2,1X,F5.3,1X,F5.3) C Effective file loading open(unit=1,status='old',file= +'table4.dat') write(6,*) '....Loading file: table4.dat' do i__=1,6 read(1,'(A85)')ar__2 read(ar__2,3) + Core_2,Vel,e_Vel,DV_DCO_,e_DV_DCO_,TMB_DCO_,e_TMB_DCO_,DV_SiO, + e_DV_SiO,TMB_SiO,e_TMB_SiO,DV_DCN,e_DV_DCN,TMB_DCN,e_TMB_DCN if (idig(ar__2(64:68)).EQ.0) DV_DCN = rNULL__ if(ar__2(70:73) .EQ. '') e_DV_DCN = rNULL__ if (idig(ar__2(75:79)).EQ.0) TMB_DCN = rNULL__ if(ar__2(81:85) .EQ. '') e_TMB_DCN = rNULL__ c ..............Just test output........... write(6,3) + Core_2,Vel,e_Vel,DV_DCO_,e_DV_DCO_,TMB_DCO_,e_TMB_DCO_,DV_SiO, + e_DV_SiO,TMB_SiO,e_TMB_SiO,DV_DCN,e_DV_DCN,TMB_DCN,e_TMB_DCN c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'list.dat' ! List of datacubes C Format for file interpretation 4 format( + F9.5,F9.5,1X,I2,1X,I3,1X,I4,1X,F11.4,1X,F8.1,1X,F7.3,1X,I5,1X, + A14,A29) C Effective file loading open(unit=1,status='old',file= +'list.dat') write(6,*) '....Loading file: list.dat' do i__=1,24 read(1,'(A109)')ar__3 read(ar__3,4) + RAdeg_1,DEdeg_1,Nx,Ny,Nz,bVel,BVel_1,dVel,size,FileName,Title c ..............Just test output........... write(6,4) + RAdeg_1,DEdeg_1,Nx,Ny,Nz,bVel,BVel_1,dVel,size,FileName,Title 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