Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/454/1047 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-18 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/454/1047 XMM view of NGC 6231 open cluster (Sana+, 2006) *================================================================================ *An XMM-Newton view of the NGC 6231 young open cluster: I. The catalogue. * Sana H., Gosset E., Rauw G., Sung H., Vreux J.-M. * <Astron. Astrophys. 454, 1047 (2006)> * =2006A&A...454.1047S C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table3.dat' ! X-ray source catalogue in NGC 6231 integer*4 nr__ parameter (nr__=610) ! Number of records character*406 ar__ ! Full-size record C J2000 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg (nr__) ! (deg) Right Ascension J2000 real*8 DEdeg (nr__) ! (deg) Declination J2000 C ---------------------------------- ! (position vector(s) in degrees) integer*4 Seq (nr__) ! Internal X-ray source numbering scheme character*15 XMMUJ (nr__) ! Recommended XMM source denomination (G1) real*4 e_Pos (nr__) ! (arcsec) Error on the source position real*8 L2_pn (nr__) ! ?=- PN: Equivalent likelihood L2 real*8 CR_pn (nr__) ! (ct/ks) ?=- PN: count-rate in [0.5-10.0 keV] real*8 e_CR_pn (nr__) ! (ct/ks) ?=- PN: error on CR [0.5-10.0 keV] real*8 CRs_pn (nr__) ! (ct/ks) ?=- PN: count-rate in [0.5-1.0 keV] real*8 e_CRs_pn (nr__) ! (ct/ks) ?=- PN: error on CR_s [0.5-1.0 keV] real*8 CRm_pn (nr__) ! (ct/ks) ?=- PN: count-rate in [1.0-2.5 keV] real*8 e_CRm_pn (nr__) ! (ct/ks) ?=- PN: error on CR_m [1.0-2.5 keV] real*8 CRh_pn (nr__) ! (ct/ks) ?=- PN: count-rate in [2.5-10.0 keV] real*8 e_CRh_pn (nr__) ! (ct/ks) ?=- PN: error on CR_m [2.5-10.0 keV] real*8 HR1_pn (nr__) ! ?=- PN: softer hardness ratio (2) real*8 e_HR1_pn (nr__) ! ?=- PN: error on HR1 real*8 HR2_pn (nr__) ! ?=- PN: harder hardness ratio (3) real*8 e_HR2_pn (nr__) ! ?=- PN: error on HR2 real*8 L2_m1 (nr__) ! ?=- M1: Equivalent likelihood L2 real*8 CR_m1 (nr__) ! (ct/ks) ?=- M1: count-rate in [0.5-10.0 keV] real*8 e_CR_m1 (nr__) ! (ct/ks) ?=- M1: error on CR [0.5-10.0 keV] real*8 CRs_m1 (nr__) ! (ct/ks) ?=- M1: count-rate in [0.5-1.0 keV] real*8 e_CRs_m1 (nr__) ! (ct/ks) ?=- M1: error on CRs [0.5-1.0 keV] real*8 CRm_m1 (nr__) ! (ct/ks) ?=- M1: count-rate in [1.0-2.5 keV] real*8 e_CRm_m1 (nr__) ! (ct/ks) ?=- M1: error on CRm [1.0-2.5 keV] real*8 CRh_m1 (nr__) ! (ct/ks) ?=- M1: count-rate in [2.5-10.0 keV] real*8 e_CRh_m1 (nr__) ! (ct/ks) ?=- M1: error on CRm [2.5-10.0 keV] real*8 HR1_m1 (nr__) ! ?=- M1: softer hardness ratio (2) real*8 e_HR1_m1 (nr__) ! ?=- M1: error on HR1 real*8 HR2_m1 (nr__) ! ?=- M1: harder hardness ratio (3) real*8 e_HR2_m1 (nr__) ! ?=- M1: error on HR2 real*8 L2_m2 (nr__) ! ?=- M2: equivalent likelihood L2 real*8 CR_m2 (nr__) ! (ct/ks) ?=- M2: count-rate in [0.5-10.0keV] real*8 e_CR_m2 (nr__) ! (ct/ks) ?=- M2: error on CR [0.5-10.0keV] real*8 CRs_m2 (nr__) ! (ct/ks) ?=- M2: count-rate in [0.5-1.0keV] real*8 e_CRs_m2 (nr__) ! (ct/ks) ?=- M2: error on CRs [0.5-1.0keV] real*8 CRm_m2 (nr__) ! (ct/ks) ?=- M2: count-rate in [1.0-2.5keV] real*8 e_CRm_m2 (nr__) ! (ct/ks) ?=- M2: error on CRm [1.0-2.5keV] real*8 CRh_m2 (nr__) ! (ct/ks) ?=- M2: count-rate in [2.5-10.0keV] real*8 e_CRh_m2 (nr__) ! (ct/ks) ?=- M2: error on CRm [2.5-10.0keV] real*8 HR1_m2 (nr__) ! ?=- M2: softer hardness ratio (2) real*8 e_HR1_m2 (nr__) ! ?=- M2: error on HR1 real*8 HR2_m2 (nr__) ! ?=- M2: harder hardness ratio (3) real*8 e_HR2_m2 (nr__) ! ?=- M2: error on HR2 real*8 L2_epic (nr__) ! Epic: total equivalent likelihood L2 character*4 Instr (nr__) ! Used combination of instruments character*3 Ext (nr__) ! Extended source flag character*13 Com (nr__) ! Comments and warnings integer*4 RAh (nr__) ! (h) X-ray source right ascension (J2000) (4) integer*4 RAm (nr__) ! (min) X-ray source right ascension (J2000) (4) real*4 RAs (nr__) ! (s) X-ray source right ascension (J2000) (4) character*1 DE_ (nr__) ! X-ray source declination sign (J2000) (4) integer*4 DEd (nr__) ! (deg) X-ray source declination (J2000) (4) integer*4 DEm (nr__) ! (arcmin) X-ray source declination (J2000) (4) real*4 DEs (nr__) ! (arcsec) X-ray source declination (J2000) (4) *Note (2): HR1=(CRm-CRs)/(CRm+CRs) *Note (3): HR2=(CRh-CRm)/(CRh+CRm) *Note (4): In order to avoid systematic shifts, the coordinates have been * rounded, not truncated. c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for 'table6.dat' ! Cross-identification of the X-ray catalogue with different optical/IR catalogues integer*4 nr__1 parameter (nr__1=610) ! Number of records character*255 ar__1 ! Full-size record integer*4 Seq_1 (nr__1) ! Internal X-ray source numbering scheme character*15 XMMUJ_1 (nr__1) ! Recommended XMM source denomination (G1) real*4 DX2 (nr__1) ! (arcsec) ? 2MASS: correlation distance character*16 v2MASS (nr__1) ! 2MASS (<II/246>) source name real*4 Jmag (nr__1) ! (mag) ? 2MASS: J magnitude real*4 Hmag (nr__1) ! (mag) ? 2MASS: H magnitude real*4 Kmag (nr__1) ! (mag) ? 2MASS: K magnitude real*4 DXG (nr__1) ! (arcsec) ? GSC2.2: correlation distance character*14 GSC2_2 (nr__1) ! GSC2.2 (<I/271>) source name real*4 Rmag (nr__1) ! (mag) ? GSC2.2: R magnitude real*4 Bmag (nr__1) ! (mag) ? GSC2.2: B magnitude real*4 Vmag (nr__1) ! (mag) ? GSC2.2: V magnitude real*4 DXU (nr__1) ! (arcsec) ? USNO B1.0: correlation distance character*12 USNOB1_0 (nr__1) ! USNO B1.0 (<I/284>) source name real*4 R1mag (nr__1) ! (mag) ? USNO B1.0: R1 magnitude real*4 B1mag (nr__1) ! (mag) ? USNO B1.0: B1 magnitude real*4 R2mag (nr__1) ! (mag) ? USNO B1.0: R2 magnitude real*4 B2mag (nr__1) ! (mag) ? USNO B1.0: B2 magnitude real*4 Imag (nr__1) ! (mag) ? USNO B1.0: I magnitude real*4 DXS (nr__1) ! (arcsec) ? SSB06: correlation distance character*1 f_SSB06 (nr__1) ! [*] SSB06: flag (2) character*5 SSB06 (nr__1) ! SSB06 (Sung et al., 2006, in prep.) source name real*4 Vmag2 (nr__1) ! (mag) ? SSB06: V magnitude real*4 V_I (nr__1) ! (mag) ? SSB06: V-I colour real*4 B_V (nr__1) ! (mag) ? SSB06: B-V colour real*4 U_B (nr__1) ! (mag) ? SSB06: U-B colour integer*4 HD_HDE (nr__1) ! ? CI: HD/HDE number integer*4 CD (nr__1) ! ? CI: CD number (in format CD-41 NNNNN) character*1 n_CD (nr__1) ! [p] Multiplicity index on CD integer*4 CPD (nr__1) ! ? CI: CPD number (in format CPD-41 NNNN) integer*4 Segg (nr__1) ! ? CI: Seggewiss (1968VeBon..79....1S) number * NGC 6231 NNN in Simbad integer*4 SBL98 (nr__1) ! ? CI: Sung et al., 1998, Cat. <J/AJ/115/734> * number, Cl* NGC 6231 SBL NNN in Simbad integer*4 Braes (nr__1) ! ? CI: Braes number *Note (2): An asterisk '*' means that the related stars were saturated in the * SSB06 data set. Quoted photometric data are taken from SBL98. C============================================================================= C Loading file 'table3.dat' ! X-ray source catalogue in NGC 6231 C Format for file interpretation 1 format( + I3,2X,A15,2X,F5.2,2X,F8.1,2X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X, + F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3, + 2X,F8.1,2X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X, + F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,2X,F8.1,2X,F7.3, + 1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X,F7.3,1X, + F7.3,1X,F7.3,1X,F7.3,1X,F7.3,2X,F8.1,2X,A4,2X,A3,2X,A13,2X,I2, + I2,F5.2,2X,A1,I2,I2,F4.1) C Effective file loading open(unit=1,status='old',file= +'table3.dat') write(6,*) '....Loading file: table3.dat' do i__=1,610 read(1,'(A406)')ar__ read(ar__,1) + Seq(i__),XMMUJ(i__),e_Pos(i__),L2_pn(i__),CR_pn(i__), + e_CR_pn(i__),CRs_pn(i__),e_CRs_pn(i__),CRm_pn(i__), + e_CRm_pn(i__),CRh_pn(i__),e_CRh_pn(i__),HR1_pn(i__), + e_HR1_pn(i__),HR2_pn(i__),e_HR2_pn(i__),L2_m1(i__),CR_m1(i__), + e_CR_m1(i__),CRs_m1(i__),e_CRs_m1(i__),CRm_m1(i__), + e_CRm_m1(i__),CRh_m1(i__),e_CRh_m1(i__),HR1_m1(i__), + e_HR1_m1(i__),HR2_m1(i__),e_HR2_m1(i__),L2_m2(i__),CR_m2(i__), + e_CR_m2(i__),CRs_m2(i__),e_CRs_m2(i__),CRm_m2(i__), + e_CRm_m2(i__),CRh_m2(i__),e_CRh_m2(i__),HR1_m2(i__), + e_HR1_m2(i__),HR2_m2(i__),e_HR2_m2(i__),L2_epic(i__), + Instr(i__),Ext(i__),Com(i__),RAh(i__),RAm(i__),RAs(i__), + DE_(i__),DEd(i__),DEm(i__),DEs(i__) if (idig(ar__(30:37)).EQ.0) L2_pn(i__) = rNULL__ if (idig(ar__(40:46)).EQ.0) CR_pn(i__) = rNULL__ if (idig(ar__(48:54)).EQ.0) e_CR_pn(i__) = rNULL__ if (idig(ar__(56:62)).EQ.0) CRs_pn(i__) = rNULL__ if (idig(ar__(64:70)).EQ.0) e_CRs_pn(i__) = rNULL__ if (idig(ar__(72:78)).EQ.0) CRm_pn(i__) = rNULL__ if (idig(ar__(80:86)).EQ.0) e_CRm_pn(i__) = rNULL__ if (idig(ar__(88:94)).EQ.0) CRh_pn(i__) = rNULL__ if (idig(ar__(96:102)).EQ.0) e_CRh_pn(i__) = rNULL__ if (idig(ar__(104:110)).EQ.0) HR1_pn(i__) = rNULL__ if (idig(ar__(112:118)).EQ.0) e_HR1_pn(i__) = rNULL__ if (idig(ar__(120:126)).EQ.0) HR2_pn(i__) = rNULL__ if (idig(ar__(128:134)).EQ.0) e_HR2_pn(i__) = rNULL__ if (idig(ar__(137:144)).EQ.0) L2_m1(i__) = rNULL__ if (idig(ar__(147:153)).EQ.0) CR_m1(i__) = rNULL__ if (idig(ar__(155:161)).EQ.0) e_CR_m1(i__) = rNULL__ if (idig(ar__(163:169)).EQ.0) CRs_m1(i__) = rNULL__ if (idig(ar__(171:177)).EQ.0) e_CRs_m1(i__) = rNULL__ if (idig(ar__(179:185)).EQ.0) CRm_m1(i__) = rNULL__ if (idig(ar__(187:193)).EQ.0) e_CRm_m1(i__) = rNULL__ if (idig(ar__(195:201)).EQ.0) CRh_m1(i__) = rNULL__ if (idig(ar__(203:209)).EQ.0) e_CRh_m1(i__) = rNULL__ if (idig(ar__(211:217)).EQ.0) HR1_m1(i__) = rNULL__ if (idig(ar__(219:225)).EQ.0) e_HR1_m1(i__) = rNULL__ if (idig(ar__(227:233)).EQ.0) HR2_m1(i__) = rNULL__ if (idig(ar__(235:241)).EQ.0) e_HR2_m1(i__) = rNULL__ if (idig(ar__(244:251)).EQ.0) L2_m2(i__) = rNULL__ if (idig(ar__(254:260)).EQ.0) CR_m2(i__) = rNULL__ if (idig(ar__(262:268)).EQ.0) e_CR_m2(i__) = rNULL__ if (idig(ar__(270:276)).EQ.0) CRs_m2(i__) = rNULL__ if (idig(ar__(278:284)).EQ.0) e_CRs_m2(i__) = rNULL__ if (idig(ar__(286:292)).EQ.0) CRm_m2(i__) = rNULL__ if (idig(ar__(294:300)).EQ.0) e_CRm_m2(i__) = rNULL__ if (idig(ar__(302:308)).EQ.0) CRh_m2(i__) = rNULL__ if (idig(ar__(310:316)).EQ.0) e_CRh_m2(i__) = rNULL__ if (idig(ar__(318:324)).EQ.0) HR1_m2(i__) = rNULL__ if (idig(ar__(326:332)).EQ.0) e_HR1_m2(i__) = rNULL__ if (idig(ar__(334:340)).EQ.0) HR2_m2(i__) = rNULL__ if (idig(ar__(342:348)).EQ.0) e_HR2_m2(i__) = rNULL__ RAdeg(i__) = rNULL__ DEdeg(i__) = rNULL__ c Derive coordinates RAdeg and DEdeg from input data c (RAdeg and DEdeg are set to rNULL__ when unknown) if(RAh(i__) .GT. -180) RAdeg(i__)=RAh(i__)*15. if(RAm(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAm(i__)/4. if(RAs(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAs(i__)/240. if(DEd(i__) .GE. 0) DEdeg(i__)=DEd(i__) if(DEm(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEm(i__)/60. if(DEs(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEs(i__)/3600. if(DE_(i__).EQ.'-'.AND.DEdeg(i__).GE.0) DEdeg(i__)=-DEdeg(i__) c ..............Just test output........... write(6,1) + Seq(i__),XMMUJ(i__),e_Pos(i__),L2_pn(i__),CR_pn(i__), + e_CR_pn(i__),CRs_pn(i__),e_CRs_pn(i__),CRm_pn(i__), + e_CRm_pn(i__),CRh_pn(i__),e_CRh_pn(i__),HR1_pn(i__), + e_HR1_pn(i__),HR2_pn(i__),e_HR2_pn(i__),L2_m1(i__),CR_m1(i__), + e_CR_m1(i__),CRs_m1(i__),e_CRs_m1(i__),CRm_m1(i__), + e_CRm_m1(i__),CRh_m1(i__),e_CRh_m1(i__),HR1_m1(i__), + e_HR1_m1(i__),HR2_m1(i__),e_HR2_m1(i__),L2_m2(i__),CR_m2(i__), + e_CR_m2(i__),CRs_m2(i__),e_CRs_m2(i__),CRm_m2(i__), + e_CRm_m2(i__),CRh_m2(i__),e_CRh_m2(i__),HR1_m2(i__), + e_HR1_m2(i__),HR2_m2(i__),e_HR2_m2(i__),L2_epic(i__), + Instr(i__),Ext(i__),Com(i__),RAh(i__),RAm(i__),RAs(i__), + DE_(i__),DEd(i__),DEm(i__),DEs(i__) write(6,'(6H Pos: 2F8.4)') RAdeg(i__),DEdeg(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file 'table6.dat' ! Cross-identification of the X-ray catalogue * with different optical/IR catalogues C Format for file interpretation 2 format( + I3,2X,A15,2X,F5.3,2X,A16,2X,F6.3,2X,F6.3,2X,F6.3,2X,F5.3,2X, + A14,2X,F5.2,2X,F5.2,2X,F5.2,2X,F5.3,2X,A12,2X,F5.2,2X,F5.2,2X, + F5.2,2X,F5.2,2X,F5.2,2X,F5.3,2X,A1,A5,2X,F6.3,2X,F6.3,2X,F6.3, + 2X,F6.3,2X,I6,2X,I5,A1,1X,I4,2X,I3,2X,I5,2X,I4) C Effective file loading open(unit=1,status='old',file= +'table6.dat') write(6,*) '....Loading file: table6.dat' do i__=1,610 read(1,'(A255)')ar__1 read(ar__1,2) + Seq_1(i__),XMMUJ_1(i__),DX2(i__),v2MASS(i__),Jmag(i__), + Hmag(i__),Kmag(i__),DXG(i__),GSC2_2(i__),Rmag(i__),Bmag(i__), + Vmag(i__),DXU(i__),USNOB1_0(i__),R1mag(i__),B1mag(i__), + R2mag(i__),B2mag(i__),Imag(i__),DXS(i__),f_SSB06(i__), + SSB06(i__),Vmag2(i__),V_I(i__),B_V(i__),U_B(i__),HD_HDE(i__), + CD(i__),n_CD(i__),CPD(i__),Segg(i__),SBL98(i__),Braes(i__) if(ar__1(23:27) .EQ. '') DX2(i__) = rNULL__ if(ar__1(48:53) .EQ. '') Jmag(i__) = rNULL__ if(ar__1(56:61) .EQ. '') Hmag(i__) = rNULL__ if(ar__1(64:69) .EQ. '') Kmag(i__) = rNULL__ if(ar__1(72:76) .EQ. '') DXG(i__) = rNULL__ if(ar__1(95:99) .EQ. '') Rmag(i__) = rNULL__ if(ar__1(102:106) .EQ. '') Bmag(i__) = rNULL__ if(ar__1(109:113) .EQ. '') Vmag(i__) = rNULL__ if(ar__1(116:120) .EQ. '') DXU(i__) = rNULL__ if(ar__1(137:141) .EQ. '') R1mag(i__) = rNULL__ if(ar__1(144:148) .EQ. '') B1mag(i__) = rNULL__ if(ar__1(151:155) .EQ. '') R2mag(i__) = rNULL__ if(ar__1(158:162) .EQ. '') B2mag(i__) = rNULL__ if(ar__1(165:169) .EQ. '') Imag(i__) = rNULL__ if(ar__1(172:176) .EQ. '') DXS(i__) = rNULL__ if(ar__1(187:192) .EQ. '') Vmag2(i__) = rNULL__ if(ar__1(195:200) .EQ. '') V_I(i__) = rNULL__ if(ar__1(203:208) .EQ. '') B_V(i__) = rNULL__ if(ar__1(211:216) .EQ. '') U_B(i__) = rNULL__ if(ar__1(219:224) .EQ. '') HD_HDE(i__) = iNULL__ if(ar__1(227:231) .EQ. '') CD(i__) = iNULL__ if(ar__1(234:237) .EQ. '') CPD(i__) = iNULL__ if(ar__1(240:242) .EQ. '') Segg(i__) = iNULL__ if(ar__1(245:249) .EQ. '') SBL98(i__) = iNULL__ if(ar__1(252:255) .EQ. '') Braes(i__) = iNULL__ c ..............Just test output........... write(6,2) + Seq_1(i__),XMMUJ_1(i__),DX2(i__),v2MASS(i__),Jmag(i__), + Hmag(i__),Kmag(i__),DXG(i__),GSC2_2(i__),Rmag(i__),Bmag(i__), + Vmag(i__),DXU(i__),USNOB1_0(i__),R1mag(i__),B1mag(i__), + R2mag(i__),B2mag(i__),Imag(i__),DXS(i__),f_SSB06(i__), + SSB06(i__),Vmag2(i__),V_I(i__),B_V(i__),U_B(i__),HD_HDE(i__), + CD(i__),n_CD(i__),CPD(i__),Segg(i__),SBL98(i__),Braes(i__) 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